繁体   English   中英

Altair 将选择添加到分层图表

[英]Altair add selection to Layered chart

我有下面的代码。 但是“选择”并没有按预期工作。 当一个点被选中时,其他线被取消选中。 但所选线的点也会隐藏/消失。

我一定做错了什么。 这是将选择添加到分层图表的正确方法吗?

import altair as alt
from vega_datasets import data

source = data.stocks()

selection1 = alt.selection_single()

line = alt.Chart(source).mark_line().encode(
    x='date',
    y='price',
    #color= 'symbol',
    color=alt.condition(selection1, 'symbol', alt.value('grey')),
    opacity=alt.condition(selection1, alt.value(0.8), alt.value(0.1)),
)

point = line.mark_point(size = 40, fill='white')

alt.layer(line, point).add_selection(selection1)

默认情况下,选择只选择与您单击的标记直接关联的数据。 如果您希望它应用于更大的数据集,您可以指定fieldsencodings 在您的情况下,听起来您希望它适用于具有相同symbol的所有数据,因此您可以这样做:

selection1 = alt.selection_single(fields=['symbol'])

或者,由于您的符号在所有情况下都映射到颜色,因此您可以这样做:

selection1 = alt.selection_single(encodings=['color'])

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM