javascript - 使用 D3 .datum() 向元素添加属性

标签 javascript d3.js

我可以使用 .datum() 将单个属性添加到现有的一组 props 中吗? 这样它就不会用这个新属性覆盖所有内容,而是添加它。

我想它可能类似于 element.datum({'prop':1}) 但这个只是用这个单一属性替换整个数据集。

最佳答案

您可以获取对绑定(bind)数据的引用并以您喜欢的任何方式对其进行操作:

var b = d3.select("body");

// Create and bind data
b.datum({ "a": 123 });
console.log(b.datum());  // Object {a: 123}

// Retrieve and manipulate data
var obj = b.datum();     // Get a reference to the data bound
obj.a = 456;             // Modify
obj.b = "extension";     // Extend
console.log(b.datum());  // Object {a: 456, b: "extension"}
<script src="https://cdnjs.cloudflare.com/ajax/libs/d3/3.4.11/d3.min.js"></script>

关于javascript - 使用 D3 .datum() 向元素添加属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30504932/

相关文章:

javascript - 在map方法中获取数组键

javascript - 集成和渲染 react-swipe-cards

javascript - 避免 TypeScript 中的 float Promise。 void 与 .catch 什么时候?为什么?

javascript - 如何使用javascript获取表的td值

javascript - 未捕获的类型错误 : Cannot call method 'push' of undefined (d3 force layout)

javascript - 将 svg 附加到背景图像中

javascript - D3.v3 刷怪行为

javascript - 使用d3.js实现元素的过渡效果

javascript - 如何在highChartjs折线图中显示Y轴标签中的最后一个数据点值

javascript - 数据文件 D3 错误