Google apps script 需要工具提示:将google工作表现有数据更改为DataTable

Google apps script 需要工具提示:将google工作表现有数据更改为DataTable,google-apps-script,charts,google-sheets,google-visualization,Google Apps Script,Charts,Google Sheets,Google Visualization,问题: 我看到的所有文档都使用一个DataTable,将数据写入脚本本身。我需要从现有行调用此工具提示数据。 我需要理解HTML页面和google表单中嵌入的图表之间的代码差异 目标: 我有一个散点图,需要自定义工具提示。我需要Q列中的数据显示为工具提示,悬停在R列和S列中的数据 使用以下代码和工具提示插入图表: function newChart() { // Generate a chart representing the data in the range of A1:B15

问题: 我看到的所有文档都使用一个DataTable,将数据写入脚本本身。我需要从现有行调用此工具提示数据。 我需要理解HTML页面和google表单中嵌入的图表之间的代码差异

目标: 我有一个散点图,需要自定义工具提示。我需要Q列中的数据显示为工具提示,悬停在R列和S列中的数据 使用以下代码和工具提示插入图表:

    function newChart() {
  // Generate a chart representing the data in the range of A1:B15.
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[11];

  var chart = sheet.newChart()
     .setChartType(Charts.ChartType.SCATTER)
     .addRange(sheet.getRange('R3:S5000'))
     .addRange(sheet.getRange('Q3:Q5000'))

     .setPosition(5, 5, 0, 0)
     .build();

  sheet.insertChart(chart);
}
-或-

参考资料:

在嵌入式图表中,使用数据视图定义添加工具提示角色

请参阅以下代码段

function newChart() {
  // Generate a chart representing the data in the range of A1:B15.
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[11];

  // build the data view definition
  var COLUMN_SPEC = [
    0,
    1,
    {sourceColumn: 2, role: 'tooltip'}
  ];
  var viewSpec = Charts.newDataViewDefinition()
     .setColumns(COLUMN_SPEC)
     .build();

  var chart = sheet.newChart()
     .setChartType(Charts.ChartType.SCATTER)
     .setDataViewDefinition(viewSpec)
     .addRange(sheet.getRange('R3:S5000'))
     .addRange(sheet.getRange('Q3:Q5000'))

     .setPosition(5, 5, 0, 0)
     .build();

  sheet.insertChart(chart);
}

这里有一个类似的问题可能是相关的。那么,@whitehat在哪里输入我的工具提示栏(Q3:5000)?谢谢我遇到以下错误:TypeError:在对象EmbeddedChartBuilder中找不到函数setDataViewDefinition@WhiteHatSo希望使用setDataViewDefinition,我发现使用散点图。我也对所有在其示例中显示UiApp的文档感到非常失望。当它和贬值的东西混在一起时,它就变得很难了。那么,我该如何使用该页面上的示例来处理HTML服务呢@我知道你的答案不起作用。我列出了上面的错误,以及我使用setDataViewDefinition而不使用EmbeddedChartBuilder的新计划。你有什么解释或途径帮我自己弄明白吗?thx@whitehat
function newChart() {
  // Generate a chart representing the data in the range of A1:B15.
  var ss = SpreadsheetApp.getActiveSpreadsheet();
  var sheet = ss.getSheets()[11];

  // build the data view definition
  var COLUMN_SPEC = [
    0,
    1,
    {sourceColumn: 2, role: 'tooltip'}
  ];
  var viewSpec = Charts.newDataViewDefinition()
     .setColumns(COLUMN_SPEC)
     .build();

  var chart = sheet.newChart()
     .setChartType(Charts.ChartType.SCATTER)
     .setDataViewDefinition(viewSpec)
     .addRange(sheet.getRange('R3:S5000'))
     .addRange(sheet.getRange('Q3:Q5000'))

     .setPosition(5, 5, 0, 0)
     .build();

  sheet.insertChart(chart);
}