Javascript 数据未从d3图表的json绑定

Javascript 数据未从d3图表的json绑定,javascript,d3.js,Javascript,D3.js,嗨,我在用D3图表 我使用的是d3图表: 在此图表中,所有数据都是从变量读取的。我想从json文件中读取数据 我已经完成了一半的工作。我也做了同样的工作来完成另一半的工作,但它不起作用 饼图是从json读取的数据。但条形图不是从json读取数据 在这里,我创建了Plunker,请检查并给出一些解决方案。 这里我试图读取的数据不是从json读取的 我希望运行此图表与此示例相同: 我试过这样做 谢谢,您使用了错误的d3.json回调签名。回调的第一个参数是发生的错误,如果没有发生错误,则为null

嗨,我在用D3图表

我使用的是d3图表:

在此图表中,所有数据都是从变量读取的。我想从json文件中读取数据

我已经完成了一半的工作。我也做了同样的工作来完成另一半的工作,但它不起作用

饼图是从json读取的数据。但条形图不是从json读取数据

在这里,我创建了Plunker,请检查并给出一些解决方案。

这里我试图读取的数据不是从json读取的

我希望运行此图表与此示例相同:

我试过这样做 谢谢,

您使用了错误的d3.json回调签名。回调的第一个参数是发生的错误,如果没有发生错误,则为null,第二个参数是返回的数据。因此,您应该使用以下方法:

d3.json("data1.json", function(error, data){
  if(error) {
    // handle error
  } else {
    // work with the data array
  }
}
下面的代码片段演示如何从外部JSON存储加载数据集。加载数据后,数据将传递给绘制上述饼图的dsPieChart函数

d3.选择窗口。打开“加载”功能{ //从外部JSON源加载数据 d3.json'https://api.myjson.com/bins/1hewit,functionerror,json{ 如果错误{ 抛出新错误“出现错误”; }否则{ dsPieChartjson; } }; }; //格式选项 var formatAsPercentage=d3.format%, formatAsPercentage1Dec=d3.format.1%, formatAsInteger=d3.format,, fsec=d3.时间格式%S, fmin=d3.时间格式%M, fhou=d3.时间格式%H, fwee=d3。时间格式%a, fdat=d3。时间格式为%d, fmon=d3。时间格式%b; //饼图绘制 函数dsPieChartdataset{ 可变宽度=400, 高度=400, outerRadius=Math.minwidth,height/2, 内半径=外半径*.999, 内半径最终=外半径*.5, 内半径FINAL3=外半径*.45, 颜色=d3.scaleOrdinald3.SchemeCategory 20; var vis=d3.1图表 .appendsvg:svg .数据[数据集] .宽度,宽度 .身高,身高 .svg:g .attrtransform,translate+outerRadius+,+outerRadius+; var arc=d3.arc .outerradius outerradius.innerradiusinerradius; var arcFinal=d3.arc.InnerRadiusinerradiusFinal.outerRadiusouterRadius; var arcFinal3=d3.arc.InnerRadiusinerradiusFinal3.outerRadiusouterRadius; 变量pie=d3.pie .价值函数{ 返回d.measure; }; var arcs=vis.selectAllg.slice .数据派 进来 .svg:g .attr类,切片 .onmouseover,mouseover .onmouseout,mouseout .onclick,up; arcs.appendsvg:path .attrfill,functionad,i{ 返回颜色i; } .attrd,arc .附录:标题 .textfunctiond{ 返回d.data.category+:+formatAsPercentated.data.measure; }; d3.selectAllg.slice.selectAllpath.transition .持续时间750 .10 .attrd,arcFinal; arcs.FilterFunction{ 返回d.endAngle-d.startAngle>.2; } .appendsvg:文本 .attrdy,.35em .attr文本锚定,中间 .attr转换,函数{ 返回translate+arcFinal.centroidd+rotate+angled+; } .textfunctiond{ 返回d.data.category; }; 函数角度{ 变量a=d.startAngle+d.endAngle*90/Math.PI-90; 返回a>90°a-180:a; } vis.appendsvg:文本 .attrdy,.35em .attr文本锚定,中间 .2012年收入份额 .级别、头衔; 功能鼠标盖{ d3.selectthis.selectpath.transition .持续时间750 .attrd,arcFinal3; } 功能鼠标器{ d3.selectthis.selectpath.transition .持续时间750 .attrd,arcFinal; } 函数upd,i{ updateBarChartd.data.category,colori; updateLineChartd.data.category,colori; } } 皮查特{ 位置:绝对位置; 顶部:10px; 左:10px; 宽度:400px; 高度:400px; } .切片{ 字号:12号; 字体系列:Verdana; 填充物:白色; 字体大小:粗体; } .头衔{ 字体系列:Verdana; 字体大小:15px; }
投票被否决的原因是什么?可运行的代码段工作正常!
d3.json("data1.json", function(error, data){
  if(error) {
    // handle error
  } else {
    // work with the data array
  }
}