将动态查询应用于坛形图

时间:2020-03-27 23:46:22

标签: altair

import pandas as pd
import altair as alt
from vega_datasets import data

source = data.barley()
unique_sites = source.site.unique().tolist()

selectSite = alt.selection_single(
    name='Select', # name the selection 'Select'
    fields=['site'], # limit selection to the site column
    init={'site': source.site[0]}, # use first entry as initial value
    bind=alt.binding_select(options=unique_sites) # bind to a menu of unique genre values
)

alt.Chart(source).mark_bar().encode(
    x='variety',
    y='sum(yield)',
    opacity=alt.condition(selectSite, alt.value(0.75), alt.value(0.05)),
    color='site'
)

我正在尝试将动态查询功能与Altair画廊的示例之一结合起来。 但是,我遇到了这个错误,该错误的描述性不是很高(在Javascript控制台中也找不到任何内容?)

感谢您的帮助

Javascript错误:找不到名为“选择”的选择。 这通常意味着图表规格中有错别字。有关完整的追溯,请参见JavaScript控制台。

1 个答案:

答案 0 :(得分:1)

您忘记了将选择内容添加到图表中

alt.Chart(source).mark_bar().encode(
    x='variety',
    y='sum(yield)',
    opacity=alt.condition(selectSite, alt.value(0.75), alt.value(0.05)),
    color='site'
).add_selection(
    selectSite
)

enter image description here