gpt4 book ai didi

javascript - 如何使用 D3 访问对象数组?

转载 作者:数据小太阳 更新时间:2023-10-29 04:16:03 26 4
gpt4 key购买 nike

我有一个 D3 图表,我试图在其中解析内联 JSON 格式的数组,而不是从外部加载数据。

而不是做这样的事情:

d3.json("data/tsx.json", function (error, data) {
data.forEach(function (d) {
d.dateOrig = d.date;
d.date = parseDate(d.date);
d.close = +d.close;
});

我只想像这样解析内联 JSON 格式的数组:

var data = [
{"date":"1-May-13","close":58.13},
{"date":"30-Apr-13","close":53.98},
{"date":"27-Apr-13","close":67.00},
{"date":"26-Apr-13","close":89.70},
{"date":"25-Apr-13","close":99.00},
{"date":"24-Apr-13","close":130.28},
{"date":"23-Apr-13","close":166.70},
{"date":"20-Apr-13","close":234.98},
{"date":"19-Apr-13","close":345.44},
{"date":"18-Apr-13","close":443.34},
];

data.forEach(function(d) {
d.date = parseDate(d.date);
d.close = +d.close;

但是,如果使用我在上述第一种方法中使用的相同代码,则无法正常工作。

我创建了一个可以正常工作的 Fiddle,但我可以看到我对数组的解析有误,并且我的图表元素被创建了多次(次数与数组的长度相同)。当我从外部加载数据时,不会发生这种情况。

请参阅此 Fiddle 中从第 35 行开始的评论。

http://jsfiddle.net/Critter/Hc7zD/5/

如何重写代码以正确解析 JSON 数组?我难住了!非常感谢!

最佳答案

这似乎是您代码中的错字:

在第 64 行左右,我想你想要:

data.forEach(function(d) {
d.date = parseDate(d.date);
d.close = +d.close;
}
);

变化是在此处终止 forEach,而不是封装其余代码的 forEach block 。

然后,删除尾随的");"在文件末尾,我觉得很合适。

关于javascript - 如何使用 D3 访问对象数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18753196/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com