In [1]:
from ahh import exp, vis, era
import matplotlib.pyplot as plt
import os
import pandas as pd
import numpy as np
In [2]:
OUTPUT_DIR = 'output'
SAVE_FMT = 'plot_{pltype}_{testname}_dt.png'
def join_out(pltype, testname):
return os.path.join(OUTPUT_DIR,
SAVE_FMT.format(pltype=pltype,
testname=testname))
xy_len = 15
# x = exp.arr_1d(periods=xy_len)
x = pd.date_range('2016-01-01', periods=xy_len, freq='1Y')
y = exp.arr_1d(periods=xy_len, y=True) / 10
In [3]:
testname = 'rows_cols_pos'
vis_dict = dict(close=False, rows=2, cols=2, ylabel='test')
vis.plot_line(x, y, save=join_out('line', testname), pos=1, **vis_dict)
vis.plot_bar(x, y, save=join_out('bar', testname), pos=2, **vis_dict)
ax = vis.plot_scatter(x, y, save=join_out('scatter', testname), pos=3, **vis_dict)
vis.set_labels(ax, suptitle=True, title='hello')
Out[3]:
Out[3]:
Out[3]:
In [4]:
testname = 'sidebars'
vis_dict = dict(close=False, sidebar_count=3)
vis.plot_bar(x, y, save=join_out('bar', testname), label='bar', **vis_dict)
vis.plot_bar(x, y / 2, save=join_out('bar', testname), label='bar', color='blue', sidebar_pos=2, **vis_dict)
vis.plot_bar(x, y * 1.5, save=join_out('bar', testname), label='bar', color='green', sidebar_pos=3, **vis_dict)
Out[4]:
Out[4]:
Out[4]:
In [5]:
testname = 'label_line'
vis_dict = dict(close=False, label_inline=True, figsize='na')
vis.set_figsize()
ax = vis.plot_line(x, y, save=join_out('line', testname), label='red line', **vis_dict)
ax = vis.plot_line(x, y * -1, save=join_out('line', testname), label='blue line', color='blue', **vis_dict)
Out[5]:
In [6]:
testname = 'inherit'
vis_dict = dict(close=False, figsize='na')
vis.set_figsize()
vis.plot_bar(x, y * 5, save=join_out('bar', testname), title='test title', **vis_dict)
vis.plot_scatter(x, y * 25, save=join_out('scatter', testname), xlabel='test xlabel', **vis_dict)
vis.plot_line(x, y * -2, save=join_out('line', testname), **vis_dict)
Out[6]:
Out[6]:
Out[6]:
Out[6]:
In [7]:
testname = 'twinx'
vis_dict = dict(close=False)
ax2 = vis.plot_line(x, y, save=join_out('line', testname), **vis_dict)
ax1 = vis.plot_scatter(x, y * 2, save=join_out('scatter', testname), color='red', figsize='na', **vis_dict)
ax1 = vis.plot_bar(x, y, save=join_out('bar', testname), twinx=ax2, color='blue', **vis_dict)
In [8]:
vis.plot_bar(x, y, align='edge')
vis.plot_bar(x, y, align='center')
Out[8]:
Out[8]:
In [9]:
testname = 'scale_scatter'
vis_dict = dict(close=False)
ax = vis.plot_scatter(x, y, save=join_out('scatter_size', testname), c=y,
cbar=True, xlabel='x', **vis_dict)
vis.plot_scatter(x, y, save=join_out('scatter_color', testname), s=y * 10, **vis_dict)
Out[9]:
In [10]:
testname = 'figsize_dpi'
vis_dict = dict(close=False, dpi=75)
vis.plot_line(x, y, figsize=(7, 3), save=join_out('line', testname), **vis_dict)
vis.plot_bar(x, y, figsize=(3, 7), save=join_out('bar', testname), **vis_dict)
vis.plot_scatter(x, y, figsize=(5, 5), save=join_out('scatter', testname), **vis_dict)
Out[10]:
Out[10]:
Out[10]:
In [11]:
testname = 'xtext'
xtext = ['1', '2', 'Three', 'Four', 'Five', 'Sx', 'Sv', 'Eg', 'Ni', 'Ten', '11', 'Orange'] + ['fill'] * (xy_len - 12)
vis_dict = dict(close=False, figsize=(20, 5))
vis.plot_line(xtext, y, save=join_out('line', testname), **vis_dict)
vis.plot_bar(xtext, y, save=join_out('bar', testname), **vis_dict)
vis.plot_scatter(xtext, y, save=join_out('scatter', testname), **vis_dict)
Out[11]:
Out[11]:
Out[11]:
In [12]:
testname = 'x2y'
vis_dict = dict(close=False,)
vis.plot_line(y, save=join_out('line', testname), **vis_dict)
vis.plot_bar(y, save=join_out('bar', testname), **vis_dict)
vis.plot_scatter(y, save=join_out('scatter', testname), **vis_dict)
Out[12]:
Out[12]:
Out[12]:
In [13]:
testname = 'xlim'
vis_dict = dict(close=False)
vis.plot_line(x, y, save=join_out('line', testname), xlim=(0, 10), **vis_dict)
vis.plot_bar(x, y, save=join_out('bar', testname), xlim=(0, 50), **vis_dict)
vis.plot_scatter(x, y, save=join_out('scatter', testname), xlim=(-30, 30), **vis_dict)
Out[13]:
Out[13]:
Out[13]:
In [14]:
testname = 'xlim'
vis_dict = dict(close=False)
ax = vis.plot_line(x, y, save=join_out('line', testname), xlim=('2016-02-28', '2016-03-28'), **vis_dict)
ax = vis.plot_bar(x, y, save=join_out('bar', testname), xlim=('2016-02-28', '2016-04-28'), **vis_dict)
vis.plot_scatter(x, y, save=join_out('scatter', testname), xlim=('2015-02-28', '2015-05-28'), **vis_dict)
Out[14]:
In [15]:
testname = 'ylim'
vis_dict = dict(close=False)
vis.plot_line(x, y, save=join_out('line', testname), ylim=(-10, 20), **vis_dict)
vis.plot_bar(x, y, save=join_out('bar', testname), ylim=(0, 50), **vis_dict)
vis.plot_scatter(x, y, save=join_out('scatter', testname), ylim=(-30, 30), **vis_dict)
Out[15]:
Out[15]:
Out[15]:
In [16]:
testname = 'cumsum'
vis_dict = dict(close=False, cumsum=True)
vis.plot_line(x, y, save=join_out('line', testname), **vis_dict)
vis.plot_bar(x, y, save=join_out('bar', testname), **vis_dict)
vis.plot_scatter(x, y, save=join_out('scatter', testname), **vis_dict)
Out[16]:
Out[16]:
Out[16]:
In [17]:
testname = 'norm'
vis_dict = dict(close=False, norm=True)
vis.plot_line(x, y, save=join_out('line', testname), **vis_dict)
vis.plot_bar(x, y, save=join_out('bar', testname), **vis_dict)
vis.plot_scatter(x, y, save=join_out('scatter', testname), **vis_dict)
Out[17]:
Out[17]:
Out[17]:
In [18]:
testname = 'anom'
vis_dict = dict(close=False, anom=True)
vis.plot_line(x, y, save=join_out('line', testname), **vis_dict)
vis.plot_bar(x, y, save=join_out('bar', testname), **vis_dict)
vis.plot_scatter(x, y, save=join_out('scatter', testname), **vis_dict)
Out[18]:
Out[18]:
Out[18]:
In [19]:
testname = 'norm_anom'
vis_dict = dict(close=False, norm_anom=True)
vis.plot_line(x, y, save=join_out('line', testname), **vis_dict)
vis.plot_bar(x, y, save=join_out('bar', testname), **vis_dict)
vis.plot_scatter(x, y, save=join_out('scatter', testname), **vis_dict)
Out[19]:
Out[19]:
Out[19]:
In [20]:
testname = 'stats'
vis_dict = dict(close=False)
vis.plot_line(x, y, save=join_out('line', testname), stats='top center', **vis_dict)
vis.plot_bar(x, y, save=join_out('bar', testname), stats='bottom left', **vis_dict)
vis.plot_scatter(x, y, save=join_out('scatter', testname), stats='center bottom', **vis_dict)
Out[20]:
Out[20]:
Out[20]:
In [21]:
testname = 'style'
vis_dict = dict(close=False, alpha=0.1, label='test')
vis.plot_bar(x, y, save=join_out('bar', testname), width=1, facecolor='blue', edgecolor='red', linewidth=15,
matchcolor=False, linestyle='--', **vis_dict)
vis.plot_scatter(x, y, save=join_out('scatter', testname), facecolor='green', edgecolor='purple',
size=500, matchcolor=False, **vis_dict)
vis.plot_line(x, y, save=join_out('line', testname), linewidth=10, linestyle='--', marker='o', markersize=20, **vis_dict)
Out[21]:
Out[21]:
Out[21]:
In [22]:
# testname = 'projection' ## NEED TESTING
# vis_dict = dict(close=False)
# vis.plot_line(y, save=join_out('line', testname), xlim=(0, 10), **vis_dict)
# vis.plot_bar(y, save=join_out('bar', testname), xlim=(0, 50), **vis_dict)
# vis.plot_scatter(y, save=join_out('scatter', testname), xlim=(-30, 30), **vis_dict)
In [23]:
testname = 'scale_invert'
vis_dict = dict(close=False)
ax = vis.plot_line(x, y, save=join_out('line', testname), xscale='log', yinvert=True, **vis_dict)
vis.plot_bar(x, y, save=join_out('bar', testname), yscale='log', xinvert=True, **vis_dict)
vis.plot_scatter(x, y, save=join_out('scatter', testname), xinvert=True, yinvert=True, **vis_dict)
Out[23]:
Out[23]:
In [24]:
testname = 'labels' #, histogram
vis_dict = dict(close=False)
vis.plot_line(x, y, save=join_out('line', testname), xlabel='xlabel', **vis_dict)
vis.plot_bar(x, y, save=join_out('bar', testname), ylabel='ylabel', **vis_dict)
vis.plot_scatter(x, y, save=join_out('scatter', testname), title='title', title_pad=1.15, **vis_dict)
Out[24]:
Out[24]:
Out[24]:
In [25]:
testname = 'legend'
vis_dict = dict(close=False)
vis.plot_line(x, y, save=join_out('line', testname), label='line', **vis_dict)
vis.plot_bar(x, y, save=join_out('bar', testname), label='bar', legend='top left' , **vis_dict)
vis.plot_scatter(x, y, save=join_out('scatter', testname), label='scatter', legend='center' , **vis_dict)
Out[25]:
Out[25]:
Out[25]:
In [26]:
testname = 'share'
vis_dict = dict(close=False, rows=2, cols=2, title='test', ylabel='test')
ax = vis.plot_scatter(x, y, save=join_out('scatter', testname), pos=1, **vis_dict)
ax2=vis.plot_bar(x, y, save=join_out('bar', testname), sharey=ax, pos=2, **vis_dict)
vis.plot_line(x, y, save=join_out('line', testname), sharex=ax, pos=3, **vis_dict)
vis.plot_line(x, y, save=join_out('line', testname), sharex=ax2, pos=4, **vis_dict)
Out[26]:
Out[26]:
In [27]:
vis_dict = dict(close=False)
fruits = ['banana', 'banana', 'apple', 'orange', 'orange', 'orange', 'avocado', 'avocado', 'pear', 'cloud'] + ['test'] * 10
vis.plot_histogram(fruits, save=join_out('bar', testname), **vis_dict)
vis.plot_histogram(fruits, ptype='line', save=join_out('line', testname), color='orange', **vis_dict)
vis.plot_histogram(fruits, ptype='scatter', save=join_out('scatter', testname), color='blue', **vis_dict)
In [ ]: