【问题标题】:Google chart dont add row谷歌图表不添加行
【发布时间】:2021-02-25 12:28:06
【问题描述】:

由于某种原因,我无法添加任何行,尝试了很多可能性,但仍然没有成功。

代码如下:

google.charts.load('current', { 'packages': ['corechart'] });

var dataChart1 = new google.visualization.arrayToDataTable();

dataChart1.addColumn('string', 'Mês');
dataChart1.addColumn('number', 'Fora Ponta');
dataChart1.addColumn('number', 'Geração Solar');

dataChart1 = addRows([
    ['JAN', $('#janConsumo').val(), 300],
    ['FEV', $('#fevConsumo').val(), 350],
    ['MAR', $('#marConsumo').val(), 400],
    ['ABR', $('#abrConsumo').val(), 350],
    ['MAI', $('#maiConsumo').val(), 300],
    ['JUN', $('#junConsumo').val(), 350],
    ['JUL', $('#julConsumo').val(), 350],
    ['AGO', $('#agoConsumo').val(), 450],
    ['SET', $('#setConsumo').val(), 400],
    ['OUT', $('#outConsumo').val(), 350],
    ['NOV', $('#novConsumo').val(), 300],
    ['DEZ', $('#dezConsumo').val(), 250]
]);

var optionsChart1 = {
    titlePosition: 'none',
    legend: {
        position: "bottom"
    },
    seriesType: 'bars',
    series: { 1: { type: 'line' } },
    height: 300,
    width: 800,
    colors: ['orange', 'red']
};    

chart = new google.visualization.ComboChart(document.getElementById('chart_div'));
chart.draw(dataChart1, optionsChart1);

我有一个调用此代码的按钮。

我得到的错误:

Uncaught Error: Data for arrayToDataTable is not an array.

【问题讨论】:

    标签: javascript charts google-visualization


    【解决方案1】:

    第一,需要等到谷歌完成加载。
    您可以使用 load 语句返回的 promise,请参阅下面的 sn-p...

    google.charts.load('current', {
      packages: ['corechart']
    }).then(function () {
      var dataChart1 = new google.visualization.DataTable();
      dataChart1.addColumn('string', 'Mês');
      dataChart1.addColumn('number', 'Fora Ponta');
      dataChart1.addColumn('number', 'Geração Solar');
      dataChart1.addRows([
        ['JAN', $('#janConsumo').val(), 300],
        ['FEV', $('#fevConsumo').val(), 350],
        ['MAR', $('#marConsumo').val(), 400],
        ['ABR', $('#abrConsumo').val(), 350],
        ['MAI', $('#maiConsumo').val(), 300],
        ['JUN', $('#junConsumo').val(), 350],
        ['JUL', $('#julConsumo').val(), 350],
        ['AGO', $('#agoConsumo').val(), 450],
        ['SET', $('#setConsumo').val(), 400],
        ['OUT', $('#outConsumo').val(), 350],
        ['NOV', $('#novConsumo').val(), 300],
        ['DEZ', $('#dezConsumo').val(), 250]
      ]);
    
      var optionsChart1 = {
          titlePosition: 'none',
          legend: {
              position: "bottom"
          },
          seriesType: 'bars',
          series: { 1: { type: 'line' } },
          height: 300,
          width: 800,
          colors: ['orange', 'red']
      };
    
      chart = new google.visualization.ComboChart(document.getElementById('chart_div'));
      chart.draw(dataChart1, optionsChart1);
    });
    

    另外,在这种情况下,您需要使用 --> google.visualization.DataTable()

    不是 --> google.visualization.arrayToDataTable()

    查看arrayToDataTable了解更多详情...

    arrayToDataTable 期望在调用时传递数据。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-07-26
      • 1970-01-01
      • 1970-01-01
      • 2018-10-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多