Class EmbeddedChartBuilder

EmbeddedChartBuilder

EmbeddedChart の編集に使用されるビルダー。グラフに加えた変更は、 再ビルドされたチャートで Sheet.updateChart(chart) が呼び出されます。

var sheet = SpreadsheetApp.getActiveSheet();
var range = sheet.getRange("A1:B8");
var chart = sheet.getCharts()[0];
chart = chart.modify()
    .addRange(range)
    .setOption('title', 'Updated!')
    .setOption('animation.duration', 500)
    .setPosition(2,2,0,0)
    .build();
sheet.updateChart(chart);

メソッド

メソッド戻り値の型概要
addRange(range)EmbeddedChartBuilderこのビルダーで変更されるグラフに範囲を追加します。
asAreaChart()EmbeddedAreaChartBuilderグラフの種類を AreaChart に設定し、EmbeddedAreaChartBuilder を返します。
asBarChart()EmbeddedBarChartBuilderグラフの種類を BarChart に設定し、EmbeddedBarChartBuilder を返します。
asColumnChart()EmbeddedColumnChartBuilderグラフの種類を縦棒グラフに設定し、EmbeddedColumnChartBuilder を返します。
asComboChart()EmbeddedComboChartBuilderグラフの種類を ComboChart に設定し、EmbeddedComboChartBuilder を返します。
asHistogramChart()EmbeddedHistogramChartBuilderグラフの種類を HistogramChart に設定し、EmbeddedHistogramChartBuilder を返します。
asLineChart()EmbeddedLineChartBuilderグラフの種類を LineChart に設定し、EmbeddedLineChartBuilder を返します。
asPieChart()EmbeddedPieChartBuilderグラフの種類を円グラフに設定し、EmbeddedPieChartBuilder を返します。
asScatterChart()EmbeddedScatterChartBuilderグラフの種類を ScatterChart に設定し、EmbeddedScatterChartBuilder を返します。
asTableChart()EmbeddedTableChartBuilderグラフの種類を TableChart に設定し、EmbeddedTableChartBuilder を返します。
build()EmbeddedChartグラフに加えた変更がすべて反映されるグラフを作成します。
clearRanges()EmbeddedChartBuilderこのビルダーによって変更されるグラフからすべての範囲を削除します。
getChartType()ChartType現在のグラフの種類を返します。
getContainer()ContainerInfoグラフ ContainerInfo を返します。これにより、グラフがグラフに表示される位置がカプセル化されます。 できます。
getRanges()Range[]現在このグラフのデータを提供している範囲のリストのコピーを返します。
removeRange(range)EmbeddedChartBuilder指定した範囲を、このビルダーによって変更されるグラフから削除します。
setChartType(type)EmbeddedChartBuilderグラフの種類を変更します。
setHiddenDimensionStrategy(strategy)EmbeddedChartBuilder非表示の行と列に使用する戦略を設定します。
setMergeStrategy(mergeStrategy)EmbeddedChartBuilder複数の範囲が存在する場合に使用するマージ戦略を設定します。
setNumHeaders(headers)EmbeddedChartBuilderヘッダーとして扱う範囲の行数または列数を設定します。
setOption(option, value)EmbeddedChartBuilderこのグラフの詳細オプションを設定します。
setPosition(anchorRowPos, anchorColPos, offsetX, offsetY)EmbeddedChartBuilderシート上でのグラフの表示位置を変更して、位置を設定します。
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()

グラフの種類を縦棒グラフに設定し、EmbeddedColumnChartBuilder を返します。

戻る

EmbeddedColumnChartBuilder - 縦棒グラフのビルダー


asComboChart()

グラフの種類を ComboChart に設定し、EmbeddedComboChartBuilder を返します。

戻る

EmbeddedComboChartBuilder - 複合グラフのビルダー


asHistogramChart()

グラフの種類を HistogramChart に設定し、EmbeddedHistogramChartBuilder を返します。

戻る

EmbeddedHistogramChartBuilder - ヒストグラム グラフのビルダー


asLineChart()

グラフの種類を LineChart に設定し、EmbeddedLineChartBuilder を返します。

戻る

EmbeddedLineChartBuilder - 折れ線グラフのビルダー


asPieChart()

グラフの種類を円グラフに設定し、EmbeddedPieChartBuilder を返します。

戻る

EmbeddedPieChartBuilder - 円グラフのビルダー


asScatterChart()

グラフの種類を ScatterChart に設定し、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 - このビルダー(チェーン用)


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 - このビルダー(チェーン用)


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 - このビルダー(チェーン用)


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

パラメータ

名前説明
anchorRowPosIntegerグラフの上側がこの行に固定されています。
anchorColPosIntegerグラフの左側がこの列に固定されます。
offsetXIntegerグラフの右上隅を、ここで指定したピクセル数でオフセットします。
offsetYIntegerグラフの左下隅のオフセットを、ここで指定したピクセル数にします。

戻る

EmbeddedChartBuilder - このビルダー(チェーン用)


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

パラメータ

名前説明
transposeBooleantrue の場合、グラフの作成に使用される行と列は次のようになります。 行っています。

戻る

EmbeddedChartBuilder - このビルダー(チェーン用)