BigQuant使用文档

Bar - 条形图

由jliang创建,最终由ydong 被浏览 84 用户

接口

对于Bar(条形图)的 _type=”bar” 和 series_options:

bigcharts.Chart(
    ... 其他参数

    # 【设置图表类型】图表类型,具体参考各类型图表
    type_ = "bar",

    # 各数据系列配置项,其中key为数据系列名称,value为配置项,配置项定义见具体图表
    series_options = {
        "列名": {
            # 系列名称,用于 tooltip 的显示,legend 的图例筛选。默认为数据列名
            series_name: str,

            # 系列数据,默认为数据列
            y_axis: Sequence[Numeric, opts.BarItem, dict],

            # 是否选中图例
            is_selected: bool = True,

            # 使用的 x 轴的 index,在单个图表实例中存在多个 x 轴的时候有用。
            xaxis_index: Optional[Numeric] = None,

            # 使用的 y 轴的 index,在单个图表实例中存在多个 y 轴的时候有用。
            yaxis_index: Optional[Numeric] = None,

            # 是否启用图例 hover 时的联动高亮
            is_legend_hover_link: bool = True,

            # 系列 label 颜色
            color: Optional[str] = None,

            # 是否开启实时排序,默认为 False
            is_realtime_sort: bool = False,

            # 是否显示柱条的背景色。通过 backgroundStyle 配置背景样式。
            is_show_background: bool = False,

            # 每一个柱条的背景样式。需要将 showBackground 设置为 true 时才有效。
            background_style: types.Union[types.BarBackground, dict, None] = None,

            # 数据堆叠,同个类目轴上系列配置相同的 stack 值可以堆叠放置。
            stack: Optional[str] = None,

            # 数据堆叠,同个类目轴上系列配置相同的 stack 值可以堆叠放置。关于如何定制数值的堆叠方式,参见 stackStrategy。
            # 注:目前 stack 只支持堆叠于 'value' 和 'log' 类型的类目轴上,不支持 'time' 和 'category' 类型的类目轴。
            stack_strategy: types.Optional[str] = "samesign",

            # 堆积数值的策略,前提是stack属性已被设置。其值可以是:
            # 'samesign' 只在要堆叠的值与当前累积的堆叠值具有相同的正负符号时才堆叠。
            # 'all' 堆叠所有的值,不管当前或累积的堆叠值的正负符号是什么。
            # 'positive' 只堆积正值。
            # 'negative' 只堆叠负值。
            sampling: types.Optional[str] = None,

            # 鼠标悬浮时在图形元素上时鼠标的样式是什么。同 CSS 的 cursor。
            cursor: types.Optional[str] = "pointer",

            # 柱条的宽度,不设时自适应。
            # 可以是绝对值例如 40 或者百分数例如 '60%'。百分数基于自动计算出的每一类目的宽度。
            # 在同一坐标系上,此属性会被多个 'bar' 系列共享。此属性应设置于此坐标系中最后一个 'bar' 系列上才会生效,并且是对此坐标系中所有 'bar' 系列生效。
            bar_width: types.Union[types.Numeric, str] = None,

            # 柱条的最大宽度。比 barWidth 优先级高。
            bar_max_width: types.Union[types.Numeric, str] = None,

            # 柱条的最小宽度。在直角坐标系中,默认值是 1。否则默认值是 null。比 barWidth 优先级高。
            bar_min_width: types.Union[types.Numeric, str] = None,

            # 柱条最小高度,可用于防止某数据项的值过小而影响交互。
            bar_min_height: types.Numeric = 0,

            # 同一系列的柱间距离,默认为类目间距的 20%,可设固定值
            category_gap: Union[Numeric, str] = "20%",

            # 不同系列的柱间距离,为百分比(如 '30%',表示柱子宽度的 30%)。
            # 如果想要两个系列的柱子重叠,可以设置 gap 为 '-100%'。这在用柱子做背景的时候有用。
            gap: Optional[str] = "30%",

            # 是否开启大数据量优化,在数据图形特别多而出现卡顿时候可以开启。
            # 开启后配合 largeThreshold 在数据量大于指定阈值的时候对绘制进行优化。
            # 缺点:优化后不能自定义设置单个数据项的样式。
            is_large: bool = False,

            # 开启绘制优化的阈值。
            large_threshold: types.Numeric = 400,

            # 使用 dimensions 定义 series.data 或者 dataset.source 的每个维度的信息。
            # 注意:如果使用了 dataset,那么可以在 dataset.source 的第一行/列中给出 dimension 名称。
            # 于是就不用在这里指定 dimension。
            # 但是,如果在这里指定了 dimensions,那么 ECharts 不再会自动从 dataset.source 的第一行/列中获取维度信息。
            dimensions: types.Union[types.Sequence, None] = None,

            # 当使用 dataset 时,seriesLayoutBy 指定了 dataset 中用行还是列对应到系列上,也就是说,系列“排布”到 dataset 的行还是列上。可取值:
            # 'column':默认,dataset 的列对应于系列,从而 dataset 中每一列是一个维度(dimension)。
            # 'row':dataset 的行对应于系列,从而 dataset 中每一行是一个维度(dimension)。
            series_layout_by: str = "column",

            # 如果 series.data 没有指定,并且 dataset 存在,那么就会使用 dataset。
            # datasetIndex 指定本系列使用那个 dataset。
            dataset_index: types.Numeric = 0,

            # 是否裁剪超出坐标系部分的图形。柱状图:裁掉所有超出坐标系的部分,但是依然保留柱子的宽度
            is_clip: bool = True,

            # 柱状图所有图形的 zlevel 值。
            z_level: types.Numeric = 0,

            # 柱状图组件的所有图形的z值。控制图形的前后顺序。
            # z值小的图形会被z值大的图形覆盖。
            # z相比zlevel优先级更低,而且不会创建新的 Canvas。
            z: types.Numeric = 2,

            # 标签配置项,参考 `series_options.LabelOpts`
            label_opts: Union[opts.LabelOpts, dict] = opts.LabelOpts(),

            # 标记点配置项,参考 `series_options.MarkPointOpts`
            markpoint_opts: Union[opts.MarkPointOpts, dict, None] = None,

            # 标记线配置项,参考 `series_options.MarkLineOpts`
            markline_opts: Union[opts.MarkLineOpts, dict, None] = None,

            # 提示框组件配置项,参考 `series_options.TooltipOpts`
            tooltip_opts: Union[opts.TooltipOpts, dict, None] = None,

            # 图元样式配置项,参考 `series_options.ItemStyleOpts`
            itemstyle_opts: Union[opts.ItemStyleOpts, dict, None] = None,

            # 可以定义 data 的哪个维度被编码成什么。
            encode: types.Union[types.JSFunc, dict, None] = None,
        },
    }
)

示例代码

https://bigquant.com/codeshare/5542ab9d-dc3b-4735-a411-1c06b517ea7b

\

标签

数据可视化
{link}