无法读取属性" getPropertyValue"在xChart中为null

时间:2014-08-11 21:28:27

标签: javascript svg d3.js charts xcharts

我正在尝试使用基于d3的图表库xChart在我的webapp中创建图形模块。我只是使用xChart文档提供的示例数据,每次尝试创建图表时都会出现此错误:

Uncaught TypeError: Cannot read property 'getPropertyValue' of null 

错误发生在getComputedStyle方法中d3.js的第666行(lol)。

if (n < 2) return d3_window.getComputedStyle(this.node(), null).getPropertyValue(name);

我的JavaScript如下:

var data = {
    xScale: "ordinal",
    yScale: "linear",
    main: [
      {
        className: ".pizza",
        data: [
          {
            x: "Pepperoni",
            y: 4
          }, {
            x: "Cheese",
            y: 8
          }
        ]
      }, {
        className: ".pizza",
        data: [
          {
            x: "Pepperoni",
            y: 6
          }, {
            x: "Cheese",
            y: 5
          }
        ]
      }
    ]
  };
  var myChart = new xChart('bar', data, '#graph-figure');

我的HTML是

<figure id="graph-figure"></figure>

任何人都可以帮我解决这个问题吗?

1 个答案:

答案 0 :(得分:2)

你很有可能在dom准备好之前执行你的javascript。您可以将javascript包装在window.onload函数中...

window.onload = function(){
  // your code here
}

或者在结束<script>代码之前添加</body>或内联代码。