问题标签 [sankey-diagram]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
532 浏览

r - 使用 networkD3 包中的 sankeyPlot() 重构 Sankey 图的数据输入

我正在尝试使用 networkD3 包中的 sankeyPlot() 绘制 Sankey 图。可视化在这样的示例数据上效果很好

节点

和链接

但是很难从格式的 csv 文件中准备链接表

是否有一种可重现的方法来为此类数据集准备源行号、目标行号?

0 投票
1 回答
1212 浏览

d3.js - d3.js sankey 图:“.dy”和“.dx”在哪里设置?

我正忙于在http://www.d3noob.org/2013/02/sankey-diagrams-description-of-d3js-code.html上蚕食 D3.js sankey 图的精彩教程。我想调整路径上的笔画宽度设置。

在这个 URL 上有一个重要的代码块用于上下文,但我想问一下这段话:

看到那里的“d.dy”参考了吗?究竟是如何/在哪里设置的?我在其较大的代码段落或其数据源中没有看到明确的引用。我现在会继续搜索它,但如果你知道一个简单的答案或资源,我会很感激你的帮助。现在我最好的猜测是 sankey 插件或链接类的某些部分通过查看节点矩形的大小和位置来动态设置它。

0 投票
1 回答
979 浏览

r - googleVis sankey-diagrams 显示不正确

我能够创建一个桑基图。然而,当渲染时只有一半的情节出现在网络浏览器中:

在此处输入图像描述

关于如何在不过多使用 R 语言的情况下正确渲染情节的任何想法?

下面的代码复制了图表:

0 投票
1 回答
5031 浏览

r - R中带有networkD3包的Sankey Diagram的自己的颜色范围

我正在尝试使用sankeyNetwork()networkD3 包绘制桑基图。

可视化效果很好,但我想将颜色范围更改为单个范围。有没有机会改变 SankeyNetwork 的颜色?我需要的范围只有例如 3 种颜色,我可以自己设置(不是 d3.scale 的预定义 colourScales)。

0 投票
0 回答
219 浏览

sankey-diagram - 我们可以固定桑基图中节点的位置吗

我试图创建一个新的桑基图,我发现一旦我拖放节点的位置就不是固定的。

如果我再次运行代码,节点会回到各自的位置。

我们可以固定节点位置,以便我们不需要一次又一次地拖动框吗?

0 投票
1 回答
1207 浏览

python - 动画 matplotlib sankey 图

我正在尝试为 matplotlib Sankey 图制作动画,其中流量的大小发生变化。我有一个部分工作的例子,但是它不断添加更多的桑基图,如计数器所示;len(sankey.diagrams)。这意味着它不能正常工作,有多个箭头,或者很长时间。如何正确地为带有多个箭头的 matplotlib Sankey 图制作动画?

0 投票
1 回答
1151 浏览

javascript - 桑基图中是否有最大节点限制?

我正在制作一个桑基图来显示质量流(化学工程的东西)。

具有较少节点的较旧的 .json 文件可以完美地使用相同的代码(如下),但是如果我加载具有更多节点的 .json 文件,它不会显示出来,给我一个“未捕获的类型错误:无法读取属性”节点'未定义的”错误。它进一步说:(匿名函数)@ Sankey_C_11sept15.htm:87 t @ d3.min.js:1 u @ d3.min.js:1 我需要这些文件在没有互联网连接的情况下工作。

旧的 .json 文件有 18 个节点,而新的 .json 文件有 32 个节点,它们之间的连接更多。否则它们是相同的;我相信这不是语法错误。它没有显示的另一个可能原因是我超出了允许的宽度或适合所有连接的东西。我不知道如何改变它(我对此很菜鸟)。

代码:

“损坏”的 .json 文件:

“好”的 .json 文件:

0 投票
1 回答
1376 浏览

javascript - 在 D3 桑基图中需要帮助

我有一个要求,用户将在 sankey 图表区域内单击并将鼠标拖动到 Sankey 图表的不同节点上,并且所选区域下的所有节点都应在另一个 div 标签中显示其名称。

任何想法如何实现?

此链接可能会有所帮助: 如何使用 d3.js 库使 sankey 图中的节点可点击

到目前为止我的代码:

我只想捕获拖动鼠标的所有节点名称(鼠标单击向下-> 跨桑基图拖动以定义区域-> 鼠标单击向上):

0 投票
1 回答
1425 浏览

javascript - 防止 D3js 桑基图中的循环

我正在尝试使用带有动态运输数据的d3 sankey 插件创建一个 sankey 图表。它在大多数情况下都很好用,除非我得到这样的数据集:

我的问题的关键是数据集中的第一个和最后一个条目。似乎在同一个 sankey 图表中具有相反的方向会使 javascript 进入无限循环并杀死浏览器。关于如何防止这种情况发生的任何想法?

这是我的图表代码,其中 raw 将是上面的对象:

0 投票
3 回答
565 浏览

d3.js - SVG 粗曲线路径未按预期运行

我在 D3 中创建一个桑基图,使用路径作为粗大的连接器来指示流量。但是,我发现那些比它们更长的路径开始表现得很奇怪。你可以在这里看到一个例子,我将路径分成几个部分:

图片说明在这里

蓝色和橙色重叠,因为蓝色(以及它后面的灰色)的弯曲方式与较细的路径不同,它们有一种“扭结”。

所有的线曲线都很好,除了这些大的。我只用 SVG 做了一个简单的例子:

在这里你可以看到它:

https://jsfiddle.net/hanvyj/t91pbp4w/

我在谷歌上找不到任何东西,我希望有人会遇到这个问题并知道解决方法,或者有更多的 SVG 经验并且知道不会这样做的 'SVG:Path' 的一个很好的替代品?