d3.js 中的分层图

2023-12-28

我目前正在使用 Graphviz 来可视化控制流图。基本上,(可简化的)控制流图是一个 DAG 加上一些指向前一层中的节点的边。后面的边不应影响节点的放置。

现在,dot绘制的图形相当整齐,但它缺乏一种简单的方法来添加交互性(例如折叠、滚动、缩放),这对于分析非常大的图形来说是无价的。因此,我选择d3.js作为最成熟、功能最丰富的图形库。

我很确定有一种简单的绘制方法分层图 https://en.wikipedia.org/wiki/Layered_graph_drawing(就像dot)在 d3.js 中,但我似乎不认识它。我怎么做?如果这有帮助,我已经对我的 CFG 执行了支配者分析。


用于定向图绘制的 Dagre 库与渲染无关,但与 d3.js 集成良好:https://github.com/cpettitt/dagre https://github.com/cpettitt/dagre

这是使用 D3 渲染的演示:http://cpettitt.github.io/project/dagre-d3/latest/demo/interactive-demo.html http://cpettitt.github.io/project/dagre-d3/latest/demo/interactive-demo.html

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

d3.js 中的分层图 的相关文章

  • 增加 D3 图中边缘的可点击区域

    我有一个由 d3 制作的图 dagre d3 位于其顶部用于绘制有向图 这给出了我对渲染图表的期望 要编辑构建图表的数据 每个元素都是可单击的 这对于使用标签渲染边缘的情况来说很好 但它们并不总是有标签 导致未标记的边缘很难单击进行编辑 分
  • D3更新circle-pack数据新节点与现有节点重叠

    我正在关注一般更新模式 http bl ocks org mbostock 3808234但在分层方面存在问题 使用圆形包装布局 我pack新数据 update enter and exit圆形元素 然而 当新元素enter 它们重叠upd
  • 平移/缩放顺序尺度?

    我正在使用 d3 渲染简化的甘特图 并使用 d3 behavior zoom 进行平移和缩放 x 刻度是一个时间刻度 稍微修改为列中的中心日历日等 并且工作得很好 但是我在决定如何缩放 平移 y 刻度时遇到问题 其域是通常会出现的任务列表图
  • dc js 复合条形图 折线图

    我有一个 dc js 条形图 如下所示这个叉形小提琴 http jsfiddle net 89218vf1 3 此条形图将加载预定义的过滤器 例如本例中的 25 35 现在 我需要显示一个与条形图复合的折线图 突出显示带有高低线的过滤数据
  • 获取现有 SVG 元素的属性并使用 d3.js 绑定为数据

    我有一个现有的 svg 元素 例如
  • 根据子节点数量动态调整 d3 树布局的大小

    从这个例子来看http mbostock github com d3 talk 20111018 tree html http mbostock github com d3 talk 20111018 tree html我已经建立了一个d3
  • D3 js 链接在节点下面

    我创建了图形对象 稍后可以使用更多节点和链接来扩展图形对象 第一个创作看起来不错 然后 与add函数我添加了节点 4 和链接 as you can see above the link of between node 4 and 3 is
  • Javascript 将对象推送为克隆

    我将 d3 用于交互式网络应用程序 我需要绑定的数据在交互过程中发生变化 并且由 JSON 变量中的一些选定对象组成 为此 我在 JSON 变量上使用了映射 并进行了一些查询来选择适当的对象 对象被推送到列表中 并且该列表被绑定为新数据 我
  • 在 d3.js 中换行长文本

    我想将长文本元素换行为宽度 这里的例子取自博斯托克的wrap功能 http bl ocks org mbostock 7555321 但似乎有两个问题 首先 wrap的结果没有继承元素的x值 文本左移 其次它绕在同一条线上 并且lineHe
  • D3 删除千位的逗号分隔符

    我有一个包含 3 列的 json 其中一列是 年份 该列仅包含年份 没有日期 当我在 x 轴上绘制它时 年份会以逗号分隔符表示数千 所以在 json 中 日期的格式是 Year 1990 在 x 轴上 结果是 1 990 我一直在试图弄清楚
  • 设置 D3 力定向图

    致尊敬的读者 我对 javascript 相当陌生 我也遇到过这个问题 我正在尝试实现这个力导向图的修改版本 http mbostock github com d3 ex force html http mbostock github co
  • D3.js 从 file:/// 加载本地数据文件

    我知道D3 js支持使用XHR和JSONP加载数据文件requests https github com mbostock d3 wiki Requests 但就我而言 我将通过从文件系统双击 html 文件来运行它们 这将像file fo
  • 根据 D3 中的属性值对对象进行排序

    我有一系列在 D3 中使用的对象 例如 var cities city London country United Kingdom index 280 city Geneva country Switzerland index 259 ci
  • 时间序列折线图与轴不同步

    本实验基于这个d3官方例子 http bost ocks org mike path 我想要实现的是可视化时间序列数据的最后 x 分钟 我有这个代码的副本jsfiddle http jsfiddle net 225dC 3 单击以添加新数据
  • d3.js:tickformat - 添加 % 符号而不乘以 100

    我的数据有百分比 例如 10 1 3 2 5 4 d3 format 0f 会给我 10 3 5 d3 format 0 会给我 1010 320 540 乘以 100 如何得到 10 3 5 我不知道在哪里添加 到第一种情况 或者在第二种
  • 如何使用 d3.js 沿 GeoJSON 路径对对象进行动画处理?

    我正在使用 D3 js 从 GeoJSON 文件生成并渲染路径 效果很好 但现在我想沿着该路径为对象设置动画 我知道如何使用 D3 和标准 SVG 来做到这一点 创建过渡并设置其持续时间 对于过渡的每一帧 使用 Complete 查找沿路径
  • 如何使用 dc.js 或 d3.js 为行图添加轴标签

    对于条形图和堆积图 我们可以使用 xAxisLabel X Axis Label and yAxisLabel Y Axis Label 为各个轴添加标签的函数 但 有没有办法为行图添加轴标签 尝试这样的事情 dc renderAll fu
  • SVG 文本在 IE 中消失,直到我单击它

    我在 Internet Explorer Edge 以 Win7 上的为准 中遇到与 SVG 创建和操作相关的问题 在我正在开发的应用程序中 我们使用 d3 生成 SVG 形式的图形 在 Chrome 和 Firefox 中 它们工作得很好
  • 需要帮助从数组中为国家/地区着色,保留其余默认颜色

    我需要一些帮助从我创建的数组中获取数据 然后仅对数组中存在的国家 地区进行着色 而不在数组中的其余国家 地区我希望保留为默认颜色 我正在使用 D3 来完成所有这些工作 并且我非常确定我可以通过 D3 实现我需要的目标 但不确定如何实现 我想
  • 如何在 React 组件中使用 CDN

    我正在尝试使用基于 D3 构建的库 称为 Greuler 来动态渲染图形 它的 npm 包似乎已损坏 当我改用 Greuler CDN 时 index html 中的测试图终于起作用了 但是 我正在开发一个 React 应用程序 并且我希望

随机推荐

  • XNA:获取资源数组/列表?

    我目前正在使用 XNA 学校项目 开发游戏 我想知道是否有一种方法可以在运行时列出所有资源 因为我的资源文件名为 Name 并且我想在第一个时对它们进行索引3 位数字 这样的事情会有帮助吗 public static Dictionary
  • 打破 C++ 中的嵌套循环[重复]

    这个问题在这里已经有答案了 假设我们有以下代码 当break时 我们想要跳出内部和外部循环 而不仅仅是内部循环 并直接进入blablabla 我们如何在 C 中做到这一点 for int i 0 i lt m i for int j 0 j
  • Swift 3 - 可扩展的表格视图单元格,第一个单元格已扩展

    我正在使用 Swift 3 我已按照本教程获取它 以便我可以点击表格视图单元格 该单元格将展开以显示更多信息 我的问题是 如何做到这一点 以便在视图加载时第一个单元格展开 即用户不必单击即可看到该单元格展开 但所有其他行为保持不变 例如 如
  • Spring Oauth2 授权服务器

    我设置如下 Spring 配置 EnableAuthorizationServer EnableWebSecurity Configuration public class Oauth2Provider extends WebSecurit
  • Rest WebService参数化负载测试工具

    我有一组java中的rest webservices 我需要一个允许使用参数对它们进行负载测试的工具 我使用Windows操作系统和Java或 net 我需要使用不同的参数同时调用 1 个 Web 服务 100 次 只需调用作为 Web 服
  • 从动态创建的 RadioButtonList 中检索值

    我的代码隐藏 c 文件使用 while 循环为数据库中任意给定数量的问题动态声明 RadioButtonLists 我在 for 循环中向每个 tmpRBL 添加项目 我将每个 RadioButtonList 注册到一个子面板 该子面板是我
  • 在编写CodeRunner文档时如何包含非框架库?

    我一直在使用代码运行者 http krillapps com coderunner 收集开发时经常使用但不一定属于项目代码库的小块代码 它是一个很棒的 Objective C 和 Cocoa 总结工具 因为我可以包含安装在我的机器上的框架
  • 如何以编程方式设置按钮的权重

    我需要通过 Java 代码为我的 Android 应用程序实现 Dialog 所以我不能使用 XML 我有根LinearLayout在我实现范围搜索栏的地方 然后我有另一个LinearLayout在根布局下 水平方向 我想在同一行中添加两个
  • 有没有办法在 After 方法中使用 ITestResult 获取完整的错误/异常?

    Test priority 16 enabled true public void C2410859 FilterAlertsByCard throws IOException InterruptedException ATUTestRec
  • Javascript JsTestDriver Jasmine & Jasmine-jquery

    我有很多 Jasmine 单元测试 它们正在为 Javascript 代码运行单元测试 他们使用 Jasmine jquery 插件来进行 DOM 操作 他们使用 loadFixture 来加载 HTML 的固定装置 我尝试使用 JsTes
  • WPF 与 Windows 窗体 [重复]

    这个问题在这里已经有答案了 复制 WPF 与 WinForms 或丰富的 UI 与稳定的应用程序 您如何看待 Windows 窗体平台的未来 https stackoverflow com questions 442667 wpf vs w
  • 如何在 Python 3 中停止执行 exec 命令?

    我有以下代码 code print foo if True return print bar exec code print This should still be executed 如果我运行它 我会得到 Traceback most
  • Angular 2——模拟——没有 HTTP 提供者

    Angular 2 0 0 Ionic 2 RC0 Npm 3 10 8 Node v4 5 0 Karma 1 3 0 Jasmine 2 5 2 我正在尝试使用 Karma Jasmine 测试我的应用程序 现在我已经遵循了一些指南 我
  • EC2 网络错误:连接超时

    我创建了一个 Linux 的 EC2 微型实例并启动了它 创建了一个密钥对以及该视频中指定的所有开始内容 http www youtube com watch v hJRSti6DsJg http www youtube com watch
  • java.lang.NoSuchMethodError: org.springframework.boot.builder.SpringApplicationBuilder

    我正在学习 springboot 和微服务 我已经创建了 3 个服务 并且都运行良好 现在我已经创建了发现服务器 使用 start spring io 添加 Eureka Server 作为依赖项 我的pom xml如下
  • 如何获取 wav 文件中的频率列表

    我正在尝试解码一些音频 这些音频基本上是两个频率 0 为 200hz 1 为 800hz 可以直接转换为二进制 音频样本 https i stack imgur com BPa30 jpg 此示例翻译为 1001011 第三个频率为 160
  • 将 asp.net 5 MVC 6 与 Identity 和 EF 6 结合使用的示例

    我正在使用 asp net 5 和 MVC 6 设置一个新项目 但由于 EF 7 中缺少功能 我想使用 Entity Framework 6 我设置了 EF 6 1 3 并且可以正常工作 Identity 3 0 依赖于 EF 7 因此我已
  • VisualVM 中加载的类

    我的应用程序的堆内存出现问题 我尝试使用 VisualVM 来查找内存泄漏 有件事我无法理解 在 采样器 选项卡中 当我按下 内存 按钮时 我会看到数千个具有实例的类 如果我在 Profiler 选项卡中执行相同的操作 我会看到更少的类 这
  • 用限制分割字符串,其中最后一个字符串包含余数

    例如如果我运行这个 JavaScript var str hello world there var parts str split 2 var p1 parts 0 var p2 parts 1 最后 p1 包含 hello p2 包含
  • d3.js 中的分层图

    我目前正在使用 Graphviz 来可视化控制流图 基本上 可简化的 控制流图是一个 DAG 加上一些指向前一层中的节点的边 后面的边不应影响节点的放置 现在 dot绘制的图形相当整齐 但它缺乏一种简单的方法来添加交互性 例如折叠 滚动 缩