【问题标题】:Altair: Use variable color schemes for selected columnsAltair:对选定的列使用可变配色方案
【发布时间】:2020-02-01 16:16:35
【问题描述】:

我有一个带有 3 个不同值列的 GeoDataFrame,可以通过下拉菜单单独选择。目前对于所有 3 个选定的列,图表的配色方案是“蓝色”。不过,我想选择更灵活的配色方案,让每一列都有不同的方案,例如['blues','greens','purples']。

我一直在尝试使用嵌套条件、编码和 transform_calculate 条件来解决这个问题,但没有成功。 这是否有可能实现?

columns = ['BinPer', 'DinPer', 'BEVinPer']
select_box = alt.binding_select(options=columns, name='column')
sel = alt.selection_single(fields=['column'], bind=select_box, init={'column': 'BinPer'}, 
                           clear=False,
                           on="click[event.shiftKey&!event.shiftKey]")

map_ = alt.Chart(source).transform_fold(
    columns,
    as_=['column', 'value']
).transform_filter(
    sel
).mark_geoshape(
    stroke='white',
    strokeWidth=0.5
).encode(     
    color = alt.Color('value:Q', scale=alt.Scale(scheme='blues'))
).add_selection(
    sel
)
map_

【问题讨论】:

    标签: color-scheme vega altair


    【解决方案1】:

    不,不可能根据从内置下拉菜单中选择的值来改变单个图表中的配色方案。

    如果你想做这样的事情,最好的选择可能是使用像ipywidgets这样的工具来定义下拉菜单,并为每个值输出一个带有所需配色方案的图表。

    【讨论】:

      猜你喜欢
      • 2019-03-25
      • 2023-01-27
      • 2022-09-23
      • 2022-06-15
      • 2021-05-12
      • 1970-01-01
      • 1970-01-01
      • 2017-03-23
      • 1970-01-01
      相关资源
      最近更新 更多