在 vega-lite 中对联合域进行排序?
Sorting for unioned domains in vega-lite?
玩图层,我找不到可靠的方法来按 x("b" 字段值)对值 y 维度进行排序。
我尝试为 "y" 编码配置 "sort" 字段,但出现 domainSortDropped 错误。没关系,但也许有一种方法可以在创建频道之前通过 "pre-sorting" 值以某种方式避免它?
如果我手动传递排序数据集,为 "y" 编码指定 "sort": null
,vega 仍按 "x" 字母顺序对行进行排序。难道我做错了什么?如何获得 "descending bars" 又名 "waterfall" 图表?
{
"width": 500,
"height": 300,
"data": {
"values": [
{
"a": "A",
"b": 70
},
{
"a": "Z",
"b": 50
},
{
"a": "B",
"b": 34
}
]
},
"layer": [
{
"mark": "bar",
"encoding": {
"y": {
"field": "a",
"type": "ordinal",
"sort": null
},
"x": {
"field": "b",
"type": "quantitative"
},
"color": {
"field": "a",
"type": "nominal"
}
}
},
{
"mark": "text",
"encoding": {
"y": {
"field": "a",
"type": "ordinal",
"sort": null
},
"text": {
"field": "b",
"type": "quantitative"
}
}
}
]
}
我觉得这像是一个错误。我正在 https://github.com/vega/vega-lite/issues/3215 进行调查。
玩图层,我找不到可靠的方法来按 x("b" 字段值)对值 y 维度进行排序。
我尝试为 "y" 编码配置 "sort" 字段,但出现 domainSortDropped 错误。没关系,但也许有一种方法可以在创建频道之前通过 "pre-sorting" 值以某种方式避免它?
如果我手动传递排序数据集,为 "y" 编码指定 "sort": null
,vega 仍按 "x" 字母顺序对行进行排序。难道我做错了什么?如何获得 "descending bars" 又名 "waterfall" 图表?
{
"width": 500,
"height": 300,
"data": {
"values": [
{
"a": "A",
"b": 70
},
{
"a": "Z",
"b": 50
},
{
"a": "B",
"b": 34
}
]
},
"layer": [
{
"mark": "bar",
"encoding": {
"y": {
"field": "a",
"type": "ordinal",
"sort": null
},
"x": {
"field": "b",
"type": "quantitative"
},
"color": {
"field": "a",
"type": "nominal"
}
}
},
{
"mark": "text",
"encoding": {
"y": {
"field": "a",
"type": "ordinal",
"sort": null
},
"text": {
"field": "b",
"type": "quantitative"
}
}
}
]
}
我觉得这像是一个错误。我正在 https://github.com/vega/vega-lite/issues/3215 进行调查。