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차트 유형을 ColumnChart로 설정하고 EmbeddedColumnChartBuilder을 반환합니다.
asComboChart()EmbeddedComboChartBuilder차트 유형을 ComboChart로 설정하고 EmbeddedComboChartBuilder을 반환합니다.
asHistogramChart()EmbeddedHistogramChartBuilder차트 유형을 HistogramChart로 설정하고 EmbeddedHistogramChartBuilder를 반환합니다.
asLineChart()EmbeddedLineChartBuilder차트 유형을 LineChart로 설정하고 EmbeddedLineChartBuilder를 반환합니다.
asPieChart()EmbeddedPieChartBuilder차트 유형을 PieChart로 설정하고 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()

차트 유형을 ColumnChart로 설정하고 EmbeddedColumnChartBuilder을 반환합니다.

리턴

EmbeddedColumnChartBuilder: 열 차트 빌더입니다.


asComboChart()

차트 유형을 ComboChart로 설정하고 EmbeddedComboChartBuilder을 반환합니다.

리턴

EmbeddedComboChartBuilder: 콤보 차트 빌더


asHistogramChart()

차트 유형을 HistogramChart로 설정하고 EmbeddedHistogramChartBuilder를 반환합니다.

리턴

EmbeddedHistogramChartBuilder: 히스토그램 차트 빌더


asLineChart()

차트 유형을 LineChart로 설정하고 EmbeddedLineChartBuilder를 반환합니다.

리턴

EmbeddedLineChartBuilder: 선 차트 작성 도구


asPieChart()

차트 유형을 PieChart로 설정하고 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: 체이닝을 위한 이 빌더