0

我在 GXT 应用程序中使用 highcharts。GXT折叠面板有2个图表,一个是柱形图,一个是饼图,总是弹出异常显示

(TypeError): c is undefined
 fileName: http://127.0.0.1:8888/js/highcharts.js
 lineNumber: 118
 columnNumber: 0

为饼图注入json数据时(柱形图正常工作)。

有人可以帮我检查一下吗?

这是饼图的 JSON 数据

{
  "title" : {
    "text" : "pie chart"
  },
  "chart" : {
    "type" : "pie",
    "renderTo" : "container",
    "events" : {
      "load" : function(event) { this.id = 'chart320002'; $wnd.registerChart(this, true);}
    }
  },
  "series" : [ {
    "name" : "COUNT",
    "data" : [ [ "A", 37 ], [ "B", 23 ], [ "C", 21 ], [ "D", 21 ], [ "E", 23 ], [ "F", 19 ], [ "G", 20 ] ]
  } ],
  "exporting" : {
    "buttons" : {"printButton":{"enabled":false}},
    "type" : "img/png",
    "url" : "http://127.0.0.1:8888/export/hiChart"
  },
  "credits" : {
    "enabled" : false
  },
  "plotOptions" : {
    "pie" : {"dataLabels":{"formatter":function(){return this.point.name+': '+$wnd.Highcharts.numberFormat(this.percentage,2)+'%';}}}
  },
  "xAxis" : {
    "title" : {
      "text" : "Compliant"
    }
  },
  "yAxis" : {
    "title" : { }
  }
}
4

1 回答 1

2

更新:包括来自 Highcharts 网站的代码,即http://code.highcharts.com/highcharts.js。当我这样做时,我得到饼图!哇!

我使用不同的数据有同样的问题。所有基于线的图表都正确绘制。

我将您的 JSON 复制到 jsfiddle 并运行。然后我将你的 JSON 粘贴到我的项目中,同样的错误,“c 未定义”。

我能看到的唯一区别是,当我这样做时:

$('#chart').highcharts({...});

我得到 $(...).highcharts 不是一个函数,所以我正在使用:

var chart = Highcharts.Chart({...});

生成相同错误的饼图代码。

        var piechart = new Highcharts.Chart({
        chart: {
            borderColor: '#000000',
            borderWidth: 2,
            margin: 32,
            renderTo: 'piechart',
            type: chartType
        },
        series: [{
            name: 'Channel',
            data: [{
                name: 'Web',
                y: 75.6
            },{
                name: 'Mail',
                y: 24.4
            }]
        }],
        title: {
            text: 'Revenue'
        },
    });

它也在 jsfiddler 作为 $('#piechart').highcharts ... 运行,但不是我的网页。

于 2013-04-11T18:57:37.620 回答