gpt4 book ai didi

altair - 有没有一种方法可以缩放然后进行选择间隔而无需使用 Altair 进一步缩放

转载 作者:行者123 更新时间:2023-12-04 01:10:25 27 4
gpt4 key购买 nike

有一个散点图,我知道您在比例尺上使用绑定(bind)进行平移并使用滚轮进行缩放,这很棒。但是,一旦缩放,就需要一种方法来进行选择间隔,而无需进一步缩放效果。例如,需要一种通过 shift 键暂停或退出的方法。在vega-lite question它使用鼠标事件。在 Altair 文档中根本没有关于如何执行此操作的示例。 API 在那里,但是 altair.EventType 不公开鼠标事件。

非常感谢如何让它在 Altair 中工作。

最佳答案

您可以在选择定义中使用事件修饰符来执行此操作(在 Altair 的文档 here 中有一些示例)。

例如,下面是一张图表,当不按住 shift 键时会触发缩放 Action ,而当按住 shift 键时会触发选择 Action :

import altair as alt
from vega_datasets import data

source = data.cars()

zoom = alt.selection_interval(
bind='scales',
on="[mousedown[!event.shiftKey], mouseup] > mousemove",
translate="[mousedown[!event.shiftKey], mouseup] > mousemove!",
)

selection = alt.selection_interval(
on="[mousedown[event.shiftKey], mouseup] > mousemove",
translate="[mousedown[event.shiftKey], mouseup] > mousemove!",
)

alt.Chart(source).mark_circle(size=60).encode(
x='Horsepower',
y='Miles_per_Gallon',
color='Origin',
).add_selection(zoom, selection)

这些事件修饰符的语法可以在 vega 的 eventStream selector 中找到。文档。

关于altair - 有没有一种方法可以缩放然后进行选择间隔而无需使用 Altair 进一步缩放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/65005372/

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