Как перевести грамматику преобразования окна vega-lite в чистый код vega-lite-api?

Я наткнулся на следующий пример вега-лайт грамматики в документах :

      {
  "data": {"url": "data/movies.json"},
  "transform": [{
    "sort": [{"field": "IMDB Rating"}],
    "window": [{"op": "count", "field": "count", "as": "Cumulative Count"}],
    "frame": [null, 0]
  }],
  "mark": "area",
  "encoding": {
    "x": {
      "field": "IMDB Rating",
      "type": "quantitative"
    },
    "y": {
      "field": "Cumulative Count",
      "type": "quantitative"
    }
  }
}

Он отображает следующее:

Я пытаюсь создать тот же сюжет, используя vega-lite-api. Я могу сделать это следующим образом:

Он генерирует тот же график cdf, что и на изображении выше. Вы можете подтвердить в этом блокноте. У меня есть два вопроса:

Q1. Как вы можете видеть в приведенном выше коде vega-lite-api, я указал следующую грамматику vega-lite внутриtransform():

      {
    "sort": [{"field": "IMDB Rating"}],
    "window": [{"op": "count", "field": "count", "as": "Cumulative Count"}],
    "frame": [null, 0]
}

Как я могу сделать то же самое с чистым vega-lite-api, используяwindow()API?

Q2. Почему запуск приведенного выше кода в браузере не генерирует тот же график, что и наблюдаемый блокнот, а возвращаетWARNING: WARN Infinite extent for field "IMDB Rating": [Infinity, -Infinity]? (Ранее встраивание графа vega-lite-api в вопросы stackoverflow аналогичным образом работало, как вы можете видеть в этом вопросе.)

0 ответов

Другие вопросы по тегам