d3js 很好地过渡了带有添加点的线

2023-11-21

说我有一个path我创建了d3就像是:

line = d3.line()
    .curve(d3.curveLinear)
    .x(function(d) { return x(d.x);})
    .y(function(d) { return y(d.y); });

data = [{x: 0, y: 0}, {x: 5, y: 5}, {x:10, y:10}];

myLine = svg.append("path")
        .attr("fill", "none")
        .attr("stroke", "steelblue")
        .datum(data)
        .attr("d", line);

这形成了一条从 0 到 10 的漂亮对角线。现在,如果我更新数据以进行一些更改并添加一些点:

data = [{x: 1, y: 1}, {x:2, y:3}, {x: 6, y: 7}, {x:9, y:9}];

并更新我的线路

myLine.datum(data).transition().duration(1000).attr("d", line);

它提供了一个奇怪的过渡,它滑动现有路径以适应新路径的前三个点,并笨拙地将最后一个点添加到末尾。

同样,如果我将其更新为具有更少的点,它会缩短线条,然后将剩余部分滑过,而不是仅在其所在位置重新调整线条的形状。

我明白why这种情况发生了,但我想知道是否有办法创建更平滑的过渡。


你应该看看这个page和这个github

.attrTween('d', function () { 
    return d3.interpolatePath(line(data), line(data2)); 
});

看看这个fiddle

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

d3js 很好地过渡了带有添加点的线 的相关文章

  • 如何在 d3.scale.ordinal() 中指定域?

    var W 100 var H 200 var data v 4 v 8 v 15 v 16 v 23 v 42 var x d3 scale linear domain 0 max x range 0 W var y d3 scale o
  • 如何运行 D3 示例

    例如https observablehq com d3 zoomable treemap https observablehq com d3 zoomable treemap 如果将脚本片段粘贴到
  • 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.js 图表与 DC.js 集成

    我试图弄清楚如何轻松地将任何 D3 js 图表与 DC js 库集成 以便在所有图表之间使用交叉过滤功能 我也确实理解以前曾问过这种性质的问题 添加链接以供参考 DC js 监听图表组渲染 https stackoverflow com q
  • D3 v4 在同一元素上进行画笔和缩放(鼠标事件不冲突)

    我的目标是构建一个使用两者的 D3 v4 图表d3 zoom https github com d3 d3 zoom and d3 brush https github com d3 d3 brush一起 如下 当鼠标位于 x 轴上时 用户
  • d3力定向布局-链接距离优先

    在 d3 中使用力导向布局 如何使链接距离成为优先事项 同时仍然保持良好的图形布局 如果我指定动态链接距离 但保留默认费用 则我的图形距离会因费用函数而发生一些变形 并且不再是准确的距离 但是 如果我删除电荷 图表将如下所示 任何建议表示赞
  • 需要帮助绘制多元线之间的区域 - 而不是从轴到线

    我是 d3 js 的新手 我正在努力填充多元百分位数图中线条之间的区域 我不希望在最底线下方或最顶线上方填充任何区域 第一列始终位于图表的底部 第 5 个百分位 最后一列将始终位于图表的顶部 第 95 个百分位 我需要每条线之间单独的区域段
  • 如何将此数据编码为 JSON 中的父/子结构

    我正在使用 d3 js 将动物 有机体 家族 一次最多 4000 个 可视化为树形图 尽管数据源也可以是目录列表或命名空间对象列表 我的数据如下 json organisms name Hemiptera Miridae Kanakamir
  • nvd3 格式化日期始终返回 1970-01-01

    我正在尝试使用构建折线图nvd3 for d3js但我在 x 轴上使用日期域时遇到了一些问题 这是我的代码 data lineChart key key1 values x 2014 04 20 y 6 x 2014 04 13 y 5 x
  • 当以编程方式触发 d3.behavior.zoom 事件时,如何设置平移和缩放的初始值?

    下面示例中的方块是具有初始平移和比例设置的 SVG 组的一部分 单击正方形会启动缩放过渡 但过渡设置的初始值与我的默认值不同 这一点从过渡开始时的不和谐就可以明显看出 如何在以编程方式启动的缩放过渡上设置平移和缩放的初始值 var svg
  • 未捕获的类型错误:无法读取未定义的属性“albersUsa”

    以前可能有人问过这个问题 但我希望我能得到针对我遇到的问题的答案 我是 d3 的新手 我现在正在尝试绘制一个纬度 经度 当我成功完成第一个纬度 经度时 我将完成其余的工作 感谢专家的任何帮助 谢谢 尝试在特定区域绘制蜂窝基站 这是代码
  • D3.js - 更改鼠标悬停时元素的不透明度 IF 条件 = false

    我正在制作一个带有过滤器的交互式 D3 js 图表 当用户单击选定的复选框时 该过滤器会显示点 此外 在鼠标悬停事件上 所选点旁边将出现一个弹出窗口 其中包含一些信息 由于图表上的点数量相对较多 因此我选择在取消选中相应复选框时使相关点变得
  • 如何运行 Mike Bostock 的 D3 示例?

    我一直在尝试经营迈克博斯托克透视地球仪 http bl ocks org mbostock 6747043例如 但是如果您尝试在本地重现它 则对其 json 文件的引用是不正确的 问题来自于这行代码 d3 json mbostock raw
  • 使用什么比例仅在 d3 js 中的 x 轴上表示年份

    我一直在 D3 Js 中开发年份 x 轴 与收入 y 轴 的面积图 数据如下 localData Revenue 4 5 Year 2011 Revenue 5 5 Year 2010 Revenue 7 0 Year 2012 Reven
  • 如何从此 d3.js layout.tree 获取树祖先和树后代的列表?

    我正在尝试和修改this https bl ocks org mbostock 4339083d3 js 的示例 用于根据 JSON 树结构绘制树 这就是树的一部分开始时的样子 我正在尝试进行两个单独的修改 但我不知道该怎么做 当单击节点的
  • D3 js 链接在节点下面

    我创建了图形对象 稍后可以使用更多节点和链接来扩展图形对象 第一个创作看起来不错 然后 与add函数我添加了节点 4 和链接 as you can see above the link of between node 4 and 3 is
  • 如何进行多个 d3 窗口大小调整事件

    我有三个svg一页上的元素 每个元素都由 D3 陪伴 每个都有自己的页面调整大小逻辑 由我写的简单模块 https github com TimeMagazine d3 base让他们做出反应 问题在于 只有最后一个调整大小事件被触发 因为
  • 如何使用 d3.format 获取可本地化或可定制的 si 代码

    使用 SI 代码绘制图表正是我们想要的 我们的 y 轴值往往是较大的货币值 例如 10 411 504 201 20 缩写这个 至少在美国语言环境中 这应该转换为 10 4B 但是使用 d3 format 的 s 类型表示 SI 代码 这将
  • d3.js 强制布局是否允许动态 linkDistance?

    我使用力布局来表示有向未加权网络 我的灵感来自以下例子 http bl ocks org mbostock 1153292 http bl ocks org mbostock 1153292 我的问题是 在我的情况下 节点之间有更多的链接

随机推荐

  • 错误“找不到‘django.contrib.auth.views.login’的反向”[重复]

    这个问题在这里已经有答案了 我收到以下错误消息 但找不到修复它的方法 NoReverseMatch at login Reverse for not found is not a valid view function or pattern
  • SearchView 中的文本输入不显示

    几天前我注意到在我的SearchView没有出现 也许这个问题很早以前就开始了 我没有注意到它 但我知道当我第一次设置搜索功能时一切都运行良好 这是一个屏幕截图 我已经输入了文本 你可以看到它没有显示 我已经尝试过更改文本的颜色Search
  • 手电筒需要哪些权限?

    我用过
  • 在Sql Server中,如何将二进制字符串转换为二进制?

    我有一些表示二进制数据的字符串格式的数据 例如 0x0002 是否有一些函数或技巧可以将它们从文字字符串转换为二进制 也就是说 我希望 0x0002 变成 0x0002 而 SELECT CAST 0x0002 AS BINARY 20 显
  • 如何从内存中解码jpg图像?

    我可以通过 PIL Python OpenCV 等从磁盘读取 jpg 图像 通过一些内置函数 例如 在 OpenCV 的情况下 将其读取到 numpy 数组中arr cv2 imread filename 但是如何直接从内存中解码二进制格式
  • PHP:cURL 并跟踪所有重定向

    我正在寻找 cURL 一个 URL 并跟踪它所经过的每个单独的 URL 由于某种原因 如果不进行递归 cURL 调用 我就无法完成此任务 这并不理想 也许我错过了一些简单的选择 想法 url some url with redirects
  • 在 Python 中创建树形目录列表

    我正在尝试使用 python 列出目录中的目录和文件 递归地 rootdir file1 html subdir1 file2 html file3 html subdir2 file4 html 现在我可以很好地列出目录和文件 借用自he
  • 为什么我需要刷新 I/O 流才能获得正确的结果?

    为什么下面的代码不起作用 我的意思是 它在控制台输出上显示各种奇怪的字符 include
  • 使用ajax时UTF8编码不起作用

    我最近将一些页面更改为通过 ajax 显示 并且我对为什么 utf8 编码现在在框内显示问号而之前没有显示感到困惑 前面的例子 原始页面是index php 字符集被显式设置为 utf 8 并且位于 然后我用php查询数据库 这是原始的in
  • 如何从字符串名称渲染反应组件

    我想从它的字符串名称动态渲染一个反应组件 这是我所做的 但它不起作用 这可以做到吗 一个例子确实会有帮助 string name 是组件的名称 var MyComponent React createElement window strin
  • 带有 SWT.Browser 和 XULRunner 的 RCP

    我正在使用 SWT Browser 开发 RCP 应用程序 Windows SWT MOZILLA Browser browser new Browser parent SWT MOZILLA 它与旧的 XULRunner 3 6 23 和
  • 如何在CSS中按百分比定义不透明度?

    是否可以在 CSS 中按百分比 例如 30 定义 CSS 的不透明度 似乎不起作用 现在我只能按小数点进行 https css tricks com almanac properties o opacity test opacity 0 3
  • 对 std::basic_string 的未定义引用

    我正在编译我的项目并看到链接问题 g Wl z now Wl z relro pthread Wl z noexecstack fPIC Wl threads Wl thread count 4 B third party gold L W
  • log4net - FileAppender 在文件开头写入新条目

    是否可以在 log4net 中配置 FileAppender 以在日志文件的开头添加新条目 目前 它正在末尾添加条目 并且读取最新条目需要向下滚动整个日志 从头开始读会更舒服 我不知道该选项在 log4net 中是否可用 我不这么认为 但即
  • 为什么WPF中TextBox边框颜色坚持不改变?

    据我了解 我应该使用样式触发器来更新文本框聚焦时的边框颜色 然而 无论我做什么 它总是变成系统默认的蓝色 而不是我指定的黑色 有人有主意吗 代码如下
  • Objective-C/Cocoa:如何接受错误的服务器证书?

    Using NSURL请求 我正在尝试访问证书已过期的网站 当我发送请求时 我的连接 didFailWithError使用以下信息调用委托方法 1203 NSURLErrorDomain bad server certificate 我的搜
  • Ruby 'Range.last' 不会给出最后一个值。为什么?

    在 ruby Range 对象中使用三点表示法时 我得到以下结果 0 5 each n p n 0 1 2 3 4 当我使用 最后 方法时 我得到 0 5 last gt 5 我本来期望 4 这是一个错误吗 或者我对 Range 对象的概念
  • 未找到 MSBuild 目标包

    我想打包我的 VS2010 Web 应用程序项目 准备使用 msdeploy 进行部署 在开发机器上我可以使用以下方法来做到这一点 MSBuild exe C path to WebApp csproj target package 但在我
  • WPF 可以在没有 DirectX 的情况下运行吗?

    这听起来可能是一个愚蠢的问题 但是 如果没有支持 DirectX Direct3D 的显卡 驱动程序 WPF 是否会停止运行 或者只是运行速度变慢 我知道 WPF 基于 DirectX Direct3D 即使是简单的控件 但我找不到有关该主
  • d3js 很好地过渡了带有添加点的线

    说我有一个path我创建了d3就像是 line d3 line curve d3 curveLinear x function d return x d x y function d return y d y data x 0 y 0 x