Class EmbeddedChart

Gráfico incorporado

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 novo 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É convertido em uma instância de gráfico de fonte de dados se o gráfico for uma fonte de dados ou null.
getAs(contentType)BlobRetorna os dados dentro deste objeto como um blob convertido para o tipo de conteúdo especificado.
getBlob()BlobRetorne os dados dentro deste objeto como um blob.
getChartId()IntegerRetorna 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 mais de um intervalo existe.
getNumHeaders()IntegerRetorna o número de linhas ou colunas do intervalo que são tratadas como cabeçalhos.
getOptions()ChartOptionsRetorna as opções do 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 são trocadas.
modify()EmbeddedChartBuilderRetorna um EmbeddedChartBuilder que pode ser usado para modificar o gráfico.

Documentação detalhada

asDataSourceChart()

É convertido em uma instância de gráfico de fonte de dados se o gráfico for uma fonte de dados ou null.

Retornar

DataSourceChart: o gráfico da fonte de dados.


getAs(contentType)

Retorna os dados dentro deste 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 ponto (se houver) é uma extensão existente 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 dos Serviços do Google. Os domínios do Google Workspace recém-criados podem estar temporariamente sujeitos a cotas mais rígidas.

Parâmetros

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

Retornar

Blob: os dados como um blob.


getBlob()

Retorne os dados dentro deste 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: 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 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(),
);

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 valor 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 mais de um intervalo existe. Se MERGE_ROWS, as linhas são mescladas. Se MERGE_COLUMNS, as colunas são mescladas. O valor 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

ChartMergeStrategy: MERGE_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 tratadas 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 tratadas como cabeçalhos. Valores negativos indicam que os cabeçalhos são detectados automaticamente.


getOptions()

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

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

Retornar

ChartOptions: as opções do 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 a fonte de dados do gráfico.


getTransposeRowsAndColumns()

Se true, as linhas e colunas usadas para preencher o gráfico sã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 o gráfico. Invoque sheet.updateChart(chart) para salvar as alterações.

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