pandas-highcharts is a Python package which allows you to easily build Highcharts plots with pandas.DataFrame objects.
Project description
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))
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file pandas-highcharts-0.5.2.tar.gz
.
File metadata
- Download URL: pandas-highcharts-0.5.2.tar.gz
- Upload date:
- Size: 10.3 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2eace87c840dc430f40f739016f864df47721707feeeeb7db679218af73bcb22 |
|
MD5 | 7e410ddcdfca6c13c3ad7c741088dc52 |
|
BLAKE2b-256 | 1a70fe7201bb6750e26dbf662d5b0f12fe6d41a4e3edf5e49314597913026bd1 |