我正在尝试使用 Vega 创建桑基图。我正在使用 PowerBI 中的 Sankey Chart - PBI-David 提供的模板。
我以 DAX 表的形式使用自己的数据,然后将其导入 Deneb Visual 的字段中。
然而,根据我的数据,我得到以下桑基图。
图表元素非常适合我的要求。但我想将 K 和 L 块置于与 G 块相同的水平方向,以便链接带看起来不会怪异和扭曲。 (类似于B -> D,E,F的排列方式)。
我看到表格和图表中有一个名为间隙的参数,我还尝试修改值以查看应用正值和负值时间隙的表现。但图表元素的行为对于任何间隙参数的输入似乎都非常随机。
有谁知道gap参数到底指定了什么?以及如何确保条带不会与变化的值重叠?
我还附上了一个示例 PBIX 文件,其中包含相同的数据,以便于理解我的问题:
https://drive.google.com/file/d/1EZ-dGMHT-zqzDVOdujpm4VaeIbiyaVI4/view?usp=sharing
试试这个:
Sankey Diagram Raw Plan =
DATATABLE(
"category", STRING, "stack", INTEGER, "sort", INTEGER, "labels", STRING, "gap", INTEGER, "source", STRING, "destination", STRING, "value", DOUBLE,
{{,,,,,"A", "B", 59.52},
{,,,,,"A", "C", 0.68},
{,,,,,"B", "D",41.95},
{,,,,,"B", "E", 12.97},
{,,,,,"B", "F", 4.60},
{,,,,,"D", "G", 41.62},
{,,,,,"G", "K", 40.87},
{,,,,,"G", "L", 0.75},
{,,,,,"D", "H", 0.33},
{,,,,,"E", "I", 11.16},
{,,,,,"E", "J", 1.81},
{"A", 1, 1,"left", , , , },
{"B", 2, 1,"left", , , , },
{"C", 2, 2,"left", , , , },
{"D", 3, 1,"left", , , , },
{"E", 3, 2,"left", , , , },
{"F", 3, 3,"left", , , , },
{"J", 4, 4,, , , , },
{"G", 4, 1,, , , , },
{"H", 4, 2,, , , , },
{"I", 4, 3,, , , , },
{"K", 5, 1,, , , , },
{"L", 5, 2,, 60, , , }
}
)
您正在使用基准中心(所有内容都垂直居中)。标准间隙(您使用 14 像素)是使用的默认间隙。如果您想要额外的间隙,您可以像我一样将其传递到数据中,因此 K 和 L 之间的间隙现在为 14 + 16。