错误:<path>属性的值无效d =&#34; MNaN,NaNA5,5 0 1,1 NaN,NaNL0,0Z&#34; </path>

时间:2015-01-11 14:05:43

标签: javascript d3.js dimple.js

我尝试使用凹坑库制作饼图,它适用于所有图表类型,如线条,气泡和条形图但是当我尝试使用饼图时出现以下错误

    Error: Invalid value for <path> attribute d="MNaN,NaNA5,5 0 1,1 NaN,NaNL0,0Z" 

这是代码

   <script type="text/javascript">
      var svg = dimple.newSvg("#chartContainer", 590, 400);
           var array1=[10,20,30,40,50];
           var array2=[600,300,400,200,100];
           var data = new Array();
                  for (var i = 0; i < array1.length; ++i) {
                      data.push({ x : array2[i], y: array1[i]});
                }
           var myChart = new dimple.chart(svg, data);
               myChart.setBounds(60, 30, 510, 305)
               var x = myChart.addCategoryAxis("x", "x");
               myChart.addMeasureAxis("y", "y");
               myChart.addSeries(null, dimple.plot.pie);
               myChart.draw();
     </script>

有人可以帮我吗?

1 个答案:

答案 0 :(得分:0)

Dimple在饼图上的文档不是很好。从我可以从中得出的例子来看,饼图的处理方式有所不同。

  1. 要求测量的位置轴“p”。
  2. adding the series时需要categoryField
  3. 因此修复您的示例代码,它变为:

    var svg = dimple.newSvg("#chartContainer", 590, 400);
    var array1 = [10, 20, 30, 40, 50];
    var array2 = [600, 300, 400, 200, 100];
    var data = new Array();
    for (var i = 0; i < array1.length; ++i) {
      data.push({
        x: array2[i],
        y: array1[i]
      });
    }
    var myChart = new dimple.chart(svg, data);
    myChart.setBounds(60, 30, 510, 305)
    //var x = myChart.addCategoryAxis("x", "x");
    //myChart.addMeasureAxis("y", "y");
    myChart.addMeasureAxis("p", "x");
    myChart.addSeries("y", dimple.plot.pie);
    myChart.draw();
    

    示例here