为什么收到此错误“无法绘制图表:未指定数据”?

时间:2019-11-27 20:12:16

标签: google-apps-script google-sheets web-applications

我正在尝试将我的Google电子表格加载到我的基本Web应用程序中,但我不断收到此错误“无法绘制图表:未指定数据”。我做错了什么? 这是我的HTML

<!DOCTYPE html>
<html>
  <head>
    <script src="https://www.gstatic.com/charts/loader.js"></script>
    <script>
      const loaded = new Promise((res, rej) => {
        google.charts.load('current');
        google.charts.setOnLoadCallback(res);
      });
      let wrapper = null;
      async function drawTable(arr) {
        await loaded; //wait if charts is not loaded
        wrapper = new google.visualization.ChartWrapper({
          chartType: 'Table',
          dataTable: arr,
          containerId: 'table_div',
        });
        wrapper.draw();
      }
      function getData(form) {
        google.script.run
          .withSuccessHandler(drawTable)
          .getDataFromServer(form);//change server function name
      }
    </script>
  </head>
  <body>
    <form>
      <input type="text" name="searchtext" />
      <input type="button" value="ok" onclick="getData(this.parentNode)" />
    </form>
    <div id="table_div"></div>
  </body>
</html>

这是我的CODE.GS

    function doGet() {
          return HtmlService.createHtmlOutputFromFile('index');
        }

  function getDataFromServer(e) {
 var id ="1GRi3NAdannp3uNDi202HC5hKNMNIVMNw_WPDYIes5Hs";
 var data = SpreadsheetApp.openById(id)
.getSheetByName("Daily report")
.getDataRange()
.getValues();
var ar = data.splice(0,1); //add headers
data.forEach(function(f) {
 if (~f.indexOf(e.searchtext)) ar.push(f);
 });
return ar;
 }

这是我的Google电子表格的链接。 https://docs.google.com/spreadsheets/d/1GRi3NAdannp3uNDi202HC5hKNMNIVMNw_WPDYIes5Hs/edit?usp=sharing

谢谢

1 个答案:

答案 0 :(得分:0)

这是一个如何将数据加载到图表中的简单示例。第一列日期字符串,其他四列为数字。

x