Масштабирование домена и выбор фильтра в vega-lite: автоматизированное c масштабирование оси - PullRequest
0 голосов
/ 27 января 2020

В Scale Domains docs Vega-Lite отмечается:

An alternate way to construct this technique would be to filter out
the input data to the top (detail) view like so:

{
  "vconcat": [{
    "transform": [{"filter": {"selection": "brush"}}],
    ...
  }]
}

Что действительно почти то же самое (хотя метод фильтрации намного медленнее, как отмечено в документации), за исключением одного различия:

  • При использовании метода выбора фильтра ( demo ), ось Y верхней диаграммы будет автоматически увеличена до выбранные точки. Это довольно аккуратно, особенно если у вас большое количество точек.
  • При использовании метода масштабной области ( demo ) ось y остается замороженной при перемещении выделения вокруг.

Вопрос: можно ли автоматически перемещать ось Y к выбранным точкам при перемещении выделения с помощью метода «масштабной области» (так же, как это происходит с методом выбора фильтра)?

Почему важна вышеуказанная разница? Представьте себе, что цена акций в среднем увеличивалась в среднем на 1 доллар в день в прошлом году (но в течение определенного дня она могла демонстрировать любое нестабильное поведение), и мы наносим на нее отметки линий. Если вы строите весь год, вы видите всю картину. Однако если вы увеличиваете конкретный день, не сбрасывая масштаб по оси Y, внутридневной график цены будет просто плоской линией или близок к ней.

// Я проверил все масштабные области связанные с vega-lite, репозиторием altair и SO вопросы, связанные с этим, и не смогли найти ничего связанного Я также разместил этот вопрос в репозитории vega-lite на GH, но был переадресован SO.

1 Ответ

0 голосов
/ 28 января 2020

Нет. Если не указано иное, масштаб y определяется по всем данным на графике.

При фильтрации данных данные на графике изменяются, что приводит к изменению оси y. Когда вы изменяете масштаб на основе x-выбора без фильтрации данных, он не меняет данные на графике, поэтому масштаб y остается постоянным.

Если вы хотите, чтобы был определен масштаб y автоматически на основе данных в пределах выбора, единственная опция - фильтровать по этому выбору.

...