Галерея примеров 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'
).properties(
width=600,
height=200
)
upper = base.encode(
alt.X('date:T', scale=alt.Scale(domain=brush))
)
lower = base.properties(
height=60
).add_selection(brush)
upper & lower
![enter image description here](https://i.stack.imgur.com/k7nRJ.png)
Если я встраиваю результирующую спецификацию на страницу, используя vega-embed, я получаю что-то, что хорошо работает в настольных браузерах, но, кажется, мало что делает в мобильных браузерах, где перетаскивание график не создает выделение. Я могу удалить предопределенный выбор, щелкнув по нему в мобильных браузерах, но это мало что дает. Поэтому мой вопрос звучит так:
Есть ли способ создания спецификаций Vega-Lite, предпочтительно в Altair, с интервалами выбора, которые интуитивно понятны для использования в (любом из распространенных) мобильных браузерах, в идеале, позволяя пользователям создавать выборки, перетаскивая по графику?