我在 CSV 文件中存储了一长串日期。我已经成功地使用 d3.js 加载了这个数据集。现在我想向此数据集添加另一列,其中包含列表中每个日期的随机数。
我相信此数据集已作为对象数组加载。所以我正在使用下面的代码来尝试遍历数组。不过,我认为 push
方法是错误的方法,因为它涉及对象。
d3.csv('claims_cwy.csv', rowConverter, function(dataset) {
console.log(dataset);
for(var i=0; i<10; i++) {
var newNumber = Math.round(Math.random() * 10);
dataset[i].push(newNumber);
}
最佳答案
尽管这个问题有几个答案,但没有一个涉及惯用的 D3:
因为你已经有了一个 row conversion function ,使用该函数更改数据数组中的对象。只需将其添加到行函数(使用 d
作为第一个参数):
d.random = Math.random() * 10;
// ^----- or any other property name
这是一个演示:
var csv = `foo,bar,baz
12,34,21
14,42,27
17,35,17`;
var data = d3.csvParse(csv, rowConverter);
function rowConverter(d) {
d.random = Math.random() * 10;
return d;
}
console.log(data)
<script src="https://d3js.org/d3.v4.min.js"></script>
关于javascript - 将新数字“推”入对象数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48924325/