d3(数据可视化v4)d3.csv回调函数里生成的数据怎么保存进全局变量啊

bobaonemimimii 2017-06-24 12:00:46
var flag=1;
d3.csv("jzw1.csv",function (error,data2) {
if (error) {
console.log(error);
} else {//取出数字和类别
console.log(data2);
for (var i = 0; i < data2.length; i++) {
monthname.push(data2[i].监测时间);
monthdataCu.push(parseFloat(data2[i].铜));
monthdataPb.push(parseFloat(data2[i].铅));//在这里存数组
mdGe.push(parseFloat(data2[i].镉));//在这里存数组

}
console.log(mdGe);
var ymax2 = d3.max(mdGe, function (d) {
return d;
});//记住取最大值的方式
var yaver2 = d3.mean(mdGe);
console.log(yaver2);
flag = 1.7*yaver2;
console.log(flag)//里面
}
});
console.log(flag)//外面

代码如上,从控制台里看里面那个flag的值是结合数据求出来的值,可是外面的已经变回1了

同理我想把这个data,csv函数读出来的data这个对象数组保存在全局变量里应该怎么弄,谁告诉我一下啊啊啊啊,感谢大佬!!
看的教程里说用:
var dataset;

d3.csv("data.csv",funtion(data){
{
dataset= data;
}

就可以,可是我试了一下根本不行啊,并且我觉得不行的原因和上面是一样的,求解决办法,真的非常感谢!
...全文
325 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
qq_41474015 2019-04-22
  • 打赏
  • 举报
回复
请问你的for循环那样使用没有问题吗?我在用的时候为什么i<csvdata.length报错啊。最后的csvdata应该是数组才对啊,为什么取不到.length???

87,993

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧