我正在尝试在Vega lite中模拟power BI的行为,如果你基于相同的日期添加2个数据对象,你可以将数据堆叠在彼此的顶部。
我在power BI中使用的是Deneb,但它使用vega lite,所以任何vega lite解决方案都应该可以。
我今天之前有一个计数数据集,今天之后有一个计数数据集。我希望将它们组合在一起,这样如果今天之前和今天之后在同一个月中有数据,那么它们是堆叠的,而不是相互重叠的。
我似乎找不到一个不涉及将数据分组到一个对象中的解决方案
发布于 2021-09-17 16:54:46
将两个数据集组合成单个堆叠条形图的方法是使用lookup transform将数据集连接在一起。如果您希望堆叠来自不同列的条形图,则可以在制作标准条形图之前使用fold transform将它们组合在一起。
例如(open in vega editor):
{
"datasets": {
"table-1": [
{"key": "A", "A": 2},
{"key": "B", "A": 3},
{"key": "C", "A": 1},
{"key": "D", "A": 2}
],
"table-2": [
{"key": "A", "B": 6},
{"key": "B", "B": 4},
{"key": "C", "B": 1},
{"key": "D", "B": 3}
]
},
"data": {"name": "table-1"},
"transform": [
{
"lookup": "key",
"from": {"data": {"name": "table-2"}, "key": "key", "fields": ["B"]}
},
{"fold": ["A", "B"], "as": ["column", "value"]}
],
"mark": "bar",
"encoding": {
"color": {"field": "column", "type": "nominal"},
"x": {"field": "value", "type": "quantitative"},
"y": {"field": "key", "type": "nominal"}
}
}

https://stackoverflow.com/questions/69212988
复制相似问题