def plot(self,key,column=None,title=None): '''Convenience plotting with Wakari''' from webplot import p p.use_doc('TR Plots') p.figure() data = self.data[key] if isinstance(data,pd.core.series.TimeSeries): dates = data.index.values.astype('datetime64[ms]').astype('int64') fig = p.plot_dates(dates,data.values,title=title,width=500,height=300) else: dates = data.index.values.astype('datetime64[ms]').astype('int64') fig = p.plot_dates(dates,data[column].values,title=title,width=500,height=300) return fig
def plot(self, key, column=None, title=None): '''Convenience plotting with Wakari''' from webplot import p p.use_doc('TR Plots') p.figure() data = self.data[key] if isinstance(data, pd.core.series.TimeSeries): dates = data.index.values.astype('datetime64[ms]').astype('int64') fig = p.plot_dates(dates, data.values, title=title, width=500, height=300) else: dates = data.index.values.astype('datetime64[ms]').astype('int64') fig = p.plot_dates(dates, data[column].values, title=title, width=500, height=300) return fig
from webplot import p p.use_doc('uefa') from collections import Counter import numpy as np from wakaridata.sportstats import SportStats sports = SportStats() uefa_data = sports[sports.keys()[4]][:] dob_months = [int(dob.split('-')[1]) for dob in uefa_data['DOB']] mCount = Counter(dob_months) for c in mCount: print c, mCount[c] months = mCount.keys() soccer = np.array(mCount.values()) p.plot(months,soccer,width=500, height=300,title='Number of Births per Month for UEFA 2012') #http://www.cdc.gov/nchs/data/nvsr/nvsr60/nvsr60_01_tables.pdf#I02 #birth rates per month across USA 2009 US_Total_2009 = np.array([337980,316641,347803,337272,345257,346971,368450,359554\ ,361922,347625,320195,340995],dtype='float64') p.figure() p.plot(months,US_Total_2009,width=500, height=300,title='Totals Births per Month 2009 (USA)')
from webplot import p import pandas df = pandas.read_csv('auto-mpg.csv') p.use_doc('cars') source = p.model('PandasDataSource', df=df) source.update() p.pandastable(source) p.figure() p.scatter('mpg', 'weight', data_source=source) p.figure() p.scatter('mpg', 'yr', data_source=source)
#NOAA GLOBAL SUMMARY OF DAY (GSOD) EXAMPLE # #Plot two st from webplot import p p.use_doc('weather') from wakaridata.weather import Weather import numpy as np from datetime import datetime weather = Weather() # Get list of dataset keys keys = weather.keys() # Get IOPro text adapter #sampleList = ['weather/gsod/'+str(i)+'/279470-99999-'+str(i)+'.op' for i in range(2000,2010)] stat_1 = 'weather/gsod/2008/085750-99999-2008.op' stat_2 = 'weather/gsod/2008/279470-99999-2008.op' #function to tomilli = (lambda x: int(datetime.strptime(str(x),'%Y%m%d').strftime('%s'))*1000) adapter = weather[stat_1] date_1 = adapter[:]['YEARMODA'] date_1 = np.array([tomilli(x) for x in adapter[:]['YEARMODA']]) temp_1 = adapter[:]['TEMP'] adapter = weather[stat_2] date_2 = adapter[:]['YEARMODA'] date_2 = np.array([tomilli(x) for x in adapter[:]['YEARMODA']]) temp_2 = adapter[:]['TEMP']
from webplot import p p.use_doc('nhl_analysis') from collections import Counter import numpy as np from wakaridata.sportstats import SportStats sports = SportStats() nfl_data = sports[sports.keys()[2]][:] dob_months = [int(dob.split('-')[1]) for dob in nfl_data['DOB']] mCount = Counter(dob_months) for c in mCount: print c, mCount[c] months = mCount.keys() nfl = np.array(mCount.values()) p.plot(months,nfl,title='Number of Births per Month for NFL') #http://www.cdc.gov/nchs/data/nvsr/nvsr60/nvsr60_01_tables.pdf#I02 #birth rates per month across USA 2009 US_Total_2009 = np.array([337980,316641,347803,337272,345257,346971, 368450,359554,361922,347625,320195,340995]) p.figure() p.plot(months,US_Total_2009,title='Totals Births per Month 2009 (USA)')
#Example of 2D Ising model with Lattice state output from webplot import p p.use_doc('ising_model') import numpy as np L=10 #define square lattice size T = 1.5 #temperature Tc = 2.269 I = 2*np.random.randint(2, size=(L,L))-1 #initalize random matrix (LxL) with [-1,1] #define transition probabilites w = np.zeros(5) for i in range(5): dE = i*4 - 8; #It makes mapping into -8,-4,0,4,8 from 0,1,2,3,4 w[i] = np.exp(-float(dE)/T); #function to plot lattice def plotLattice(): p.figure() p.hold('on') sd = np.where(I==-1) #spin down su = np.where(I==1) #spin up l = str(L) p.scatter(sd[0],sd[1],color='black',title='2D Ising Model Size: '+l+'x'+l) p.scatter(su[0],su[1],color='blue') #metropolis algorithm def iterate(): L = I.shape[0]
from webplot import p p.use_doc('mlb_analysis') from collections import Counter import numpy as np from wakaridata.sportstats import SportStats sports = SportStats() mlb_data = sports[sports.keys()[0]][:] dob_months = [int(dob.split('-')[1]) for dob in mlb_data['DOB']] mCount = Counter(dob_months) for c in mCount: print c, mCount[c] months = mCount.keys() mlb = np.array(mCount.values()) p.plot(months,mlb,title='Number of Births per Month for MLB') #http://www.cdc.gov/nchs/data/nvsr/nvsr60/nvsr60_01_tables.pdf#I02 #birth rates per month across USA 2009 US_Total_2009 = np.array([337980,316641,347803,337272,345257,346971,368450,359554 \ ,361922,347625,320195,340995],dtype='float64') p.figure() p.plot(months,US_Total_2009,title='Totals Births per Month 2009 (USA)')
from webplot import p p.use_doc('webplot example') import numpy as np import datetime import time x = np.arange(100) / 6.0 y = np.sin(x) z = np.cos(x) data_source = p.make_source(idx=range(100), x=x, y=y, z=z) p.plot(x, y, 'orange') p.figure() p.plot('x', 'y', color='blue', data_source=data_source, title='sincos') p.plot('x', 'z', color='green') p.figure() p.plot('x', 'y', data_source=data_source) p.figure() p.plot('x', 'z', data_source=data_source) p.figure() p.table(data_source, ['x', 'y', 'z']) p.scatter('x', 'y', data_source=data_source) p.figure() p.scatter('x', 'z', data_source=data_source) p.figure() p.hold(False) p.scatter('x', 'y', 'orange', data_source=data_source) p.scatter('x', 'z', 'red', data_source=data_source) p.plot('x', 'z', 'yellow', data_source=data_source) p.plot('x', 'y', 'black', data_source=data_source) print "click on the plots tab to see results"
#Plots of potentially correlated pairs: # # from webplot import p p.use_doc('pairs') from wakaridata.weather import Weather import numpy as np from datetime import datetime from wakaridata.yahoofinance import Stocks stocks = Stocks() #convert date to milliseconds since the epoch tomilli = (lambda x: int(datetime.strptime(x,'%Y-%m-%d').strftime('%s'))*1000) def pairs_plot(st1,st2,length): adapter1 = stocks[st1][:length] adapter2 = stocks[st2][:length] dates =[tomilli(x) for x in adapter1['Date'][:]] #plot the opening price of two stocks p.figure() p.plot(dates,adapter1['Open'][:],width=500, height=300,title=st1+' vs. '+ st2) p.plot(dates,adapter2['Open'][:],width=500, height=300) #Pepsi and Coke pairs_plot('pep','coke',500)
from webplot import p p.use_doc('nba_analysis') from collections import Counter import numpy as np from wakaridata.sportstats import SportStats sports = SportStats() nba_data = sports[sports.keys()[3]][:] months = [int(dob.split('-')[1]) for dob in nba_data['DOB']] mCount = Counter(months) for c in mCount: print c, mCount[c] months = mCount.keys() nba = np.array(mCount.values()) p.plot(months,nba,title='Number of Births per Month for nba') #http://www.cdc.gov/nchs/data/nvsr/nvsr60/nvsr60_01_tables.pdf#I02 #birth rates per month across USA 2009 US_Total_2009 = np.array([337980,316641,347803,337272,345257,346971,368450,359554\ ,361922,347625,320195,340995],dtype='float64') p.figure() p.plot(months,US_Total_2009,title='Totals Births per Month 2009 (USA)')