import pandas as pd
import datetime
from urllib2 import urlopen
from IPython.display import display, display_pretty, Javascript, HTML
from pandas_highcharts.core import serialize
from pandas_highcharts.display import display_charts
df = pd.read_csv(
urlopen('http://www.quandl.com/api/v1/datasets/ODA/DEU_PCPIPCH.csv?column=1'),
index_col=0, parse_dates=True
)
display_charts(df, title="Germany inflation rate")
display_charts(df, chart_type="stock", title="Germany inflation rate")
display_charts(df, kind="bar", title="Germany inflation rate")
display_charts(df, kind="barh", title="Germany inflation rate")
display_charts(df, title="Germany inflation rate", legend=None, kind="bar", figsize = (400, 200))
display_charts(df, title="Germany inflation rate", kind="bar", render_to="chart5", zoom="xy")
df = pd.DataFrame([
{"a": 1, "b": 2, "c": 3, "t": datetime.datetime(2015, 1, 1, 0)},
{"a": 2, "b": 4, "c": 6, "t": datetime.datetime(2015, 1, 1, 1)}
])
display_charts(df, x="t", y=["a", "c"], kind="bar")
data = serialize(df, render_to="chart1", kind="barh", output_type="json")
data.keys()
['series', 'yAxis', 'chart', 'xAxis', 'legend']
data
{'chart': {'renderTo': 'chart1', 'type': 'bar'}, 'legend': {'enabled': True}, 'series': [{'data': [(0, 1), (1, 2)], 'name': 'a', 'yAxis': 0}, {'data': [(0, 3), (1, 6)], 'name': 'c', 'yAxis': 0}, {'data': [(0, 2), (1, 4)], 'name': 'b', 'yAxis': 0}], 'xAxis': {}, 'yAxis': [{}]}
js_data = serialize(df, render_to="chart1", kind="barh")
Use the display HTML IPython feature.
display(HTML("""
<div id="chart1"></div>
<script type="text/javascript">%(js_data)s</script>
""" % locals()))