Как в этом примере сортировать цветовые стеки по определенному полю в Vegalite? - PullRequest
0 голосов
/ 03 января 2019

Я пытаюсь понять, как отсортировать столбчатую диаграмму, где цветовой канал используется для кодирования некоторой информации, и в этой диаграмме, приведенной ниже, и хорошо ... Я в тупике.

I 'Я пытаюсь отсортировать сложенные цвета по «доходности», поэтому элементы с наибольшей доходностью находятся внизу, но сохраняем группировку на основе «сайта».

Возможно ли это с вегалитом?

Вот что я бы предположил, чтобы справиться с сортировкой, основываясь на том, что я прочитал в документации по сортировке , но мне не очень повезло.

"encoding": {
  "color": {
    "type": "nominal",
    "field": "site",
    "sort": {
      "field":"yield",
      "op": "count",
      "order": "ascending"
    }
  },
  "x": {"type": "nominal", "field": "variety"},
  "y": {"type": "quantitative", "aggregate": "sum", "field": "yield"}

}

Что мне нужно сделать, чтобы отсортировать гистограмму таким образом?

Вот диаграмма в Vega Editor

1 Ответ

0 голосов
/ 09 февраля 2019

Вы можете использовать канал order, как описано в https://vega.github.io/vega-lite/docs/stack.html#order

{
  "$schema": "https://vega.github.io/schema/vega-lite/v3.json",
  "data": {"url": "data/barley.json"},
  "mark": "bar",
  "encoding": {
    "color": {"type": "nominal", "field": "site"},
    "y": {"type": "quantitative", "aggregate": "sum", "field": "yield"},
    "order": {"aggregate": "sum", "field": "yield", "type": "quantitative"}
  }
}

enter image description here

...