In [33]:
import sticky
import pandas as pd
from IPython.core.display import display, Javascript
from IPython.html.widgets import interact

sticky.initialize_notebook()



In [34]:
mic = sticky.Micropolar(height=250, width=250)
mic.plot()



In [35]:
dat = {
'data_1': [
    {"year": 1991, "name":"alpha", "value": 15},
    {"year": 1992, "name":"alpha", "value": 20},
    {"year": 1994, "name":"alpha", "value": 30},
    {"year": 1995, "name":"alpha", "value": 60},
    {"year": 1993, "name":"beta", "value": 40},
    {"year": 1994, "name":"beta", "value": 60},
    {"year": 1995, "name":"beta", "value": 10},
    {"year": 1994, "name":"gamma", "value": 35},
    {"year": 1995, "name":"gamma", "value": 40}
  ],
'data_2': [
    {"year": 1991, "name":"alpha", "value": 30},
    {"year": 1992, "name":"alpha", "value": 20},
    {"year": 1994, "name":"alpha", "value": 50},
    {"year": 1995, "name":"alpha", "value": 60},
    {"year": 1993, "name":"beta", "value": 32},
    {"year": 1994, "name":"beta", "value": 60},
    {"year": 1995, "name":"beta", "value": 56},
    {"year": 1994, "name":"gamma", "value": 19},
    {"year": 1995, "name":"gamma", "value": 40}
  ],
'data_3': [
    {"year": 1991, "name":"alpha", "value": 20},
    {"year": 1992, "name":"alpha", "value": 30},
    {"year": 1994, "name":"alpha", "value": 40},
    {"year": 1995, "name":"alpha", "value": 60},
    {"year": 1993, "name":"beta", "value": 10},
    {"year": 1994, "name":"beta", "value": 40},
    {"year": 1995, "name":"beta", "value": 35},
    {"year": 1994, "name":"gamma", "value": 45},
    {"year": 1995, "name":"gamma", "value": 20}
  ]
}
area_chart = (sticky.d3Plus()
                    .stacked_area(width=1000, height=500)
                    .data(dat['data_1'])
                    .key('name')
                    .x('year')
                    .y('value'))
area_chart.plot()



In [36]:
line_chart = (sticky.d3Plus()
                    .line(width=1000, height=500)
                    .data(dat['data_1'])
                    .key('name')
                    .x('year')
                    .y('value'))
line_chart.plot()
@interact
def update_chart(data=['data_1', 'data_2', 'data_3']):
    line_chart.update(data=dat[data])





In [37]:
dat2 = {
    'data_1': [
        {"value": 100, "weight": .45, "name": "alpha", "group": "group 1"},
        {"value": 70, "weight": .60, "name": "beta", "group": "group 2"},
        {"value": 40, "weight": -.2, "name": "gamma", "group": "group 2"},
        {"value": 15, "weight": .1, "name": "delta", "group": "group 2"},
        {"value": 5, "weight": -.43, "name": "epsilon", "group": "group 1"},
        {"value": 1, "weight": 0, "name": "zeta", "group": "group 1"}
        ],
    'data_2': [
        {"value": 100, "weight": .45, "name": "alpha", "group": "group 1"},
        {"value": 87, "weight": .60, "name": "beta", "group": "group 1"},
        {"value": 79, "weight": -.2, "name": "gamma", "group": "group 1"},
        {"value": 88, "weight": .1, "name": "delta", "group": "group 1"},
        {"value": 5, "weight": -.43, "name": "epsilon", "group": "group 2"},
        {"value": 1, "weight": 0, "name": "zeta", "group": "group 2"},
        {"value": 15, "weight": .45, "name": "alpha", "group": "group 2"},
        {"value": 7, "weight": .60, "name": "beta", "group": "group 2"},
        {"value": 40, "weight": -.2, "name": "gamma", "group": "group 3"},
        {"value": 45, "weight": .1, "name": "delta", "group": "group 3"},
        {"value": 55, "weight": -.43, "name": "epsilon", "group": "group 3"},
        {"value": 60, "weight": 0, "name": "zeta", "group": "group 3"}
        ]
}
grouped_scatter = (sticky.d3Plus()
                         .grouped_scatter(groupby="group", 
                                          width=1000, height=500)
                         .data(dat2['data_1'])
                         .key('name')
                         .x('value')
                         .y('weight'))
grouped_scatter.plot()
@interact
def update_chart(data=['data_1', 'data_2']):
    grouped_scatter.update(data=dat2[data])





In [12]:
ws = pd.read_table('CO_WS_2011_2012.txt')
ws['Date & Time Stamp'] = pd.to_datetime(ws['Date & Time Stamp'])
subset = ws[['Date & Time Stamp', 'WS1_50mMean', 
             'WS2_50mMean', 'WS3_30mMean', 'WS4_40mMean']][:10]
molten = pd.melt(subset, id_vars=['Date & Time Stamp'])
# I'm sure there's some nice chart I can create here...