Skip to main content
https://travis-ci.org/gtnx/pandas-highcharts.svg?branch=master https://coveralls.io/repos/gtnx/pandas-highcharts/badge.svg

What is it

pandas-highcharts is a Python package which allows you to easily build Highcharts plots with pandas.DataFrame objects.

Motivation

  • pandas is the best tool to handle data in Python

  • pandas is able to produce matplotlib plots. They work pretty well but have two major drawbacks

    • Not very web friendly

    • Pretty ugly

  • Highcharts produce nice, interactive plot in your browser and is very complete

Features

  • Same interface as DataFrame.plot

  • Following parameters are handled

    • data

    • x

    • y

    • kind

    • figsize

    • use_index

    • title

    • grid

    • legend

    • style

    • logx

    • logy

    • loglog

    • xticks

    • yticks

    • xlim

    • ylim

    • rot

    • fontsize

    • position

    • stacked

    • sort_columns

    • secondary_y

    • mark_right

  • Following parameters are not handled (yet) :

    • ax

    • ay

    • subplots

    • sharex

    • sharey

    • layout

    • colormap

    • colorbar

    • layout

    • table

    • yerr

    • xerr

    • kwds

  • You can specify those specific highcharts parameters:

    • tooltip

  • Static files (highcharts.js) are not embedded

Installation

Install the package using pip

pip install pandas-highcharts

Usage

Import it in your views

import pandas_highcharts
df = ... # create your dataframe here
chart = pandas_highcharts.serialize(df, render_to='my-chart', output_type='json')

In your templates

<div id="my-chart"></div>
<script type="text/javascript">
  new Highcharts.Chart({{chart|safe}});
</script>

Contributing

See CONTRIBUTING.rst for information on how to contribute to pandas-highcharts.

More examples

Some examples are available on nbviewer.

Please read the doc for DataFrame.plot.

For example, with the following dataset:

import pandas as pd
from pandas_highcharts.core import serialize
from pandas.compat import StringIO
dat = """ts;A;B;C
2015-01-01 00:00:00;27451873;29956800;113
2015-01-01 01:00:00;20259882;17906600;76
2015-01-01 02:00:00;11592256;12311600;48
2015-01-01 03:00:00;11795562;11750100;50
2015-01-01 04:00:00;9396718;10203900;43
2015-01-01 05:00:00;14902826;14341100;53"""
df = pd.read_csv(StringIO(dat), sep=';', index_col='ts', parse_dates='ts')

# Basic line plot
chart = serialize(df, render_to="my-chart", title="My Chart")
# Basic column plot
chart = serialize(df, render_to="my-chart", title="Test", kind="bar")
# Basic column plot
chart = serialize(df, render_to="my-chart", title="Test", kind="barh")
# Plot C on secondary axis
chart = serialize(df, render_to="my-chart", title="Test", secondary_y = ["C"])
# Plot on a 1000x700 div
chart = serialize(df, render_to="my-chart", title="Test", figsize = (1000, 700))

Metadata

Release files for pandas-highcharts 0.5.2

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for pandas-highcharts 0.5.2
File Size Uploaded Provenance
pandas-highcharts-0.5.2.tar.gz 10.3 kB Without provenance Details

Release files / pandas-highcharts-0.5.2.tar.gz

Download URL pandas-highcharts-0.5.2.tar.gz
Size 10.3 kB
Tags Source
SHA-256 checksum
How to use checksums
2eace87c840dc430f40f739016f864df47721707feeeeb7db679218af73bcb22
BLAKE2b-256 checksum
How to use checksums
1a70fe7201bb6750e26dbf662d5b0f12fe6d41a4e3edf5e49314597913026bd1
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Security for pandas-highcharts 0.5.2

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page