Пример #1
0
def test_groupby(test_data):
    ds = ChartDataSource(df=test_data.auto_data)
    groups = list(ds.groupby(**test_data.single_col_spec))
    assert len(groups) == 5

    ds = ChartDataSource(df=test_data.auto_data)
    groups = list(ds.groupby(**test_data.multi_col_spec))
    assert len(groups) == 9
Пример #2
0
def test_groupby(test_data):
    # Note: this works because MarkerAttr and DashAttr are permissive in
    # what is accepted for iterable, i.e. List(String)
    for cls in (ColorAttr, MarkerAttr, DashAttr):
        single_col_spec = {'test': cls(df=test_data.auto_data, columns='cyl',
                                            name='test', iterable=['red', 'blue'])}
        multi_col_spec = {'test': cls(df=test_data.auto_data,
                                           columns=('cyl', 'origin'),
                                           name='test', iterable=['red', 'blue'])}

        ds = ChartDataSource(df=test_data.auto_data)
        groups = list(ds.groupby(**single_col_spec))
        assert len(groups) == 5

        ds = ChartDataSource(df=test_data.auto_data)
        groups = list(ds.groupby(**multi_col_spec))
        assert len(groups) == 9
Пример #3
0
def test_pandas(test_data):
    """Test creating chart data source from existing dataframe."""
    ds = ChartDataSource.from_data(test_data.pd_data)
    assert len(ds.columns) == 2
    assert len(ds.index) == 4

    ds = ChartDataSource(test_data.pd_data)
    assert len(ds.columns) == 2
    assert len(ds.index) == 4
def test_pandas(test_data):
    """Test creating chart data source from existing dataframe."""
    pd_data = test_data.pd_data.copy()
    ds = ChartDataSource.from_data(pd_data)
    assert len(ds.columns) == 2
    assert len(ds.index) == 4

    ds = ChartDataSource(pd_data)
    assert len(ds.columns) == 2
    assert len(ds.index) == 4

    # Test for issue #3899
    # ChartDataSource shouldn't modify the input DataFrame
    assert pd_data.equals(test_data.pd_data)