def test_uniform_points(DataFrame): n = 101 ddf = DataFrame({'time': np.ones(2*n, dtype='i4'), 'x': np.concatenate((np.arange(n, dtype='f8'), np.arange(n, dtype='f8'))), 'y': np.concatenate(([0.] * n, [1.] * n))}) cvs = ds.Canvas(plot_width=10, plot_height=2, y_range=(0, 1)) agg = cvs.points(ddf, 'x', 'y', ds.count('time')) sol = np.array([[10] * 9 + [11], [10] * 9 + [11]], dtype='i4') assert_eq_ndarray(agg.data, sol)
def test_auto_range_points(DataFrame): n = 10 data = np.arange(n, dtype='i4') ddf = DataFrame({'time': np.arange(n), 'x': data, 'y': data}) cvs = ds.Canvas(plot_width=n, plot_height=n) agg = cvs.points(ddf, 'x', 'y', ds.count('time')) sol = np.zeros((n, n), int) np.fill_diagonal(sol, 1) assert_eq_ndarray(agg.data, sol) cvs = ds.Canvas(plot_width=n+1, plot_height=n+1) agg = cvs.points(ddf, 'x', 'y', ds.count('time')) sol = np.zeros((n+1, n+1), int) np.fill_diagonal(sol, 1) sol[5, 5] = 0 assert_eq_ndarray(agg.data, sol) n = 4 data = np.arange(n, dtype='i4') ddf = DataFrame({'time': np.arange(n), 'x': data, 'y': data}) cvs = ds.Canvas(plot_width=2*n, plot_height=2*n) agg = cvs.points(ddf, 'x', 'y', ds.count('time')) sol = np.zeros((2*n, 2*n), int) np.fill_diagonal(sol, 1) sol[np.array([tuple(range(1, 4, 2))])] = 0 sol[np.array([tuple(range(4, 8, 2))])] = 0 assert_eq_ndarray(agg.data, sol) cvs = ds.Canvas(plot_width=2*n+1, plot_height=2*n+1) agg = cvs.points(ddf, 'x', 'y', ds.count('time')) sol = np.zeros((2*n+1, 2*n+1), int) sol[0, 0] = 1 sol[3, 3] = 1 sol[6, 6] = 1 sol[8, 8] = 1 assert_eq_ndarray(agg.data, sol)