Class EmbeddedChart

삽입된차트

스프레드시트에 삽입된 차트를 나타냅니다.

다음 예는 기존 차트를 수정하는 방법을 보여줍니다.

const sheet = SpreadsheetApp.getActiveSheet();
const range = sheet.getRange('A2:B8');
let 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);

다음 예에서는 새 차트를 만드는 방법을 보여줍니다.

function newChart(range) {
  const sheet = SpreadsheetApp.getActiveSheet();
  const chartBuilder = sheet.newChart();
  chartBuilder.addRange(range)
      .setChartType(Charts.ChartType.LINE)
      .setOption('title', 'My Line Chart!');
  sheet.insertChart(chartBuilder.build());
}

메서드

메서드반환 유형간략한 설명
asDataSourceChart()DataSourceChart차트가 데이터 소스 차트인 경우 데이터 소스 차트 인스턴스로 전송하고 그렇지 않은 경우에는 null로 전송합니다.
getAs(contentType)Blob이 객체 내의 데이터를 지정된 콘텐츠 유형으로 변환된 blob으로 반환합니다.
getBlob()Blob이 객체 내의 데이터를 blob으로 반환합니다.
getChartId()Integer차트가 포함된 스프레드시트에서 고유한 차트의 안정적인 식별자를 반환하거나 차트가 스프레드시트에 없는 경우 null을 반환합니다.
getContainerInfo()ContainerInfo시트 내에서 차트가 배치된 위치에 관한 정보를 반환합니다.
getHiddenDimensionStrategy()ChartHiddenDimensionStrategy숨겨진 행과 열을 처리하는 데 사용할 전략을 반환합니다.
getMergeStrategy()ChartMergeStrategy범위가 두 개 이상 있을 때 사용되는 병합 전략을 반환합니다.
getNumHeaders()Integer헤더로 취급되는 범위의 행 또는 열 수를 반환합니다.
getOptions()ChartOptions높이, 색상, 축과 같은 이 차트의 옵션을 반환합니다.
getRanges()Range[]이 차트에서 데이터 소스로 사용하는 범위를 반환합니다.
getTransposeRowsAndColumns()Booleantrue인 경우 차트를 채우는 데 사용된 행과 열이 전환됩니다.
modify()EmbeddedChartBuilder이 차트를 수정하는 데 사용할 수 있는 EmbeddedChartBuilder를 반환합니다.

자세한 문서

asDataSourceChart()

차트가 데이터 소스 차트인 경우 데이터 소스 차트 인스턴스로 전송하고 그렇지 않은 경우에는 null로 전송합니다.

리턴

DataSourceChart: 데이터 소스 차트입니다.


getAs(contentType)

이 객체 내의 데이터를 지정된 콘텐츠 유형으로 변환된 blob으로 반환합니다. 이 메서드는 파일 이름에 적절한 확장자(예: 'myfile.pdf')를 추가합니다. 그러나 마지막 마침표 (있는 경우) 뒤에 오는 파일 이름 부분이 대체해야 할 기존 확장 프로그램이라고 가정합니다. 따라서 'ShoppingList.12.25.2014'가 'ShoppingList.12.25.pdf'가 됩니다.

전환의 일일 할당량을 보려면 Google 서비스 할당량을 참고하세요. 새로 생성된 Google Workspace 도메인에는 일시적으로 더 엄격한 할당량이 적용될 수 있습니다.

매개변수

이름유형설명
contentTypeString변환할 MIME 유형입니다. 대부분의 blob의 경우 'application/pdf'만 유효한 옵션입니다. BMP, GIF, JPEG 또는 PNG 형식의 이미지의 경우 'image/bmp', 'image/gif', 'image/jpeg' 또는 'image/png'도 유효합니다. Google Docs 문서의 경우 'text/markdown'도 유효합니다.

리턴

Blob: 데이터가 blob입니다.


getBlob()

이 객체 내의 데이터를 blob으로 반환합니다.

리턴

Blob: 데이터가 blob입니다.


getChartId()

차트가 포함된 스프레드시트에서 고유한 차트의 안정적인 식별자를 반환하거나 차트가 스프레드시트에 없는 경우 null을 반환합니다.

리턴

Integer: 안정적인 차트 식별자입니다.


getContainerInfo()

시트 내에서 차트가 배치된 위치에 관한 정보를 반환합니다.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const chart = sheet.newChart()
                  .setChartType(Charts.ChartType.BAR)
                  .addRange(sheet.getRange('A1:B8'))
                  .setPosition(5, 5, 0, 0)
                  .build();

const containerInfo = chart.getContainerInfo();

// 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: 차트 컨테이너의 위치를 포함하는 객체


getHiddenDimensionStrategy()

숨겨진 행과 열을 처리하는 데 사용할 전략을 반환합니다. 기본값은 IGNORE_ROWS입니다.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:B5');
const chart = sheet.newChart()
                  .setChartType(Charts.ChartType.BAR)
                  .addRange(range)
                  .setHiddenDimensionStrategy(
                      Charts.ChartHiddenDimensionStrategy.IGNORE_COLUMNS,
                      )
                  .setPosition(5, 5, 0, 0)
                  .build();

// Logs the strategy to use for hidden rows and columns which is
// Charts.ChartHiddenDimensionStrategy.IGNORE_COLUMNS in this case.
Logger.log(chart.getHiddenDimensionStrategy());

리턴

ChartHiddenDimensionStrategy: 숨겨진 행과 열에 사용할 전략입니다.


getMergeStrategy()

범위가 두 개 이상 있을 때 사용되는 병합 전략을 반환합니다. MERGE_ROWS이면 행이 병합되고 MERGE_COLUMNS이면 열이 병합됩니다. 기본값은 MERGE_COLUMNS입니다.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:B10');
const range2 = sheet.getRange('C1:C10');
const chart = sheet.newChart()
                  .setChartType(Charts.ChartType.BAR)
                  .addRange(range)
                  .addRange(range2)
                  .setMergeStrategy(Charts.ChartMergeStrategy.MERGE_ROWS)
                  .setPosition(5, 5, 0, 0)
                  .build();

// Logs whether rows of multiple ranges are merged, which is MERGE_ROWS in this
// case.
Logger.log(chart.getMergeStrategy());

리턴

ChartMergeStrategy: 여러 범위에서 행이 병합된 경우 MERGE_ROWS, 여러 범위에서 열이 병합된 경우 MERGE_COLUMNS


getNumHeaders()

헤더로 취급되는 범위의 행 또는 열 수를 반환합니다.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:B5');
const chart = sheet.newChart()
                  .setChartType(Charts.ChartType.BAR)
                  .addRange(range)
                  .setNumHeaders(1)
                  .setPosition(5, 5, 0, 0)
                  .build();

// Logs the number of rows or columns to use as headers, which is 1 in this
// case.
Logger.log(chart.getHeaders());

리턴

Integer: 헤더로 취급되는 행 또는 열의 수입니다. 음수 값은 헤더가 자동으로 감지됨을 나타냅니다.


getOptions()

높이, 색상, 축과 같은 이 차트의 옵션을 반환합니다.

반환된 옵션은 변경할 수 없습니다.

리턴

ChartOptions: 이 차트의 옵션(예: 높이, 색상, 축)입니다.


getRanges()

이 차트에서 데이터 소스로 사용하는 범위를 반환합니다.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const chart = sheet.newChart()
                  .setChartType(Charts.ChartType.BAR)
                  .addRange(sheet.getRange('A1:B8'))
                  .setPosition(5, 5, 0, 0)
                  .build();

const ranges = chart.getRanges();

// There's only one range as a data source for this chart,
// so this logs "A1:B8"
for (const i in ranges) {
  const range = ranges[i];
  Logger.log(range.getA1Notation());
}

리턴

Range[]: 이 차트의 데이터 소스로 사용되는 범위 배열


getTransposeRowsAndColumns()

true인 경우 차트를 채우는 데 사용된 행과 열이 전환됩니다. 기본값은 false입니다.

const ss = SpreadsheetApp.getActiveSpreadsheet();
const sheet = ss.getSheets()[0];

const range = sheet.getRange('A1:B5');
const chart = sheet.newChart()
                  .addRange(range)
                  .setChartType(Charts.ChartType.BAR)
                  .setTransposeRowsAndColumns(true)
                  .setPosition(5, 5, 0, 0)
                  .build();

// Logs whether rows and columns should be transposed, which is true in this
// case.
Logger.log(chart.getTransposeRowsAndColumns());

리턴

Boolean: 차트를 구성하는 데 사용된 행과 열이 전치된 경우 true입니다.


modify()

이 차트를 수정하는 데 사용할 수 있는 EmbeddedChartBuilder를 반환합니다. sheet.updateChart(chart)를 호출하여 변경사항을 저장합니다.

const sheet = SpreadsheetApp.getActiveSheet();
let chart = sheet.getCharts()[0];
chart = chart.modify()
            .setOption('width', 800)
            .setOption('height', 640)
            .setPosition(5, 5, 0, 0)
            .build();
sheet.updateChart(chart);

리턴

EmbeddedChartBuilder: 삽입된 차트를 만드는 빌더