GAS - 使用 A 列作为 X 和 B 列作为 Y 绘制折线图
GAS - draw line chart using column A as X and column B as Y
在google电子表格中,我想用脚本绘制一个折线图,A列为X,B列为Y。
但是下面的代码会绘制 2 条线。我怎样才能修改它画一条线就像 B = f(A).
function myDemoLineChart() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var range = sheet.getRange("A1:B4")
Logger.log(range)
var lineChart = sheet.newChart()
.setPosition(6, 1, 0, 0)
.setChartType(Charts.ChartType.LINE)
.setOption("title", "Demo")
.setOption("hAxis.title","X")
.setOption("vAxis.title", "Y")
.setOption("curveType","function")
.setOption("pointSize",10)
.setOption("width",800)
.setOption("height",800)
.addRange(range)
.build()
sheet.insertChart(lineChart)
}
输入数据如下:
A B
3 5
1 7
4 2
2 9
输出:
这个修改怎么样?
- 按列排序 "A"。
- 添加
setOption('useFirstColumnAsDomain', true)
作为选项。
修改后的脚本:
function myDemoLineChart() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var range = sheet.getRange("A1:B4")
Logger.log(range)
range.sort(1); // Added
var lineChart = sheet.newChart()
.setOption('useFirstColumnAsDomain', true) // Added
.setPosition(6, 1, 0, 0)
.setChartType(Charts.ChartType.LINE)
.setOption("title", "Demo")
.setOption("hAxis.title","X")
.setOption("vAxes", {0: {title: "Y"}}) // Modified
.setOption("curveType","function")
.setOption("pointSize",10)
.setOption("width",800)
.setOption("height",800)
.addRange(range)
.build()
sheet.insertChart(lineChart)
}
结果:
参考文献:
如果这不是您想要的结果,我深表歉意。
在google电子表格中,我想用脚本绘制一个折线图,A列为X,B列为Y。
但是下面的代码会绘制 2 条线。我怎样才能修改它画一条线就像 B = f(A).
function myDemoLineChart() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var range = sheet.getRange("A1:B4")
Logger.log(range)
var lineChart = sheet.newChart()
.setPosition(6, 1, 0, 0)
.setChartType(Charts.ChartType.LINE)
.setOption("title", "Demo")
.setOption("hAxis.title","X")
.setOption("vAxis.title", "Y")
.setOption("curveType","function")
.setOption("pointSize",10)
.setOption("width",800)
.setOption("height",800)
.addRange(range)
.build()
sheet.insertChart(lineChart)
}
输入数据如下:
A B
3 5
1 7
4 2
2 9
输出:
这个修改怎么样?
- 按列排序 "A"。
- 添加
setOption('useFirstColumnAsDomain', true)
作为选项。
修改后的脚本:
function myDemoLineChart() {
var ss = SpreadsheetApp.getActiveSpreadsheet();
var sheet = ss.getSheets()[0];
var range = sheet.getRange("A1:B4")
Logger.log(range)
range.sort(1); // Added
var lineChart = sheet.newChart()
.setOption('useFirstColumnAsDomain', true) // Added
.setPosition(6, 1, 0, 0)
.setChartType(Charts.ChartType.LINE)
.setOption("title", "Demo")
.setOption("hAxis.title","X")
.setOption("vAxes", {0: {title: "Y"}}) // Modified
.setOption("curveType","function")
.setOption("pointSize",10)
.setOption("width",800)
.setOption("height",800)
.addRange(range)
.build()
sheet.insertChart(lineChart)
}
结果:
参考文献:
如果这不是您想要的结果,我深表歉意。