Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Google apps script Google sheets脚本-图表图例文本标签_Google Apps Script_Google Sheets_Charts - Fatal编程技术网

Google apps script Google sheets脚本-图表图例文本标签

Google apps script Google sheets脚本-图表图例文本标签,google-apps-script,google-sheets,charts,Google Apps Script,Google Sheets,Charts,如何通过google工作表中的脚本设置图表中图例的文本标签?我环顾四周,发现的都是这些setOptionpropertiesseries和legend,但它们似乎只在图表编辑器(GUI)中设置了相应的设置。我知道更改图例文本的唯一方法是在图表中双击它 这是我试图插入的图表 var chart = sheet1.newChart() .setChartType(Charts.ChartType.LINE) .addRange(sheet2.getRange('A1:D12'))

如何通过google工作表中的脚本设置图表中图例的文本标签?我环顾四周,发现的都是这些
setOption
properties
series
legend
,但它们似乎只在图表编辑器(GUI)中设置了相应的设置。我知道更改图例文本的唯一方法是在图表中双击它

这是我试图插入的图表

var chart = sheet1.newChart()
    .setChartType(Charts.ChartType.LINE)
    .addRange(sheet2.getRange('A1:D12'))
    .setPosition(5, 5, 0, 0)
    .build();

  sheet1.insertChart(chart);
以下是我尝试了不同设置但运气不佳的选项:

    .setOption('series', 
      {
        position: 'right',
        textStyle: {color: 'orange', fontSize: 16}
      })
    .setOption('series', 
      {
        0: {dataLabel: 'value'},
        1: {dataLabel: 'value'},
        2: {datalabel: 'value'}
      })
    .setOption('legend', 
      {
        position: 'top', 
        textStyle: {color: 'blue', fontSize: 16}
      })

我相信你的目标如下

  • 使用Google Apps脚本创建图表时,您希望将范围的第一行设置为标题行
在这种情况下,如何在类EmbeddedTableChartBuilder中使用
setNumHeaders
?当您的脚本被修改时,它变成如下所示

修改脚本:
var sheet1=SpreadsheetApp.getActiveSheet();
var chart=sheet1.newChart()
.setChartType(Charts.ChartType.LINE)
.addRange(表2.getRange('A1:D12'))
.设置位置(5,5,0,0)

.setNumHeaders(1)//太棒了!那太好了!我对问题做了一些修改,建议您删除
setOption
,以获得更简洁的问题答案。@dekuShrub感谢您的回复。我很高兴你的问题解决了。我理解你的建议,我同意你的意见。根据你更新的问题,我更新了我的答案。谢谢你的支持。
var sheet1 = SpreadsheetApp.getActiveSheet();
var chart = sheet1.newChart()
  .setChartType(Charts.ChartType.LINE)
  .addRange(sheet2.getRange('A1:D12'))
  .setPosition(5, 5, 0, 0)
  .setNumHeaders(1) // <--- Added
  .build();

sheet1.insertChart(chart);