我正在尝试在我的Google电子表格中以编程方式创建的图表中设置固定的最小值。我的目标是创建几个具有相同限制的图形,即使它们的数据非常不同。
出于本示例的目的,我的电子表格中包含以下数据:
Date Number
05.02.2017 125
06.02.2017 150
16.02.2017 21
05.02.2018 -5.333333333
06.02.2018 -57.33333333
16.02.2018 -109.3333333
05.02.2019 -161.3333333
以及以下脚本:
function update() {
var title = 'Last updated ' + new Date().toString();
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var chart = sheet.newChart()
.setChartType(Charts.ChartType.AREA)
.addRange(sheet.getRange("A1:B8"))
.setPosition(5, 5, 0, 0)
.setOption('title', title)
.setOption('vAxis.minValue', -5000)
.setOption('vAxis.viewWindow.min', -5000)
.build();
sheet.insertChart(chart);
}
...换句话说,我试图将最小值设置为-5000。设置vAxis.minValue和/或vAxis.viewWindow.min完全没有任何结果。 (是的,我知道每次调用update()时我的代码都会创建一个新代码,但这不是重点。)
如何以编程方式更改这些值?
此处的表单的完整链接:https://docs.google.com/spreadsheets/d/1dKBG8Nx5mypD2YAfOTCzo2cvIX6C7R18SCIsNB5FsT0/edit?usp=sharing
答案 0 :(得分:6)
要将vAxis的最小值设置为-5000,请将选项配置为setOption("vAxes", {0: { viewWindow: { min: -5000} }})
function update() {
var title = 'Last updated ' + new Date().toString();
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var chart = sheet.newChart()
.setChartType(Charts.ChartType.AREA)
.addRange(sheet.getRange("A1:B8"))
.setPosition(5, 5, 0, 0)
.setOption('title', title)
.setOption("vAxes", {0: { viewWindow: { min: -5000} }})
.build();
sheet.insertChart(chart);
}