Google折线图

时间:2019-03-14 17:37:43

标签: google-visualization

我目前正在从Google表格导入数据,以便编辑者可以进行简单的更新。

我遇到的问题是我无法使标签/注释出现在图形上。我希望它显示列名称,如果可能的话,最好显示名称和数据。

感谢您的帮助。 https://jsfiddle.net/rwhammond/g0fvw3do/8/

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

  function initialize() {
    // The URL of the spreadsheet to source data from.
    var query = new google.visualization.Query('https://docs.google.com/spreadsheets/d/1uD7OFv6xDKJdvB7gLBm5WMjeE8442NWZE3XP8gvpqhc/edit#gid=0&range=A1:I7');
    query.send(draw);
  }

  function draw(response) {
    var ticketsData = response.getDataTable();
    var options = {
        legend: 'top',
    };
    var view = new google.visualization.DataView(ticketsData);
    view.setColumns([0, 1, {
        calc: "stringify",
        sourceColumn: 1,
        type: "string",
        role: "annotation"
    }]);
    var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
    chart.draw(ticketsData, options, view);
  }

2 个答案:

答案 0 :(得分:0)

draw方法的第一个参数应该是数据表/视图。
在这种情况下,将ticketsData替换为view

chart.draw(view, options);

答案 1 :(得分:0)

感谢whitehat的帮助。只需为每列添加json数据。如果您要执行此操作,我还添加了另一列,其中标题行作为列,以同时显示两段数据。

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

  function initialize() {
    // The URL of the spreadsheet to source data from.
    var query = new google.visualization.Query('https://docs.google.com/spreadsheets/d/1uD7OFv6xDKJdvB7gLBm5WMjeE8442NWZE3XP8gvpqhc/edit#gid=0&range=A1:I7');
    query.send(draw);
  }

  function draw(response) {
    var ticketsData = response.getDataTable();
    var options = {
        legend: 'top',
    };
    var view = new google.visualization.DataView(ticketsData);
    view.setColumns([0, 
        1,
        {
      calc: "stringify",
      sourceColumn: 1,
      type: "string",
      role: "annotation",
      },
      {
      calc: "stringify",
      sourceColumn: 9,
      type: "string",
      role: "annotation",
      },
      2,
        {
      calc: "stringify",
      sourceColumn: 1,
      type: "string",
      role: "annotation",
      },
      {
      calc: "stringify",
      sourceColumn: 9,
      type: "string",
      role: "annotation",
      },
      3,
        {
      calc: "stringify",
      sourceColumn: 1,
      type: "string",
      role: "annotation",
      },
      {
      calc: "stringify",
      sourceColumn: 9,
      type: "string",
      role: "annotation",
      },
      4,
        {
      calc: "stringify",
      sourceColumn: 1,
      type: "string",
      role: "annotation",
      },
      {
      calc: "stringify",
      sourceColumn: 9,
      type: "string",
      role: "annotation",
      },
      5,
        {
      calc: "stringify",
      sourceColumn: 1,
      type: "string",
      role: "annotation",
      },
      {
      calc: "stringify",
      sourceColumn: 9,
      type: "string",
      role: "annotation",
      },
      6,
        {
      calc: "stringify",
      sourceColumn: 1,
      type: "string",
      role: "annotation",
      },
      {
      calc: "stringify",
      sourceColumn: 9,
      type: "string",
      role: "annotation",
      },
      7,
        {
      calc: "stringify",
      sourceColumn: 1,
      type: "string",
      role: "annotation",
      },
      {
      calc: "stringify",
      sourceColumn: 9,
      type: "string",
      role: "annotation",
      },
    ]);

    var chart = new google.visualization.LineChart(document.getElementById('chart_div'));
    chart.draw(view, options );
  }
相关问题