gpt4 book ai didi

altair - 如何根据下拉列表为图表选择数据?

转载 作者:行者123 更新时间:2023-12-04 10:18:47 28 4
gpt4 key购买 nike

我有一个数据框,我想根据下拉菜单对其进行子选择。所以给定以下代码:

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

cars = pd.melt(data.cars(), ['Horsepower', 'Origin', 'Name', 'Year'])
cars.head()

select_box = alt.binding_select(options=list(cars['variable'].unique()))
selection = alt.selection_single(name='d_axis', fields=['variable'], bind=select_box)

alt.Chart(cars).mark_point().encode(
x='Horsepower',
y='value',
color='Origin',
tooltip='Name'
).add_selection(
selection
).transform_filter(
selection
)

我不想更改 X 值,而只想选择 Origin 为“USA”的汽车。
所以实际上在哪里
alt.Chart(cars).mark_point().encode(

变成:
alt.Chart(cars[cars['Origin'] == selection]).mark_point().encode(

谢谢,
斯蒂芬

最佳答案

您可以将选择绑定(bind)到要过滤的字段:

import altair as alt
from vega_datasets import data

cars = data.cars()

select_box = alt.binding_select(options=list(cars['Origin'].unique()))
selection = alt.selection_single(fields=['Origin'], bind=select_box)

alt.Chart(cars).mark_point().encode(
x='Horsepower',
y='Miles_per_Gallon'
).add_selection(
selection
).transform_filter(
selection
)

enter image description here

关于altair - 如何根据下拉列表为图表选择数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60964087/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com