Я играл с гистограммами с накоплением и хотел создать испанский флаг sh с помощью Vega Lite. Я указал высоту и цвет полос в данных, но мне не удалось отсортировать отдельные стопки:
Я установил масштаб равным нулю, поэтому что цвет взят из указанного поля. Я закодировал положение полосы в атрибуте pos
и хочу отсортировать сегменты по нему. Я также пытался немного изменить цвет красных полос, но это не помогло.
Spe c:
{
"$schema": "https://vega.github.io/schema/vega-lite/v4.json",
"description": "Fun with Flags",
"data": {
"values": [
{"h": 5, "color": "#aa151b", "pos": 6, "country": "spain"},
{"h": 5, "color": "#f1bf00", "pos": 4, "country": "spain"},
{"h": 5, "color": "#aa152b", "pos": 2, "country": "spain"}
]
},
"width": {"step": 300},
"mark": {"type": "bar"},
"encoding": {
"x": {"field": "country", "type": "nominal"},
"y": {"field": "h", "type": "quantitative"},
"color": {
"field": "color",
"scale": null,
"type": "nominal",
"sort": {"field": "pos", "op": "min", "order": "descending"}
}
}
}
Вот ссылка на Редактор Vega с Spe c.