示例#1
0
def test_grouping_order(test_data):
    df = test_data.auto_data.iloc[:10, :]
    bar_builder = BarBuilder(df,
                             values='mpg',
                             label='origin',
                             group='name',
                             color='name')
    names = df.name.drop_duplicates().values
    bar_builder.create()
    renderers = [renderer for renderer in bar_builder.yield_renderers()]

    # parse the relative x position from the data sources
    x_pos = {
        renderer.data_source.data['name'][0]:
        float(renderer.data_source.data['x'][0].split(':')[1])
        for renderer in renderers
    }

    # get the order of the names as they appear in their relative positioning
    grouped_names_in_order = list(
        sorted(x_pos.items(), key=operator.itemgetter(1)))
    grouped_names_in_order = [grouped[0] for grouped in grouped_names_in_order]

    for name, grouped_name in zip(names, grouped_names_in_order):
        assert name == grouped_name
示例#2
0
def test_grouping_order(test_data):
    df = test_data.auto_data.iloc[:10, :]
    bar_builder = BarBuilder(df, values='mpg', label='origin',
                             group='name', color='name')
    names = df.name.drop_duplicates().values
    bar_builder.create()
    renderers = [renderer for renderer in bar_builder.yield_renderers()]

    # parse the relative x position from the data sources
    x_pos = {renderer.data_source.data['name'][0]: float(renderer.data_source.data[
                                                         'x'][0].split(':')[1]) for
             renderer in renderers}

    # get the order of the names as they appear in their relative positioning
    grouped_names_in_order = list(sorted(x_pos.items(), key=operator.itemgetter(1)))
    grouped_names_in_order = [grouped[0] for grouped in grouped_names_in_order]

    for name, grouped_name in zip(names, grouped_names_in_order):
        assert name == grouped_name
示例#3
0
def test_values_only_input(df_with_cat_index):
    """Given values only input, use index for labels."""
    bar_builder = BarBuilder(df_with_cat_index, values='col1')
    bar_builder.create()
    assert bar_builder.attributes['label'].columns[0] == 'index'
示例#4
0
def test_cat_list_input(test_data):
    """Given values of categorical data, count the records of each unique value."""
    num_items = CountDistinct(values=test_data.cat_list).value
    bar_builder = BarBuilder(test_data.cat_list)
    bar_builder.create()
    assert len(bar_builder.comp_glyphs) == num_items