Class EmbeddedPieChartBuilder

EmbeddedPieChartBuilder

圓餅圖的建構工具。詳情請參閱 Gviz 說明文件

方法

方法傳回類型簡短說明
addRange(range)EmbeddedChartBuilder將範圍新增至這個建構工具修改的圖表。
asAreaChart()EmbeddedAreaChartBuilder將圖表類型設為 AreaChart,並傳回 EmbeddedAreaChartBuilder
asBarChart()EmbeddedBarChartBuilder將圖表類型設為 BarChart,並傳回 EmbeddedBarChartBuilder
asColumnChart()EmbeddedColumnChartBuilder將圖表類型設為 ColumnChart,並傳回 EmbeddedColumnChartBuilder
asComboChart()EmbeddedComboChartBuilder將圖表類型設為 ComboChart 並傳回 EmbeddedComboChartBuilder
asHistogramChart()EmbeddedHistogramChartBuilder將圖表類型設為直方圖,並傳回 EmbeddedHistogramChartBuilder
asLineChart()EmbeddedLineChartBuilder將圖表類型設為折線圖,並傳回 EmbeddedLineChartBuilder
asPieChart()EmbeddedPieChartBuilder將圖表類型設為 PieChart,並傳回 EmbeddedPieChartBuilder
asScatterChart()EmbeddedScatterChartBuilder將圖表類型設為「散佈圖」,並傳回 EmbeddedScatterChartBuilder
asTableChart()EmbeddedTableChartBuilder將圖表類型設為 TableChart,並傳回 EmbeddedTableChartBuilder
build()EmbeddedChart建立圖表以反映所有變更。
clearRanges()EmbeddedChartBuilder從這個建構工具修改的圖表中移除所有範圍。
getChartType()ChartType傳回目前的圖表類型。
getContainer()ContainerInfo傳回圖表 ContainerInfo,其中包含圖表上顯示的圖表。
getRanges()Range[]傳回目前提供這張圖表資料的範圍清單副本。
removeRange(range)EmbeddedChartBuilder從這個建構工具修改的圖表中移除指定範圍。
reverseCategories()EmbeddedPieChartBuilder反向繪製網域軸的序列繪圖。
set3D()EmbeddedPieChartBuilder將圖表設為 3D 圖表。
setBackgroundColor(cssValue)EmbeddedPieChartBuilder設定圖表的背景顏色。
setChartType(type)EmbeddedChartBuilder變更圖表類型。
setColors(cssValues)EmbeddedPieChartBuilder設定圖表中線條的顏色。
setHiddenDimensionStrategy(strategy)EmbeddedChartBuilder設定隱藏列和欄採用的策略。
setLegendPosition(position)EmbeddedPieChartBuilder設定與圖表相關的圖例位置。
setLegendTextStyle(textStyle)EmbeddedPieChartBuilder設定圖表圖例的文字樣式。
setMergeStrategy(mergeStrategy)EmbeddedChartBuilder設定在存在多個範圍時使用合併策略。
setNumHeaders(headers)EmbeddedChartBuilder設定應視為標題的列數或欄數。
setOption(option, value)EmbeddedChartBuilder設定這張圖表的進階選項。
setPosition(anchorRowPos, anchorColPos, offsetX, offsetY)EmbeddedChartBuilder設定位置,變更圖表在工作表中的位置。
setTitle(chartTitle)EmbeddedPieChartBuilder設定圖表標題。
setTitleTextStyle(textStyle)EmbeddedPieChartBuilder設定圖表標題的文字樣式。
setTransposeRowsAndColumns(transpose)EmbeddedChartBuilder設定圖表的列和欄是否要轉換。

內容詳盡的說明文件

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);

參數

名稱類型說明
rangeRange要新增的範圍。

回攻員

EmbeddedChartBuilder:這個建構工具用於鏈結


asAreaChart()

將圖表類型設為 AreaChart,並傳回 EmbeddedAreaChartBuilder

回攻員

EmbeddedAreaChartBuilder:面積圖的建構工具


asBarChart()

將圖表類型設為 BarChart,並傳回 EmbeddedBarChartBuilder

回攻員

EmbeddedBarChartBuilder:長條圖的建構工具


asColumnChart()

將圖表類型設為 ColumnChart,並傳回 EmbeddedColumnChartBuilder

回攻員

EmbeddedColumnChartBuilder:柱狀圖的建構工具


asComboChart()

將圖表類型設為 ComboChart 並傳回 EmbeddedComboChartBuilder

回攻員

EmbeddedComboChartBuilder:組合圖的建構工具


asHistogramChart()

將圖表類型設為直方圖,並傳回 EmbeddedHistogramChartBuilder

回攻員

EmbeddedHistogramChartBuilder:直方圖的建構工具


asLineChart()

將圖表類型設為折線圖,並傳回 EmbeddedLineChartBuilder

回攻員

EmbeddedLineChartBuilder:折線圖的建構工具


asPieChart()

將圖表類型設為 PieChart,並傳回 EmbeddedPieChartBuilder

回攻員

EmbeddedPieChartBuilder:圓餅圖的建構工具


asScatterChart()

將圖表類型設為「散佈圖」,並傳回 EmbeddedScatterChartBuilder

回攻員

EmbeddedScatterChartBuilder:散佈圖的建構工具


asTableChart()

將圖表類型設為 TableChart,並傳回 EmbeddedTableChartBuilder

回攻員

EmbeddedTableChartBuilder:表格圖表的建構工具


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()

傳回目前的圖表類型。

回攻員

ChartType:圖表類型


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);

參數

名稱類型說明
rangeRange要移除的範圍。

回攻員

EmbeddedChartBuilder:這個建構工具用於鏈結


reverseCategories()

反向繪製網域軸的序列繪圖。如為垂直範圍圖表 (例如折線圖、面積圖或柱狀圖),這表示水平軸是從右到左繪製。以水平範圍圖表 (例如長條圖) 來說,這代表垂直軸是從上到下繪製。對於圓餅圖,這表示系統會逆時針繪製切片。

// Creates a pie chart builder and sets drawing of the slices in a counter-clockwise manner.
var builder = Charts.newPieChart();
builder.reverseCategories();

回攻員

EmbeddedPieChartBuilder — 這個建構工具適用於鏈結。


set3D()

將圖表設為 3D 圖表。

回攻員

EmbeddedPieChartBuilder — 這個建構工具適用於鏈結。


setBackgroundColor(cssValue)

設定圖表的背景顏色。

// Creates a line chart builder and sets the background color to gray
var builder = Charts.newLineChart();
builder.setBackgroundColor("gray");

參數

名稱類型說明
cssValueString顏色的 CSS 值 (例如 "blue""#00f")。

回攻員

EmbeddedPieChartBuilder — 這個建構工具適用於鏈結。


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);

參數

名稱類型說明
typeChartType圖表要變更的類型。

回攻員

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"]);

參數

名稱類型說明
cssValuesString[]顏色 CSS 值陣列,例如 ["red", "#acf"]。陣列中的第 n 個元素代表圖表中第 n 個線條的顏色。

回攻員

EmbeddedPieChartBuilder — 這個建構工具適用於鏈結。


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);

參數

名稱類型說明
strategyChartHiddenDimensionStrategy隱藏列和欄採用的策略。

回攻員

EmbeddedChartBuilder:這個建構工具用於鏈結


setLegendPosition(position)

設定與圖表相關的圖例位置。根據預設,系統不提供圖例。

// Creates a line chart builder and sets the legend position to right.
var builder = Charts.newLineChart();
builder.setLegendPosition(Charts.Position.RIGHT);

參數

名稱類型說明
positionPosition圖例的位置。

回攻員

EmbeddedPieChartBuilder — 這個建構工具適用於鏈結。


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);

參數

名稱類型說明
textStyleTextStyle圖表圖例使用的文字樣式。

回攻員

EmbeddedPieChartBuilder — 這個建構工具適用於鏈結。


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);

參數

名稱類型說明
mergeStrategyChartMergeStrategy要使用的合併策略。

回攻員

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);

參數

名稱類型說明
headersInteger要視為標題的列數或欄數。負值會使系統自動偵測標頭。

回攻員

EmbeddedChartBuilder:這個建構工具用於鏈結


setOption(option, value)

設定這張圖表的進階選項。如要查看可用選項的清單,請參閱圖表設定選項

這個方法不會驗證您指定的選項適用於這個圖表類型,也不會驗證值的格式/結構是否正確無誤。

這個範例說明如何更改標題並設定圖例。

builder.setOption('title', 'Earnings projections');
builder.setOption('legend', {position: 'top', textStyle: {color: 'blue', fontSize: 16}});

參數

名稱類型說明
optionString選項的名稱。
valueObject選項的值。

回攻員

EmbeddedChartBuilder — 這個建構工具用於鏈結。


setPosition(anchorRowPos, anchorColPos, offsetX, offsetY)

設定位置,變更圖表在工作表中的位置。anchorRowPosanchorColPos 已建立索引。

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);

參數

名稱類型說明
anchorRowPosInteger圖表的頂端會固定在這個資料列中。
anchorColPosInteger圖表的左側錨定在這一欄。
offsetXInteger圖表右上角對齊的像素值。
offsetYInteger圖表的左下角會偏移這麼許多像素。

回攻員

EmbeddedChartBuilder:這個建構工具用於鏈結


setTitle(chartTitle)

設定圖表標題。標題會顯示在圖表的正上方。

// Creates a line chart builder and title to 'My Line Chart'.
var builder = Charts.newLineChart();
builder.setTitle('My Line Chart')

參數

名稱類型說明
chartTitleString圖表標題。

回攻員

EmbeddedPieChartBuilder — 這個建構工具適用於鏈結。


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);

參數

名稱類型說明
textStyleTextStyle圖表標題使用的文字樣式。您可以呼叫 Charts.newTextStyle() 來建立 TextStyleBuilder 物件。

回攻員

EmbeddedPieChartBuilder — 這個建構工具適用於鏈結。


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);

參數

名稱類型說明
transposeBoolean如果為 true,則用於建構圖表的資料列與資料欄會轉譯。

回攻員

EmbeddedChartBuilder:這個建構工具用於鏈結