柱形图构建器。有关详情,请参阅 Gviz 文档。
方法
详细文档
addRange(range)
向此构建器所修改的图表添加一个范围。如果此范围已被添加,则不添加该范围 已添加到图表中
var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; var chart = sheet.newChart() .setChartType(Charts.ChartType.BAR) .addRange(sheet.getRange("A1:B8")) .setPosition(5, 5, 0, 0) .build(); sheet.insertChart(chart);
参数
名称 | 类型 | 说明 |
---|---|---|
range | Range | 要添加的范围。 |
返回
EmbeddedChartBuilder
- 此构建器,用于链接
asAreaChart()
asBarChart()
asColumnChart()
asComboChart()
asHistogramChart()
asLineChart()
asPieChart()
asScatterChart()
asTableChart()
build()
构建图表,以反映对其所做的所有更改。
此方法不会自动在电子表格的顶部绘制图表。新图表
必须通过 sheet.insertChart(chart)
插入,并且应更新现有图表
经由sheet.updateChart(chart)
。
var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; var range = sheet.getRange("A1:B5"); var chart = sheet.newChart() .setChartType(Charts.ChartType.BAR) .addRange(range) .setPosition(5, 5, 0, 0) .build(); sheet.insertChart(chart);
返回
EmbeddedChart
- 已创建的图表(仍必须添加到电子表格中)
clearRanges()
从此构建器修改的图表中移除所有范围。
var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; // This code updates the chart to use only the new ranges while preserving the existing // formatting of the chart. var chart = sheet.getCharts()[0]; var newChart = chart .modify() .clearRanges() .addRange(sheet.getRange("A1:A5")) .addRange(sheet.getRange("B1:B5")) .build(); sheet.updateChart(newChart);
返回
EmbeddedChartBuilder
- 此构建器,用于链接
getChartType()
getContainer()
返回图表 ContainerInfo
,其中包含图表在
工作表。
var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; var chartBuilder = sheet.newChart() .setChartType(Charts.ChartType.BAR) .addRange(sheet.getRange("A1:B8")) .setPosition(5, 5, 0, 0); // This method returns the exact same data as Chart#getContainerInfo() var containerInfo = chartBuilder.getContainer(); // Logs the values we used in setPosition() Logger.log("Anchor Column: %s\r\nAnchor Row %s\r\nOffset X %s\r\nOffset Y %s", containerInfo.getAnchorColumn(), containerInfo.getAnchorRow(), containerInfo.getOffsetX(), containerInfo.getOffsetY());
返回
ContainerInfo
- 包含图表容器位置的对象
getRanges()
返回当前为此图表提供数据的范围列表的副本。使用 addRange(range)
和 removeRange(range)
修改此列表。
var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; var chartBuilder = sheet.newChart() .setChartType(Charts.ChartType.BAR) .addRange(sheet.getRange("A1:B8")) .setPosition(5, 5, 0, 0); var ranges = chartBuilder.getRanges(); // There's only one range as a data source for this chart, // so this logs "A1:B8" for (var i in ranges) { var range = ranges[i]; Logger.log(range.getA1Notation()); }
返回
Range[]
- 一系列范围,用作要构建的图表的数据源
removeRange(range)
从此构建器修改的图表中移除指定范围。如果存在以下情况,则不会抛出错误: 范围不在此图表中。
移除的范围必须与通过 addRange(range)
添加的范围一致;
否则,图表不会发生任何更改。此方法不能用于仅移除部分值
范围。
var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; var firstRange = sheet.getRange("A1:B5"); var secondRange = sheet.getRange("A6:B8"); var chartBuilder = sheet.newChart() .setChartType(Charts.ChartType.BAR) .addRange(firstRange) // This range will render in a different color .addRange(secondRange) .setPosition(5, 5, 0, 0); // Note that you can use either of these two formats, but the range // MUST match up with a range that was added via addRange(), or it // will not be removed, and will not throw an exception chartBuilder.removeRange(firstRange); chartBuilder.removeRange(sheet.getRange("A6:B8")); var chart = chartBuilder.build(); sheet.insertChart(chart);
参数
名称 | 类型 | 说明 |
---|---|---|
range | Range | 要移除的范围。 |
返回
EmbeddedChartBuilder
- 此构建器,用于链接
reverseCategories()
反转沿域轴的系列绘制。对于垂直范围图表(例如折线图、 面积图或柱形图),表示横轴是从右向左绘制的。对于 水平范围图表(例如条形图),这表示纵轴是从上到下 底部。对于饼图,这意味着切片是逆时针绘制的。
// Creates a pie chart builder and sets drawing of the slices in a counter-clockwise manner. var builder = Charts.newPieChart(); builder.reverseCategories();
返回
EmbeddedColumnChartBuilder
- 此构建器,用于链接。
setBackgroundColor(cssValue)
设置图表的背景颜色。
// Creates a line chart builder and sets the background color to gray var builder = Charts.newLineChart(); builder.setBackgroundColor("gray");
参数
名称 | 类型 | 说明 |
---|---|---|
cssValue | String | 颜色的 CSS 值(例如 "blue" 或 "#00f" )。 |
返回
EmbeddedColumnChartBuilder
- 此构建器,用于链接。
setChartType(type)
更改图表类型。目前,并非所有嵌入式图表类型都受支持。请参阅 ChartType
。
var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; var range = sheet.getRange("A1:B5"); var chart = sheet.newChart() .setChartType(Charts.ChartType.BAR) .addRange(range) .setPosition(5, 5, 0, 0) .build(); sheet.insertChart(chart);
参数
名称 | 类型 | 说明 |
---|---|---|
type | ChartType | 要将此图表更改为的类型。 |
返回
EmbeddedChartBuilder
- 此构建器,用于链接
setColors(cssValues)
设置图表中线条的颜色。
// Creates a line chart builder and sets the first two lines to be drawn in green and red, // respectively. var builder = Charts.newLineChart(); builder.setColors(["green", "red"]);
参数
名称 | 类型 | 说明 |
---|---|---|
cssValues | String[] | 颜色 CSS 值的数组,例如 ["red", "#acf"] 。第 n 个元素
表示图表中第 n 条线的颜色。 |
返回
EmbeddedColumnChartBuilder
- 此构建器,用于链接。
setHiddenDimensionStrategy(strategy)
设置用于隐藏行和列的策略。默认值为 IGNORE_ROWS
。
var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; var range = sheet.getRange("A1:B5"); var chart = sheet.newChart() .setChartType(Charts.ChartType.BAR) .addRange(range) .setHiddenDimensionStrategy(Charts.ChartHiddenDimensionStrategy.IGNORE_COLUMNS) .setPosition(5, 5, 0, 0) .build(); sheet.insertChart(chart);
参数
名称 | 类型 | 说明 |
---|---|---|
strategy | ChartHiddenDimensionStrategy | 用于隐藏行和列的策略。 |
返回
EmbeddedChartBuilder
- 此构建器,用于链接
setLegendPosition(position)
设置图例相对于图表的位置。默认情况下,没有图例。
// Creates a line chart builder and sets the legend position to right. var builder = Charts.newLineChart(); builder.setLegendPosition(Charts.Position.RIGHT);
参数
名称 | 类型 | 说明 |
---|---|---|
position | Position | 图例的位置。 |
返回
EmbeddedColumnChartBuilder
- 此构建器,用于链接。
setLegendTextStyle(textStyle)
设置图表图例的文字样式。
// Creates a line chart builder and sets it up for a blue, 26-point legend. var textStyleBuilder = Charts.newTextStyle().setColor('#0000FF').setFontSize(26); var style = textStyleBuilder.build(); var builder = Charts.newLineChart(); builder.setLegendTextStyle(style);
参数
名称 | 类型 | 说明 |
---|---|---|
textStyle | TextStyle | 要用于图表图例的文本样式。 |
返回
EmbeddedColumnChartBuilder
- 此构建器,用于链接。
setMergeStrategy(mergeStrategy)
设置当存在多个范围时使用的合并策略。如果为 MERGE_ROWS
,则合并行;如果为 MERGE_COLUMNS
,则合并列。默认值为 MERGE_COLUMNS
。
var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; var range = sheet.getRange("A1:B10"); var range2 = sheet.getRange("C:C10"); var chart = sheet.newChart() .setChartType(Charts.ChartType.BAR) .addRange(range) .addRange(range2) .setMergeStrategy(Charts.ChartMergeStrategy.MERGE_ROWS) .setPosition(5, 5, 0, 0) .build(); sheet.insertChart(chart);
参数
名称 | 类型 | 说明 |
---|---|---|
mergeStrategy | ChartMergeStrategy | 要使用的合并策略。 |
返回
EmbeddedChartBuilder
- 此构建器,用于链接
setNumHeaders(headers)
设置应视为标题的范围的行数或列数。
var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; var range = sheet.getRange("A1:B5"); var chart = sheet.newChart() .setChartType(Charts.ChartType.BAR) .addRange(range) .setNumHeaders(1) .setPosition(5, 5, 0, 0) .build(); sheet.insertChart(chart);
参数
名称 | 类型 | 说明 |
---|---|---|
headers | Integer | 要视为标题的行数或列数。负值会导致标题出现 自动进行检测 |
返回
EmbeddedChartBuilder
- 此构建器,用于链接
setOption(option, value)
设置此图表的高级选项。要查看可用选项的列表,请参阅图表 配置选项。
此方法不会验证您指定的选项对此图表类型有效,也不会验证 值的格式/结构正确。
以下示例展示了如何更改标题和设置图例。
builder.setOption('title', 'Earnings projections'); builder.setOption('legend', {position: 'top', textStyle: {color: 'blue', fontSize: 16}});
参数
名称 | 类型 | 说明 |
---|---|---|
option | String | 选项的名称。 |
value | Object | 选项的值。 |
返回
EmbeddedChartBuilder
- 此构建器,用于链接。
setPosition(anchorRowPos, anchorColPos, offsetX, offsetY)
设置位置,以更改图表在工作表中的显示位置。anchorRowPos
和
anchorColPos
从 1 开始计数。
var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; var range = sheet.getRange("A1:B5"); var chart = sheet.newChart() .setChartType(Charts.ChartType.BAR) .addRange(range) .setPosition(5, 5, 0, 0) .build(); sheet.insertChart(chart);
参数
名称 | 类型 | 说明 |
---|---|---|
anchorRowPos | Integer | 图表的顶部会锚定在此行中。 |
anchorColPos | Integer | 图表的左侧锚定在此列中。 |
offsetX | Integer | 图表的右上角偏移了此像素数。 |
offsetY | Integer | 图表的左下角偏移了此像素数。 |
返回
EmbeddedChartBuilder
- 此构建器,用于链接
setRange(start, end)
设置图表的范围。
如有任何数据点超出此范围,系统会扩展范围以包含这些数据 积分。
参数
名称 | 类型 | 说明 |
---|---|---|
start | Number | 范围轴的最低网格线的值。 |
end | Number | 范围轴最高网格线的值。 |
返回
EmbeddedColumnChartBuilder
- 此构建器,用于链接。
setStacked()
setTitle(chartTitle)
设置图表的标题。标题显示在图表上方的中心位置。
// Creates a line chart builder and title to 'My Line Chart'. var builder = Charts.newLineChart(); builder.setTitle('My Line Chart')
参数
名称 | 类型 | 说明 |
---|---|---|
chartTitle | String | 图表标题。 |
返回
EmbeddedColumnChartBuilder
- 此构建器,用于链接。
setTitleTextStyle(textStyle)
设置图表标题的文字样式。
// Creates a line chart builder and sets it up for a blue, 26-point title. var textStyleBuilder = Charts.newTextStyle().setColor('#0000FF').setFontSize(26); var style = textStyleBuilder.build(); var builder = Charts.newLineChart(); builder.setTitleTextStyle(style);
参数
名称 | 类型 | 说明 |
---|---|---|
textStyle | TextStyle | 用于图表标题的文本样式。您可以通过调用 Charts.newTextStyle() 来创建 TextStyleBuilder 对象。 |
返回
EmbeddedColumnChartBuilder
- 此构建器,用于链接。
setTransposeRowsAndColumns(transpose)
设置是否转置图表的行和列。如果设置为 true
,则行和
列。默认值为 false
。
var ss = SpreadsheetApp.getActiveSpreadsheet(); var sheet = ss.getSheets()[0]; var range = sheet.getRange("A1:B5"); var chart = sheet.newChart() .setChartType(Charts.ChartType.BAR) .addRange(range) .setTransposeRowsAndColumns(true) .setPosition(5, 5, 0, 0) .build(); sheet.insertChart(chart);
参数
名称 | 类型 | 说明 |
---|---|---|
transpose | Boolean | 如果为 true ,则用于构建图表的行和列为
已转置。 |
返回
EmbeddedChartBuilder
- 此构建器,用于链接
setXAxisTextStyle(textStyle)
设置横轴文本样式。
// Creates a line chart builder and sets the X-axis text style to blue, 18-point font. var textStyle = Charts.newTextStyle().setColor('blue').setFontSize(18).build(); var builder = Charts.newLineChart(); builder.setXAxisTextStyle(textStyle);
参数
名称 | 类型 | 说明 |
---|---|---|
textStyle | TextStyle | 用于横轴标题的文本样式。您可以通过调用 Charts.newTextStyle() 来创建 TextStyleBuilder 对象。 |
返回
EmbeddedColumnChartBuilder
- 此构建器,用于链接。
setXAxisTitle(title)
为横轴添加标题。标题居中,显示在轴值下方 标签。
// Creates a line chart builder and sets the X-axis title. var builder = Charts.newLineChart(); builder.setTitle('X-axis Title')
参数
名称 | 类型 | 说明 |
---|---|---|
title | String | X 轴的标题。 |
返回
EmbeddedColumnChartBuilder
- 此构建器,用于链接。
setXAxisTitleTextStyle(textStyle)
设置横轴标题文本样式。
// Creates a line chart builder and sets the X-axis title text style to blue, 18-point font. var textStyle = Charts.newTextStyle().setColor('blue').setFontSize(18).build(); var builder = Charts.newLineChart(); builder.setXAxisTitleTextStyle(textStyle);
参数
名称 | 类型 | 说明 |
---|---|---|
textStyle | TextStyle | 用于横轴标题的文本样式。您可以通过调用 Charts.newTextStyle() 来创建 TextStyleBuilder 对象。 |
返回
EmbeddedColumnChartBuilder
- 此构建器,用于链接。
setYAxisTextStyle(textStyle)
设置纵轴文本样式。
// Creates a line chart builder and sets the Y-axis text style to blue, 18-point font. var textStyle = Charts.newTextStyle().setColor('blue').setFontSize(18).build(); var builder = Charts.newLineChart(); builder.setYAxisTextStyle(textStyle);
参数
名称 | 类型 | 说明 |
---|---|---|
textStyle | TextStyle | 用于横轴标题的文本样式。您可以通过调用 Charts.newTextStyle() 来创建 TextStyleBuilder 对象。 |
返回
EmbeddedColumnChartBuilder
- 此构建器,用于链接。
setYAxisTitle(title)
为纵轴添加标题。标题居中,显示在值的左侧 标签。
// Creates a line chart builder and sets the Y-axis title. var builder = Charts.newLineChart(); builder.setYAxisTitle('Y-axis Title')
参数
名称 | 类型 | 说明 |
---|---|---|
title | String | Y 轴的标题。 |
返回
EmbeddedColumnChartBuilder
- 此构建器,用于链接。
setYAxisTitleTextStyle(textStyle)
设置纵轴标题文本样式。
// Creates a line chart builder and sets the Y-axis title text style to blue, 18-point font. var textStyle = Charts.newTextStyle().setColor('blue').setFontSize(18).build(); var builder = Charts.newLineChart(); builder.setYAxisTitleTextStyle(textStyle);
参数
名称 | 类型 | 说明 |
---|---|---|
textStyle | TextStyle | 用于横轴标题的文本样式。您可以通过调用 Charts.newTextStyle() 来创建 TextStyleBuilder 对象。 |
返回
EmbeddedColumnChartBuilder
- 此构建器,用于链接。
useLogScale()
将范围轴设为对数刻度(要求所有值均为正数)。范围 轴是垂直图表(如折线图、面积图或柱形图)的纵轴,而 水平轴(例如条形图)。
返回
EmbeddedColumnChartBuilder
- 此构建器,用于链接。