在 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 进行调查。