受约束的 d3.js 强制显示

2023-11-21

我想用力布局做一些不寻常的事情(用于可视化图表)。星座和所有这些看起来都很有趣,但对于时间序列数据来说,它并没有那么有用。我希望能够通过某个轴来约束布局,例如,通过根据节点在数据集中出现的时间来布局节点,同时仍然保留可视化的“弹性”。使用 d3 可以吗?


详细说明我的评论,是的,这是完全可能的。力布局实际上并不定位节点本身,它只是计算位置。在处理程序中tick如果您通常提供负责定位的函数。在那里,您可以添加任意约束来限制节点的移动方式。

采取其中之一股票例子,您可以执行如下操作,将 x 坐标限制在目标位置的 +-10 范围内,并且 y 不受限制。

force.on("tick", function() {
  node.each(function(d) {
    var intended = scale(d.value);
    d.x = d.px = Math.min(intended + 10, Math.max(intended - 10, d.px));
  });
  node.attr("cx", function(d) { return d.x; })
      .attr("cy", function(d) { return d.y; });
});

这是另一个example使用力布局来定位标签。在那里,x 位置被忽略(即常量),只有 y 受布局影响。

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

受约束的 d3.js 强制显示 的相关文章

  • 如何使用 Chart.js 在堆积条形图中显示内联值?

    我正在使用 Chart js 库在堆叠条形图中显示一些值 但我正在努力找出如何显示条形图中的值 即 现在 我有以下代码 可以在条形顶部显示数字 但我想知道如何在条形内部显示它们 var numberWithCommas function x
  • 使用不同颜色的 dc.js 显示原始(有条件)拉丝未拉丝交叉过滤器条

    假设我们有以下 crossfilter dc js 应用程序 虽然这很好 但用户在刷牙时会失去对人群的 参考 我想要图表x y z and a在刷其他图表时保留 基础 柱 也许是不同的颜色 如下所示 我相信这可能需要更新dc renderA
  • 在 python matplotlib 中格式化损坏的 y 轴

    我正在 matplotlib 中处理一个 相当复杂的 条形图 它包含来自多个源的摘要数据 每个源都沿 x 轴标记 y 轴上有一系列结果 许多结果都是异常值 我尝试使用断开的 y 轴来显示这些结果 而不会使用以下组合来扭曲整个图表这个方法 h
  • d3.js 和 Chart.js 之间的比较(仅适用于图表)[关闭]

    Closed 这个问题需要多问focused help closed questions 目前不接受答案 我在项目中多次使用过 Chart js 但从未使用过 d3 js 很多人说 d3 js 是最好的图表 javascript 框架 但没
  • 矩形相当于文本的文本锚点表示属性吗?

    是否有一个与文本的文本锚点表示属性等效的矩形 我希望能够从左侧 右侧或根据情况定位矩形 我知道这可以通过一些简单的计算来完成 但我只是想知道是否已经存在内置的东西 文本锚点演示属性上的链接 https developer mozilla o
  • 通过 Fabric.js 推送 D3.js 输出以支持 IE8?

    我正在评估Fabric js http fabricjs com 作为替代拉斐尔 js http raphaeljs com 用于创建与 IE8 兼容的交互式可视化 IE8 不支持 SVG 或画布 不幸的是 IE8 支持是不可协商的 Rap
  • 寻找一种重构 D3.js 风格的方法链接模式的方法

    在学习 D3 js 时 我遇到了博客文章 http bost ocks org mike chart 解释其可重用代码单元背后的主要设计模式 我复制了下面的相关代码 下面呈现的模式的方式正是在 D3 代码库和插件中使用的方式 example
  • Kamada 和 Kawai 图形布局算法? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 有人尝试过 Kamada Kawai 的 88 算法来绘制一般无向图吗 如果是这样 并且您知道其中的任
  • Visual Studio 项目的依赖关系图

    我目前正在将一个大型解决方案 约 70 个项目 从 VS 2005 NET 2 0 迁移到 VS 2008 NET 3 5 目前我有 VS 2008 NET 2 0 问题是我需要将项目一一移动到新的 NET 框架 确保没有 NET 2 0
  • D3:使用 d3-tile 缩放到边界框

    我已成功将 D3 矢量 地图分层到从 Mapbox 提取图块的 d3 tile 光栅 地图之上 手动缩放效果非常好 矢量和光栅都是同步的 我现在正在尝试实施迈克 博斯托克 缩放到边界框 https bl ocks org mbostock
  • 具有水平和垂直组合布局的可折叠树

    我正在尝试在 D3 中创建一个可折叠树 它结合了水平 第一级和第二级 和垂直 3 级 布局 这里有一个jsfiddle http jsfiddle net artemkolotilkin z7tb23Lo 到目前为止我所得到的 除了一件事之
  • D3js 多折线图 mouseOver

    我正在努力适应this http bl ocks org mbostock 3902569D3js 折线图示例 将鼠标悬停在我的多线图表上的使用情况 看起来d3 mouse this 0 on the mousemove函数生成以下错误 无
  • D3.js 中的点图

    我有兴趣创建一个Dot plot 每个数据值都有连续的点 但到目前为止我所管理的是为每个值创建一个点 更清楚地说 假设对于 array1 我希望第一个值创建 5 个圆圈 第二个值创建 4 个圆圈 依此类推 array1 5 4 2 0 3
  • .NET(或 MFC)的高速图形控件?

    我需要编写一个数字示波器类型的应用程序 有很多很棒的静态绘图控件 但我需要一些可以绘制每秒处理 4000 个样本的 16 条轨迹的东西 有人知道 NET 的高速图形控件吗 我什至会选择 MFC 因为它可以封装到 NET 控件中 谢谢您的帮助
  • 图表贡献者为空

    我在 github 上有几个项目 但其中一些项目的贡献者图是空的 即使我的 gitconfig 设置了名称和电子邮件 https github com jlengrand batchWaterMarking graphs contribut
  • Bellman-Ford 算法检测什么?负重还是负循环?

    如果给定一个图 现在我们要从源头计算最短路径 现在 如果一条边具有负权重 但在到达目的地时有边到后边返回到该边 我的意思是如果没有循环 那么我们就没有负循环 但是here http en wikipedia org wiki Bellman
  • 如何使用 D3 (或只是 javascript)将表单选项设置为“选择”

    有没有一种方法可以搜索选择表单元素中的所有选项 并将具有匹配值的选项指定为 已选择 var xStat G var statOptions Points PTS Goals G Assists A Penalty Minutes PIM c
  • 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
  • 分配函数后如何删除 onmouseout 事件?

    我有一个问题 我正在为 onmouseout 事件分配一个函数 但运行该事件后 我需要将其删除 将非常感谢您的帮助 这取决于你的代码 如果你用 d3 这样做 那么你可以说 在 onmouseout 事件函数中 element on mous
  • Bokeh 中单独的节点和边缘悬停工具?

    我正在尝试为 Bokeh 中的节点和边缘获取单独的悬停工具提示 但未能使其正常工作 有人可以指出我做错了什么吗 我相信代码应该如下所示 from bokeh io import show output notebook from bokeh

随机推荐

  • (function (classes, fdef, mtable) 中的错误:无法找到签名“spec_tbl_df”的函数“select”的继承方法

    我的项目中出现此错误代码 奇怪的是 我今天早些时候使用的这段代码运行得很好 然而 由于我安装了 R 的更新 我现在在运行它时收到此消息 df1 lt df gt select Month Longitude Latitude Type Er
  • Gradle 构建期间序言中不允许出现内容

    我尝试了不同的方法 但问题没有解决 我什至重新安装了 android studio 但仍然遇到同样的问题 Fatal Error annotations 26 1 1 pom 2 1 Content is not allowed in pr
  • Vue - 深度观察对象数组并计算变化?

    我有一个名为people包含如下对象 Before id 0 name Bob age 27 id 1 name Frank age 32 id 2 name Joe age 38 它可以改变 After id 0 name Bob age
  • 此双重检查锁定修复有什么问题?

    所以我现在看到很多文章声称在 C 上双重检查锁定 通常用于防止多个线程尝试初始化延迟创建的单例 已被破坏 正常的双重检查锁定代码如下所示 class singleton private singleton private construct
  • numpy 中 itertools.combinations 的 N 维版本

    我想实施itertools combinations对于 numpy 基于这次讨论 我有一个适用于一维输入的函数 def combs a r Return successive r length combinations of elemen
  • 有没有一种简单的方法可以在 Visual Studio 中编写 UTF-8 八位字节?

    我有一个问题 我需要在 C 源代码中的标准 char 类型上使用 UTF 8 编码的字符串 如下所示 char twochars xe6 x97 xa5 xd1 x88 通常 如果我想编写 UTF 8 字符 我需要使用如上所述的八位字节 V
  • 非规范化数据

    我使用以下 R 代码将数据标准化为最小值和最大值 normalize lt function x return x min x max x min x mydata lt as data frame lapply mydata normal
  • .NET 类及其源代码

    当我编写 C 或任何 NET 程序 时 我使用方法和类 我使用的大部分代码都是从 NET 类调用方法 是否可以 纯粹出于好奇 查看这些类的实际源代码 我知道 MSDN 有完整的类 它们的属性和方法的列表 但我想看看代码 是的 浏览 NET框
  • Django 按点赞数最高的顺序排序

    我正在尝试创建一个页面 人们可以在其中看到评分最高的文章 但存在一个问题 当我过滤另一用户也喜欢的文章的点赞数时 它会创建已投票文章的副本 我想要的是按照点赞数最高的顺序对博客的文章进行排序 模型 py class Article mode
  • 使用 Realm.io 存储货币值

    我开始在我正在编写的 Android 应用程序中使用 Realm io 在我的一个数据对象中 我需要存储货币值 以前 我在内部将该值存储为 BigDecimal 值 然后在移入和移出数据库时也将其转换为双精度值 我总是被告知 由于处理货币值
  • TCP套接字客户端通过nodejs上的代理

    我需要与 smtp 服务器建立 tcp 套接字连接 是否可以通过nodejs上的代理服务器连接 有可用的 npm 模块吗 我根本找不到任何东西 var net require net var HOST 127 0 0 1 var PORT
  • Python 3 中的 Concurrent.futures 与多重处理

    Python 3 2 推出并发期货 这似乎是旧线程的一些高级组合多重处理模块 与旧的多处理模块相比 将其用于 CPU 密集型任务有哪些优点和缺点 本文表明他们更容易合作 是这样吗 我不会打电话concurrent futures更 先进 这
  • iOS 8.1.3 - 企业分发 - 应用程序缺少应用程序标识符权利

    我在 iOS 8 1 3 上使用 Enterprise Distribution 时遇到很多问题 我设法修复了大部分出现此错误的安装 Ignore manifest download already have bundleID 有了这个答案
  • 使用 Travis 调用 GitHub API 构建 Tag

    我在 GitHub 存储库中创建了一个 TravisCI Hook 它在推送到存储库后自动运行构建 我想补充的是 如果构建成功 则会自动创建一个标签 我发现有一种方法可以使用 GitHub API 创建标签http developer gi
  • Eclipse 无法运行:\.metadata\.log 错误

    我正在做一个Android项目 重新启动计算机后 eclipse无法运行 它抛出 metadata log 文件错误 Go to metadata plugins org eclipse core resources你会找到 snap文件
  • 如何获取 SSL 证书以在 Firefox 上使用本地主机

    我正在努力让一个网站在本地 apache 网络服务器上运行 当我单击网站中的某些链接时遇到错误 Firefox 显示 无法连接 错误页面 并在 URL 前面附加 https 我首先认为这是浏览器配置问题 并尝试了此处建议的所有解决方案 Fi
  • 在 C# 中调用父表单中的方法并访问父表单中的 gui 元素的最佳实践

    我正在开发一个 win 表单应用程序 我发现自己经常需要访问父表单中的方法 例如来自另一个类的 Form1 无论是表单类还是只是一个类 我的 form 1 的构造函数中有一些初始值设定项 因此我无法创建 Form1 的实例 所以我无法访问
  • 为什么我可以省略调用链中后续的空条件运算符?

    考虑以下代码 IEnumerable
  • 获取jqGrid中所有行ID

    如何获取网格中每一行的 ID 甚至是跨页的 ID getDataIDs and getRowData只给出当前页面的 ID Thanks 仅当您有本地网格时才有可能 datatype local 或有loadonce true 在这种情况下
  • 受约束的 d3.js 强制显示

    我想用力布局做一些不寻常的事情 用于可视化图表 星座和所有这些看起来都很有趣 但对于时间序列数据来说 它并没有那么有用 我希望能够通过某个轴来约束布局 例如 通过根据节点在数据集中出现的时间来布局节点 同时仍然保留可视化的 弹性 使用 d3