google-apps-script - 如何使用谷歌应用脚本在饼图中设置颜色
问题描述
我使用宏创建了一个基本脚本,以在 Google 表格中生成饼图。饼图和所有特征似乎都可以正常工作,但系列(切片)的颜色除外。当我打开脚本并输入新颜色时,它一直默认为红色和蓝色,尽管宽度、高度、图例位置等其他项目都正常工作。我假设它是一个基本的语法问题,或者可能是链接问题,或者序列……?我是编码新手,仅使用基于 Web 的电子表格来扩展我的业务功能。提前感谢您提供的任何帮助!
基本上我已经尝试将颜色更改为各种不同的选项,并且颜色始终保持蓝色和红色。当我修改高度和宽度时,脚本运行正确。
function addPieChart() {
var ss = SpreadsheetApp.getActive();
var sheet1 = ss.getSheetByName('d2cStaging');
var dashboard = ss.getSheetByName('Dashboard');
var totalChartLabels = sheet1.getRange("R5:R7");
var totalChartValues = sheet1.getRange("T5:T7");
var totalsChart = sheet1.newChart()
.setChartType(Charts.ChartType.PIE)
.addRange(totalChartLabels)
.addRange(totalChartValues)
.setMergeStrategy(Charts.ChartMergeStrategy.MERGE_COLUMNS)
.setPosition(6,7,0,0)
.setOption('series.0.color', 'GREEN')
.setOption('series.1.color', 'YELLOW')
.setOption('legend.position', 'bottom')
.setOption('pieSliceText', 'value-and-percentage')
.setOption('width', 300)
.setOption('height', 300)
.setNumHeaders(1)
.build();
dashboard.insertChart(totalsChart);
}
我希望能够将 series.0.color 更改为“PURPLE”,将 series.1.color 更改为“ORANGE”,当我重新运行脚本时,这些结果会反映在显示的图表中。
解决方案
罗斯的回答在某些时候停止了对我的工作。
这现在有效:
charts.forEach((chart) => {
chart = chart.modify()
.asPieChart()
.setColors(headerColors)
.build();
sheet.updateChart(chart);
});
主要部分是.asPieChart().setColors(colors)
作为替代品.setOption('colors', colors)
推荐阅读
- c# - C# 字符串变为空
- javascript - 如何跟踪 mongodb 内部发生的变化并在 React 应用程序中获取所有数据
- amazon-web-services - 从 S3 中的特定存储桶中删除对象需要哪些权限
- python - 如果只有第一列有数据,熊猫就会删除行
- javascript - React Router 在点击卡片后创建一个“新页面”
- python-packaging - 在 .pex 中导入 json 资源(Python 可执行文件(Twitter 格式))
- time-complexity - 计算函数 f2 的时间和空间复杂度
- mysql - 存储电子商务商店项目点击数据的选项
- python - PyTorch Tensor.index_select() 如何评估张量输出?
- python - 如何等待元素中元素和特定文本的存在?