我的Google表格中有一个(容器绑定)脚本。使用此脚本,我根据工作表中的数据创建一个图表。见图:
我使用的应用脚本( SCRIPT 1 )是:
/**
* @OnlyCurrentDoc
*/
function buildChart() {
//get the sheet
var sheet = SpreadsheetApp.getActiveSheet()
//create a new chart
var chart = sheet.newChart()
//basics
.setChartType(Charts.ChartType.COLUMN)
.addRange(sheet.getRange("D1:H8"))
.setPosition(10, 10, 0, 0)
.setOption('isStacked', 'TRUE')
//title
.setOption('title', 'Cost Price Development - Stage 3')
.setOption('titleTextStyle', {fontSize: 12})
//legend
.setOption('legend.position', 'none')
//vertical axis
.setOption('vAxes', {0: {title: '€', format: 'short', textStyle: {fontSize: 10}, titleTextStyle: {fontSize : 8}, viewWindow: {min: 79000000}}})
//horizontal axis
.setOption('hAxis.title', 'cost price changes')
.setOption('hAxis.titleTextStyle', {fontSize : 8})
.setOption('hAxis.textStyle', {fontSize : 8})
//chart height
.setOption('height', 250)
//colors series
.setOption('colors', ['tranparant', '#659CEF', 'red', 'green'])
.build();
// Insert chart in sheet
sheet.insertChart(chart);
}
目前,(如上图所示)纵轴上的数字范围为79,000,000到81,500,000。但是,我想改变这些数字的格式,以便它们显示为数百万:即从79M到81.5M。
使用 setOptions()方法,我成功设置了许多选项。但不知何故,选项 vAxis.format 不会改变vAxis数字的格式。正如您在完整脚本中看到的,以下行定义了不同的vAxis选项:
.setOption('vAxes', {0: {title: '€', format: 'short', textStyle: {fontSize: 10}, titleTextStyle: {fontSize : 8}, viewWindow: {min: 79000000}}})
只有格式:'简短'似乎没有效果。
随后,我更改了上面的脚本,以便定义垂直轴选项的方式与定义水平轴的方式相同。 SCRIPT 2 版本下方:
// create waterfall chart
function waterfallChart() {
//get the sheet
var sheet = SpreadsheetApp.getActiveSheet();
//create a new chart
var chart = sheet.newChart()
//basics
.setChartType(Charts.ChartType.COLUMN)
.addRange(sheet.getRange("g1:k8"))
.setPosition(10, 10, 0, 0)
.setOption('isStacked', 'TRUE')
//title
.setOption('title', 'Cost Price Development - Stage 3')
.setOption('titleTextStyle', {fontSize: 12})
//legend
.setOption('legend.position', 'none')
//vertical axis
//.setOption('vAxes', {0: {title: '€', format: 'short', textStyle: {fontSize: 10}, titleTextStyle: {fontSize : 8}, viewWindow: {min: 79000000}}})
.setOption('vAxis.title', '€')
.setOption('vAxis.format', 'short')
.setOption('vAxis.textStyle', {fontSize: 10})
.setOption('vAxis.textStyle', {fontSize: 10})
.setOption('vAxis.titleTextStyle', {fontSize: 8})
.setOption('vAxis.viewWindow', {min: 79000000})
//horizontal axis
.setOption('hAxis.title', 'cost price changes')
.setOption('hAxis.titleTextStyle', {fontSize : 8})
.setOption('hAxis.textStyle', {fontSize : 8})
//chart height
.setOption('height', 250)
//colors series
.setOption('colors', ['tranparant', '#659CEF', 'red', 'green'])
.build();
// Insert chart in sheet
sheet.insertChart(chart);
}
然而,使用 SCRIPT 2 代码所有已定义的垂直轴选项
setOption('vAxis.title', '€')
.setOption('vAxis.format', 'short')
.setOption('vAxis.textStyle', {fontSize: 10})
.setOption('vAxis.textStyle', {fontSize: 10})
.setOption('vAxis.titleTextStyle', {fontSize: 8})
.setOption('vAxis.viewWindow', {min: 79000000})
对图表没有影响;看截图:
总结:
所以,我的问题是:我必须使用哪些代码才能在图表中接管垂直轴的所有已定义选项?
有人可以帮我解决这个问题吗?
答案 0 :(得分:0)
尝试使用vAxis
显式设置选项,而不是一次性...
.setOption('vAxis.format', 'short')