def test_axis(self): pivot = pd.pivot_table(self.df, rows='gender', cols='town', values=['price', 'count']) xaxis = get_axes(pivot.index, 'gender', xaxis=True) yaxis = get_axes(pivot.columns, ['price', 'count']) self.assertEquals('gender', xaxis.get('title', {}).get('text')) self.assertEquals(['man', 'woman'], xaxis.get('categories', )) self.assertIsNone(xaxis.get('type')) [price, count] = yaxis self.assertEquals('price', price.get('title', {}).get('text')) self.assertEquals('count', count.get('title', {}).get('text')) [price_ba, price_ke, count_ba, count_ke] = get_series(pivot, yaxis) self.assertEquals(0, price_ba.get('yAxis')) self.assertEquals('price / BA', price_ba.get('name')) self.assertEquals(0, price_ke.get('yAxis')) self.assertEquals('price / KE', price_ke.get('name')) self.assertEquals(1, count_ba.get('yAxis')) self.assertEquals('count / BA', count_ba.get('name')) self.assertEquals(1, count_ke.get('yAxis')) self.assertEquals('count / KE', count_ke.get('name'))
def test_chart_type(self): pivot = pd.pivot_table(self.df, rows='gender', values=['price', 'count']) xaxis = get_axes(pivot.index, 'gender', xaxis=True) yaxis = get_axes(pivot.columns, ['price', 'count']) [count, price] = get_series(pivot, yaxis, {'count': 'spline', 'price': 'line'}) self.assertEquals('line', price.get('type')) self.assertEquals('spline', count.get('type'))
def test_series(self): pivot = pd.pivot_table(self.df, rows='month', cols='gender', values='price') [man, woman] = get_series(pivot, []) self.assertEquals('man', man['name']) self.assertEquals([(unix_time_millis(date(2010, 1, 1)), 1.0), (unix_time_millis(date(2010, 2, 1)), 1.0)], man['data']) self.assertEquals('woman', woman['name']) self.assertEquals([(unix_time_millis(date(2010, 1, 1)), 1.0), (unix_time_millis(date(2010, 2, 1)), 0)], woman['data'])
def test_chart_type(self): pivot = pd.pivot_table(self.df, rows='gender', values=['price', 'count']) xaxis = get_axes(pivot.index, 'gender', xaxis=True) yaxis = get_axes(pivot.columns, ['price', 'count']) [count, price] = get_series(pivot, yaxis, { 'count': 'spline', 'price': 'line' }) self.assertEquals('line', price.get('type')) self.assertEquals('spline', count.get('type'))
def test_series_nondate(self): pivot = pd.pivot_table(self.df, rows='gender', cols='town', values='price') xaxis = get_axes(pivot.index, 'gender', xaxis=True) yaxis = get_axes(pivot.columns, 'price') self.assertEquals('gender', xaxis.get('title', {}).get('text')) self.assertEquals(['man', 'woman'], xaxis.get('categories', )) self.assertIsNone(xaxis.get('type')) self.assertEquals('price', yaxis.get('title', {}).get('text')) [ba, ke] = get_series(pivot, yaxis) self.assertEquals('BA', ba['name']) self.assertEquals([1, 1], ba['data']) self.assertEquals(None, ba.get('yAxis')) self.assertEquals('KE', ke['name']) self.assertEquals([1, 0], ke['data']) self.assertEquals(None, ke.get('yAxis'))