使用间隔选择时,堆叠 Altair/Vega-Lite 图表中的工具提示消失

fug*_*ede 2 python data-visualization vega-lite altair

Altair 示例库包含一个很好的示例,说明如何使用区间选择创建两个图,其中一个图允许您定义另一个图的比例。我一直在尝试通过将工具提示定义为基础的一部分来向堆叠图表的两个部分添加工具提示:

import altair as alt
from vega_datasets import data

source = data.sp500.url

brush = alt.selection(type='interval', encodings=['x'])

base = alt.Chart(source).mark_area().encode(
    x = 'date:T',
    y = 'price:Q',
    tooltip = 'price:Q'
).properties(
    width=600,
    height=200
)

upper = base

lower = base.properties(
    height=60
).add_selection(brush)

upper & lower
Run Code Online (Sandbox Code Playgroud)

这样做,工具提示在 上按预期工作,lower但在 上根本不起作用upper

在此处输入图片说明

但是,如果我删除.add_selection(brush)from lower,则工具提示也会起作用upper(未更改),但这当然违背了示例的目的。我还可以upper通过将其标记为交互式来使工具提示起作用,但同样,这破坏了示例的优点。更改upperto的定义upper = base.encode(tooltip='price:Q')没有任何作用。

我将如何定义工具提示目标,使工具提示同时显示在upper和 上lower

jak*_*vdp 5

工具提示停止工作的事实可能是一个错误,值得提交Vega-Lite 错误报告

看来您可以通过向上方图表添加第二个空选项来解决此问题:

upper = base.add_selection(alt.selection_single())
Run Code Online (Sandbox Code Playgroud)

您可以在此处查看交互结果。