问题标签 [bundle-layout]
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.
javascript - D3 动态分层边缘捆绑 - 2 路导入
我正在尝试基于 M Bostock ( http://bl.ocks.org/mbostock/7607999 ) 实现创建一个动态分层边缘捆绑:
我的数据集的 bl.ocks 版本在这里:http ://bl.ocks.org/ratnakarv/91ace0b5f77fff5ef0ab
与原来的节点 1 和节点 2 之间的关系是一种方式(即节点 1 可以导入节点 2 或其他方式)不同,在我的数据集中,节点 1 和节点 2 可以有两种方式的导入关系。这在业务流程中经常发生,这就是我的应用程序。
- 当前挑战:
在此示例中,“评估”导入“创建 QOS 降级报告”,“创建 QOS ...”也导入“评估”。但是当鼠标悬停时,'Assess', node - 'Create..' 显示为红色,但线为绿色。当鼠标悬停在节点“创建...”上时,导入行以及“评估”显示为红色。
- 所需要求:
我的要求是,如果存在双向导入,则 - 1. 线以及其他节点以第三种颜色显示(红色或绿色除外)或 2. 线以及其他节点显示为红色.
对此的任何指示都会有所帮助。我有 D3 的基本知识,但我不是数据可视化专家,我只是尝试在我的工作领域中使用可视化来更好地沟通。
javascript - 在 D3.js 中使用非分层数据创建径向网络图
我正在尝试在 D3.js 中创建一个类似于此的图表:
http://mbostock.github.io/d3/talk/20111116/bundle.html
此示例使用分层边缘捆绑。但是,我的数据本质上不是分层的,我想表示一个相对简单的网络结构。我有一堆节点分成组,并通过一个简单的连接矩阵连接。我能够在 D3.js 中生成一个强制导向的网络图,类似于:
http://bl.ocks.org/mbostock/4062045
但是,当结构不是分层结构时,我无法弄清楚如何生成上面的径向图。在此处给出的示例中
https://gist.github.com/mbostock/7607999
他们使用需要分层数据结构的 bundle() 和 cluster.nodes() 函数。对于这种类型的径向图,我可以使用与力导向图相同的 json 数据结构吗?如果是,如何?
编辑:这是一个(非工作)JSFiddle http://jsfiddle.net/12sb8jxg/
我添加了
但
仍然没有附加捆绑功能工作所需的 .x、.y、.parent 等。
javascript - 分层边缘捆绑 2 方式 - 链接颜色
这是对这个问题的跟进: D3 Dynamic hierarchy edge bundling - 2 way import
原始问题已解决,并显示在http://jsfiddle.net/w2rfwokx/1/中, 即如果节点 1 和节点 2 都相互导入,则会出现橙色链接。但是这个分辨率似乎有一个问题,这在http://jsfiddle.net/w2rfwokx/3/中显示的这个新数据集中变得很明显
当节点 1 和节点 2 都相互导入时,当节点 1 突出显示时,节点 2 为橙色,这是它需要的样子,但链接不是。
我猜代码没有考虑到复杂的数据集。在这个复杂的数据集中,节点 1 导入节点 2,节点 2 导入节点 1 和节点 3,节点 3 导入节点 2。
我可以弄清楚这个代码块中唯一链接数组的构造需要改变
虽然我很难看到有什么变化。我仍在学习 d3.js,我的主要目的是将其应用于流程管理
任何指针都会有所帮助
javascript - D3 中的非分层(组之间没有间隙)捆绑布局
我正在尝试使用 D3 进行捆绑布局。但是,我想让它成为非分层的(或伪非分层的),以便边缘节点之间没有间隙。希望下面的图片可以作为我想要删除的空白的一个很好的例子(参见不同颜色文本之间的图片顶部)。
我试图用两种方法来解决这个问题:用泛型类型替换区分节点类型的类型,以及用作者的名字替换节点类型(从而使所有节点成为不同的类型,强制等间距)。这些尝试中的前者类似于针对该问题提出的建议。
但是,当我运行该线路时
我不可避免地收到错误“未捕获的类型错误:无法读取未定义的属性‘父’。” 如何在此数据上强制使用通用根,以便我的代码正常工作?
我为包含的图表生成代码结构的代码如下。我上面提出的两个解决方案在“包层次结构”函数中被注释掉了。请注意,它源自Bostock 的分层边缘捆绑样本。
javascript - 如何实现可变张力功能,D3 分层边缘捆绑?
我正在关注分层边缘捆绑的 d3 示例 - http://mbostock.github.io/d3/talk/20111116/bundle.html
我只感兴趣的是,如何在以下示例之上以最简单的方式将张力功能合并到上述示例中(其代码在此处):
我已经研究了@第一个链接的代码,但无法确定代码的哪些部分属于所需的功能。@第二个链接但是,我知道可能涉及/更改了以下代码。请指导我。
php - 分层边缘捆绑或径向收敛图
我希望像示例@ https://gist.github.com/mbostock/1044242一样可视化数据。
但是,我想从 SQL DB 中提取的值中这样做。该数据库目前保存与奥运会相关的样本数据,来自http://msftdbprodsamples.codeplex.com/releases/view/97636。里面有4张桌子。为了举例说明,表“奖章获得者”的行与表“运动”和“纪律”相关。
我知道我必须编写一个 PHP 脚本来格式化 JSON 中的数据,以便 d3.js 通过 Eclipse 读取,这不会在上面的链接中产生任何接近“readme-flare-imports.json”的内容。请查看我在以下方面的尝试(我知道这远远不能接受)
试图:
我的问题是:-参考上面的链接和我的尝试,我该如何更改代码以正确显示“sample_Olympics.json”?我不确定数据库中是否涉及任何层次结构,但层次边缘捆绑是我在径向收敛图旁边能找到的最接近的。
javascript - svg线的d3过渡效果位置与束插值
我使用以下代码绘制弯曲线:
......
(链接包含路径元素)
但是如果我改变了线条的位置,而不是平滑地移动到新的位置,线条会立即跳到新的位置。
定义路径外观的“d”XML 代码非常复杂,因为它是由捆绑插值生成的。
因此,我怀疑 d3 无法自行计算过渡,我想知道是否有解决此问题的已知方法?
javascript - 如果没有明确声明的根,您如何实现边缘捆绑?
我目前正在尝试为包含国家及其贸易伙伴的 .json 文件实施边缘捆绑。但是,我无法理解如何从我目前拥有的数据中创建层次结构,就像 Mike Bostock 在这里所做的那样:
这是我的数据文件的一个片段: