Class EmbeddedChart

EmbeddedChart

Representa um gráfico incorporado a uma planilha.

Este exemplo mostra como modificar um gráfico:

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

Este exemplo mostra como criar um gráfico:

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

Métodos

MétodoTipo de retornoBreve descrição
asDataSourceChart()DataSourceChart|nullConverte para uma instância de gráfico de fonte de dados se o gráfico for um gráfico de fonte de dados ou null caso contrário.
getAs(contentType)BlobRetorna os dados dentro desse objeto como um blob convertido para o tipo de conteúdo especificado.
getBlob()BlobRetorna os dados dentro desse objeto como um blob.
getChartId()Integer|nullRetorna um identificador estável para o gráfico que é exclusivo na planilha que contém o gráfico ou null se o gráfico não estiver em uma planilha.
getContainerInfo()ContainerInfoRetorna informações sobre onde o gráfico está posicionado em uma planilha.
getHiddenDimensionStrategy()ChartHiddenDimensionStrategyRetorna a estratégia a ser usada para processar linhas e colunas ocultas.
getMergeStrategy()ChartMergeStrategyRetorna a estratégia de mesclagem usada quando há mais de um intervalo.
getNumHeaders()IntegerRetorna o número de linhas ou colunas do intervalo que são tratados como cabeçalhos.
getOptions()ChartOptionsRetorna as opções desse gráfico, como altura, cores e eixos.
getRanges()Range[]Retorna os intervalos que esse gráfico usa como fonte de dados.
getTransposeRowsAndColumns()BooleanSe true, as linhas e colunas usadas para preencher o gráfico serão trocadas.
modify()EmbeddedChartBuilderRetorna um EmbeddedChartBuilder que pode ser usado para modificar esse gráfico.

Documentação detalhada

asDataSourceChart()

Converte para uma instância de gráfico de fonte de dados se o gráfico for um gráfico de fonte de dados ou null caso contrário.

Retornar

DataSourceChart|null: o gráfico de fonte de dados.


getAs(contentType)

Retorna os dados dentro desse objeto como um blob convertido para o tipo de conteúdo especificado. Esse método adiciona a extensão apropriada ao nome do arquivo, por exemplo, "myfile.pdf". No entanto, ele pressupõe que a parte do nome do arquivo que segue o último período (se houver) seja uma extensão que precisa ser substituída. Consequentemente, "ShoppingList.12.25.2014" se torna "ShoppingList.12.25.pdf".

Para conferir as cotas diárias de conversões, consulte Cotas para serviços do Google. Os domínios do Google Workspace recém-criados podem estar temporariamente sujeitos a cotas mais rigorosas.

Parâmetros

NomeTipoDescrição
contentTypeStringO tipo MIME para converter. Para a maioria dos blobs, 'application/pdf' é a única opção válida. Para imagens no formato BMP, GIF, JPEG ou PNG, qualquer um de 'image/bmp', 'image/gif', 'image/jpeg', ou 'image/png' também é válido. Para um documento do Google Docs, 'text/markdown' também é válido.

Retornar

Blob: os dados como um blob.


getBlob()

Retorna os dados dentro desse objeto como um blob.

Retornar

Blob: os dados como um blob.


getChartId()

Retorna um identificador estável para o gráfico que é exclusivo na planilha que contém o gráfico ou null se o gráfico não estiver em uma planilha.

Retornar

Integer|null: um identificador de gráfico estável.


getContainerInfo()

Retorna informações sobre onde o gráfico está posicionado em uma planilha.

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

Retornar

ContainerInfo: um objeto que contém a posição do contêiner do gráfico.


getHiddenDimensionStrategy()

Retorna a estratégia a ser usada para processar linhas e colunas ocultas. O padrão é 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());

Retornar

ChartHiddenDimensionStrategy: a estratégia a ser usada para linhas e colunas ocultas.


getMergeStrategy()

Retorna a estratégia de mesclagem usada quando há mais de um intervalo. Se MERGE_ROWS, as linhas serão mescladas; se MERGE_COLUMNS, as colunas serão mescladas. O padrão é 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());

Retornar

ChartMergeStrategyMERGE_ROWS Se as linhas forem mescladas em vários intervalos; MERGE_COLUMNS se as colunas forem mescladas em vários intervalos.


getNumHeaders()

Retorna o número de linhas ou colunas do intervalo que são tratados como cabeçalhos.

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

Retornar

Integer: o número de linhas ou colunas tratados como cabeçalhos. Valores negativos indicam que os cabeçalhos são detectados automaticamente.


getOptions()

Retorna as opções desse gráfico, como altura, cores e eixos.

As opções retornadas são imutáveis.

Retornar

ChartOptions: as opções desse gráfico, como altura, cores e eixos.


getRanges()

Retorna os intervalos que esse gráfico usa como fonte de dados.

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

Retornar

Range[]: uma matriz de intervalos que servem como fonte de dados desse gráfico.


getTransposeRowsAndColumns()

Se true, as linhas e colunas usadas para preencher o gráfico serão trocadas. O padrão é 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());

Retornar

Boolean: True se as linhas e colunas usadas para construir o gráfico forem transpostas.


modify()

Retorna um EmbeddedChartBuilder que pode ser usado para modificar esse gráfico. Invoque sheet.updateChart(chart) para salvar as mudanças.

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

Retornar

EmbeddedChartBuilder: um builder para criar gráficos incorporados.