首页 > 解决方案 > 脚本忽略 UseLogScale

问题描述

我正在尝试使用谷歌应用程序脚本从谷歌电子表格创建具有对数刻度的折线图。我不是开发人员,所以我使用“记录宏”功能来获取起点。

我的数据集看起来像这样 https://docs.google.com/spreadsheets/d/1JKcpXtEbQj_4qzf20XWcDwDOoBI8ZlSXZdpzOKY5kt4/edit?usp=sharing

这是录制宏返回的内容:

function CreateChart() {
  var spreadsheet = SpreadsheetApp.getActive();
  spreadsheet.getRangeList(['A1:C1', 'A2:C4']).activate();
  var sheet = spreadsheet.getActiveSheet();
  var chart = sheet.newChart()
  .asLineChart()
  .addRange(spreadsheet.getRange('A1:C1'))
  .addRange(spreadsheet.getRange('A2:C4'))
  .setMergeStrategy(Charts.ChartMergeStrategy.MERGE_ROWS)
  .setTransposeRowsAndColumns(true)
  .setNumHeaders(-1)
  .setHiddenDimensionStrategy(Charts.ChartHiddenDimensionStrategy.IGNORE_BOTH)
  .setOption('vAxes.0.gridlines.count', 10)
  .useLogScale()
  .setOption('height', 271)
  .setOption('width', 439)
  .setPosition(1, 6, 76, 16)
  .build();
  sheet.insertChart(chart);
};

但是,当我尝试从脚本编辑器运行此脚本时,即使创建了图表,也根本不遵守.useLogScale()"设置。我也尝试了 .setOption('vAxes.0.scaleType', 'log' ).setOption('vAxes.0.scaleType', 'mirrorLog')仍然无法正常工作。

我怎么解决这个问题?谢谢!

标签: google-apps-scriptchartsgoogle-visualizationembedded-resource

解决方案


正确的选择似乎是

.setOption('vAxes.0.logScale',true)

推荐阅读