Vega lite выбрать N количество объектов (кол) - PullRequest
1 голос
/ 13 марта 2020

Я только начал использовать Vega lite, и мне было интересно, как вырезать все после моего 10-го объекта (у меня тысячи строк, и я просто заинтересован в топ-10).

Это то, что я имею до сих пор :

{
  "$schema": "https://vega.github.io/schema/vega-lite/v4.json",
  "data": {
    "url": "https://raw.githubusercontent.com/DanStein91/Info-vis/master/anage.csv",
    "format": {
      "type": "csv"
    }
  },
  "transform": [
    {
      "filter": {
        "field": "Female_maturity_(days)",
        "gt": 0
                }
    }

  ],
  "title": {
    "text": "",
    "anchor": "middle"
  },
  "mark": "bar",
  "encoding": {
    "y": {
      "field": "Common_name",
      "type": "nominal",
      "sort": {
        "op": "mean",
        "field": "Female_maturity_(days)",
        "order": "descending"
      }
    },
    "x": {
      "field": "Female_maturity_(days)",
      "type": "quantitative"
    }
  },
  "config": {}
}

1 Ответ

0 голосов
/ 13 марта 2020

Вы можете следовать примеру Filtering Top K Items из документации. Результат выглядит примерно так ( представление в редакторе Vega ):

{
  "data": {
    "url": "https://raw.githubusercontent.com/DanStein91/Info-vis/master/anage.csv",
    "format": {"type": "csv", "parse": {"Female_maturity_(days)": "number"}}
  },
  "transform": [
    {
      "window": [{"op": "rank", "as": "rank"}],
      "sort": [{"field": "Female_maturity_(days)", "order": "descending"}]
    },
    {"filter": "datum.rank <= 10"}
  ],
  "mark": "bar",
  "encoding": {
    "y": {
      "field": "Common_name",
      "type": "nominal",
      "sort": {
        "op": "mean",
        "field": "Female_maturity_(days)",
        "order": "descending"
      }
    },
    "x": {"field": "Female_maturity_(days)", "type": "quantitative"}
  },
  "title": {"text": "", "anchor": "middle"}
}

enter image description here

Одно примечание: при выполнении преобразования на Данные CSV (в отличие от JSON данных), важно использовать format.parse , чтобы указать желаемый тип данных для столбцов: по умолчанию столбцы CSV интерпретируются как строки, что может привести к основанные на действиях вести себя неожиданным образом.

...