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 .on('mouseover', ...) 工作

    我正在学习 D3 并尝试通过将鼠标悬停在 SVG 圆圈上来在散点图上显示数据信息 我从 csv 文件中获取数据 数据位于太阳系 包含行星名称 质量和半径 并且所有圆圈都正确显示 但是当我尝试在鼠标悬停时 console log 数据信息 例
  • R/d3heatmap/shiny - 有没有办法在 d3 工具提示中嵌入图像?

    我想在滚动单元格时在 d3 工具提示中嵌入图像 而不是默认的行 列 值数据 library shiny library d3heatmap ui lt shinyUI fluidPage titlePanel Old Faithful Ge
  • 分层边缘捆绑:添加父组标签

    我对 HTML 和 JavaScript 还很陌生 我面临着著名的分层边缘捆绑可用here https bl ocks org mbostock 7607999 由 D3 js 库生成 My goal is to add a semi ci
  • d3.forcesimulation() 链接距离

    我在堆栈上查看了不同的链接距离 似乎为了改变链接距离 您需要实现一个函数 然后传递它来动态分配链接距离 如下所示 function linkDistance d return d distance 然后我认为我可以传递给 svg 但返回函数
  • d3.js 中拖动后(有时)单击事件未触发

    观察到的行为 我正在使用 d3 js 并且我想根据以下情况更新一些数据drag https github com mbostock d3 wiki Drag Behavior wiki on事件 并重绘事件之后的所有内容dragend ht
  • d3 地理投影从正交到 X 的过渡

    我正在开发一个教育地图项目 其中显示不同的地图投影 我想在选择不同投影之间实现变形过渡 我找到了一个很好的例子来实现它 并且我没有遇到太多的麻烦来重新创建它 不幸的是 我还需要裁剪投影的功能 这与目标状态完美配合 但在改变投影时则不然 当选
  • 如何使用 d3.v4 中的 JSON 数据创建树布局 - 不使用 stratify()

    我正在尝试将一些 d3 代码从 v3 更新到版本 4 我有一个使用 JSON 数据的树形图 d3 v4 示例展示了如何使用 stratify 将表格数据 例如flare csv 转换为分层数据https bl ocks org mbosto
  • D3:如何在Groups of Force布局节点上绘制多个凸包?

    我试图在力布局中的所有组上绘制凸包 但我只画出了一半的凸包 当 D3 尝试绘制其余的船体时 控制台返回错误 元素尚未创建 然而 当我检查控制台中的 groups 变量时 所有组数据都在那里 x y 数据都设置得很好 见下图 我什至尝试在ti
  • 使用 D3.js 解析时间序列数据

    是时候寻求帮助了 我已经学习 D3 js 几个星期了 我才开始觉得我理解了其中的 10 哈哈哈 我正在尝试生成一个非常简单的线图 只要数据非常简单 我就可以做到这一点 但我的原始数据源具有 UTC 时间戳和实数 小数 这会导致任何超出简单范
  • 将元素添加到 D3 圆包节点

    我正在尝试制作一个可缩放的圆形包装图 我希望每个子圆圈包含一个较小的图表 该图表始终具有相同的结构 即 4 列 只有条形的高度会改变 我尝试添加一个简单的rect到目前为止我的图表 但矩形没有添加到圆圈中并且是静态的 JS var marg
  • D3.js分组条形图

    I am making a bar chart using D3 js like this source statcan gc ca http www statcan gc ca pub 12 593 x 2007001 figures f
  • 如何在没有 DOM 的情况下将 javascript 作为 node.js 脚本运行?

    https github com jasondavies d3 cloud https github com jasondavies d3 cloud是一个使用 D3 库的 javascript 文字云 这是一个交互式演示 http www
  • 在 D3 中在外部加载的 svg 图形上绘图

    我已经从 svg 文件加载了外部图形 我想尝试在其上绘图 但不知道如何操作 我的简单 d3 代码在这里
  • 反转比例函数

    这对我来说很有趣 看下面的D3代码 var scale d3 scale linear domain 100 500 range 10 350 scale 100 Returns 10 scale 300 Returns 180 scale
  • D3 向对象添加超链接?

    我正在尝试制作 D3 图 它将代表我网站的菜单 我尝试按照此处的其他指南添加超链接 但它们都不起作用 每个对象都会有一个不同的 URL 指向 主页 关于 联系方式等 如果添加超链接 我可以拖动对象吗 这意味着如果我按住单击 如果我单击该对象
  • 使圆圈与 d3.js 上的多线匹配相同的颜色过滤?

    我有一个多线图 当按每种水果过滤时会更新 每条线条颜色对应不同的销售年份 在 的帮助下Shashank https stackoverflow com users 5569282 shashank 每个数据点线上的圆圈已添加到组中 而不是直
  • D3 将现有 SVG 字符串(或元素)追加(插入)到 DIV

    我到处寻找这个问题的答案 并找到了一些我认为可能有用的资源 但最终没有让我找到答案 这里有一些 外部SVG http bl ocks org mbostock 1014829 嵌入SVG https stackoverflow com qu
  • D3 围绕一组圆圈绘制船体

    我想用 d3 围绕分组力定向图构建绘制一个船体 我已经用圆圈构建了图表 但我现在想将圆的交点与路径 船体 连接起来 如果不连接交叉点 画一个围绕这组圆的船体就足够了 我尝试过具有凸包的力导向布局 http bl ocks org 29205
  • 增加 D3 图中边缘的可点击区域

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

    有没有可能的方法来更改数据上方标签的位置c3条形图 在官方文档中 很好地解释了如何通过操作 y 和 x 整数来更改 x 和 y 测量轴上标签的位置 但我没有找到任何数据标签 我试图用简单的方式指出它d3其上c3是基于但是console lo

随机推荐

  • 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绘制的图形相当整齐 但它缺乏一种简单的方法来添加交互性 例如折叠 滚动 缩