Class EmbeddedChartBuilder

EmbeddedChartBuilder

Es un compilador que se usa para editar un EmbeddedChart. Los cambios realizados en el gráfico no se guardarán hasta que se llame a Sheet.updateChart(chart) en el gráfico que se volvió a compilar.

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

Métodos

MétodoTipo de datos que se muestraDescripción breve
addRange(range)EmbeddedChartBuilderAgrega un rango al gráfico que modifica este compilador.
asAreaChart()EmbeddedAreaChartBuilderEstablece el tipo de gráfico como AreaChart y muestra un EmbeddedAreaChartBuilder.
asBarChart()EmbeddedBarChartBuilderEstablece el tipo de gráfico en BarChart y muestra un EmbeddedBarChartBuilder.
asColumnChart()EmbeddedColumnChartBuilderEstablece el tipo de gráfico como ColumnChart y muestra un EmbeddedColumnChartBuilder.
asComboChart()EmbeddedComboChartBuilderEstablece el tipo de gráfico como ComboChart y muestra un EmbeddedComboChartBuilder.
asHistogramChart()EmbeddedHistogramChartBuilderEstablece el tipo de gráfico en HistogramChart y muestra un EmbeddedHistogramChartBuilder.
asLineChart()EmbeddedLineChartBuilderEstablece el tipo de gráfico como LineChart y muestra un EmbeddedLineChartBuilder.
asPieChart()EmbeddedPieChartBuilderEstablece el tipo de gráfico en PieChart y muestra un EmbeddedPieChartBuilder.
asScatterChart()EmbeddedScatterChartBuilderEstablece el tipo de gráfico en ScatterChart y muestra un EmbeddedScatterChartBuilder.
asTableChart()EmbeddedTableChartBuilderEstablece el tipo de gráfico en TableChart y muestra un EmbeddedTableChartBuilder.
build()EmbeddedChartCompila el gráfico para reflejar todos los cambios realizados en él.
clearRanges()EmbeddedChartBuilderQuita todos los rangos del gráfico que modifica este compilador.
getChartType()ChartTypeMuestra el tipo de gráfico actual.
getContainer()ContainerInfoMuestra el gráfico ContainerInfo, que encapsula dónde aparece en la hoja.
getRanges()Range[]Muestra una copia de la lista de rangos que actualmente proporcionan datos para este gráfico.
removeRange(range)EmbeddedChartBuilderQuita el rango especificado del gráfico que modifica este compilador.
setChartType(type)EmbeddedChartBuilderCambia el tipo de gráfico.
setHiddenDimensionStrategy(strategy)EmbeddedChartBuilderEstablece la estrategia que se usará para filas y columnas ocultas.
setMergeStrategy(mergeStrategy)EmbeddedChartBuilderEstablece la estrategia de combinación que se usará cuando exista más de un rango.
setNumHeaders(headers)EmbeddedChartBuilderEstablece el número de filas o columnas del rango que deben tratarse como encabezados.
setOption(option, value)EmbeddedChartBuilderEstablece las opciones avanzadas para este gráfico.
setPosition(anchorRowPos, anchorColPos, offsetX, offsetY)EmbeddedChartBuilderEstablece la posición y cambia la ubicación del gráfico en la hoja.
setTransposeRowsAndColumns(transpose)EmbeddedChartBuilderEstablece si se transponen las filas y columnas del gráfico.

Documentación detallada

addRange(range)

Agrega un rango al gráfico que modifica este compilador. No agrega el rango si ya se agregó al gráfico.

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

Parámetros

NombreTipoDescripción
rangeRangeEl rango que se agregará.

Devolvedor

EmbeddedChartBuilder: Este compilador se usa para encadenar.


asAreaChart()

Establece el tipo de gráfico como AreaChart y muestra un EmbeddedAreaChartBuilder.

Devolvedor

EmbeddedAreaChartBuilder: Es un compilador para un gráfico de áreas.


asBarChart()

Establece el tipo de gráfico en BarChart y muestra un EmbeddedBarChartBuilder.

Devolvedor

EmbeddedBarChartBuilder: Es un compilador para un gráfico de barras.


asColumnChart()

Establece el tipo de gráfico como ColumnChart y muestra un EmbeddedColumnChartBuilder.

Devolvedor

EmbeddedColumnChartBuilder: Es un compilador para un gráfico de columnas.


asComboChart()

Establece el tipo de gráfico como ComboChart y muestra un EmbeddedComboChartBuilder.

Devolvedor

EmbeddedComboChartBuilder: Es un compilador para un gráfico combinado.


asHistogramChart()

Establece el tipo de gráfico en HistogramChart y muestra un EmbeddedHistogramChartBuilder.

Devolvedor

EmbeddedHistogramChartBuilder: Es un compilador para un histograma.


asLineChart()

Establece el tipo de gráfico como LineChart y muestra un EmbeddedLineChartBuilder.

Devolvedor

EmbeddedLineChartBuilder: Es un compilador para un gráfico de líneas.


asPieChart()

Establece el tipo de gráfico en PieChart y muestra un EmbeddedPieChartBuilder.

Devolvedor

EmbeddedPieChartBuilder: Es un compilador para un gráfico circular.


asScatterChart()

Establece el tipo de gráfico en ScatterChart y muestra un EmbeddedScatterChartBuilder.

Devolvedor

EmbeddedScatterChartBuilder: Es un compilador para un gráfico de dispersión.


asTableChart()

Establece el tipo de gráfico en TableChart y muestra un EmbeddedTableChartBuilder.

Devolvedor

EmbeddedTableChartBuilder: Es un compilador para un gráfico de tablas.


build()

Compila el gráfico para reflejar todos los cambios realizados en él.

Este método no dibuja automáticamente el gráfico en la parte superior de la hoja de cálculo. Se debe insertar un gráfico nuevo a través de sheet.insertChart(chart) y uno existente se debe actualizar a través de 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);

Devolvedor

EmbeddedChart: Es el gráfico creado, que aún se debe agregar a la hoja de cálculo.


clearRanges()

Quita todos los rangos del gráfico que modifica este compilador.

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

Devolvedor

EmbeddedChartBuilder: Este compilador se usa para encadenar.


getChartType()

Muestra el tipo de gráfico actual.

Devolvedor

ChartType: Es el tipo de gráfico.


getContainer()

Muestra el gráfico ContainerInfo, que encapsula dónde aparece en la hoja.

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

Devolvedor

ContainerInfo: Es un objeto que contiene la posición del contenedor del gráfico.


getRanges()

Muestra una copia de la lista de rangos que actualmente proporcionan datos para este gráfico. Usa addRange(range) y removeRange(range) para modificar esta lista.

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

Devolvedor

Range[]: Es un array de rangos que sirve como el gráfico que se compilará la fuente de datos.


removeRange(range)

Quita el rango especificado del gráfico que modifica este compilador. No arroja un error si el rango no se encuentra en este gráfico.

El rango que se quite debe coincidir con un rango agregado mediante addRange(range). De lo contrario, no se realizará ningún cambio en el gráfico. Este método no se puede usar para quitar valores de un rango de forma parcial.

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

Parámetros

NombreTipoDescripción
rangeRangeEl rango que se quitará.

Devolvedor

EmbeddedChartBuilder: Este compilador se usa para encadenar.


setChartType(type)

Cambia el tipo de gráfico. Por el momento, no se admiten todos los tipos de gráficos incorporados. Consulta los 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);

Parámetros

NombreTipoDescripción
typeChartTypeEl tipo al que se cambiará este gráfico.

Devolvedor

EmbeddedChartBuilder: Este compilador se usa para encadenar.


setHiddenDimensionStrategy(strategy)

Establece la estrategia que se usará para filas y columnas ocultas. La configuración predeterminada es 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);

Parámetros

NombreTipoDescripción
strategyChartHiddenDimensionStrategyLa estrategia que se usa para filas y columnas ocultas.

Devolvedor

EmbeddedChartBuilder: Este compilador se usa para encadenar.


setMergeStrategy(mergeStrategy)

Establece la estrategia de combinación que se usará cuando exista más de un rango. Si es MERGE_ROWS, las filas se combinarán; si es MERGE_COLUMNS, las columnas se combinarán. La configuración predeterminada es 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);

Parámetros

NombreTipoDescripción
mergeStrategyChartMergeStrategyLa estrategia de combinación que se usará.

Devolvedor

EmbeddedChartBuilder: Este compilador se usa para encadenar.


setNumHeaders(headers)

Establece el número de filas o columnas del rango que deben tratarse como encabezados.

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

Parámetros

NombreTipoDescripción
headersIntegerEl número de filas o columnas que se tratarán como encabezados. Los valores negativos hacen que los encabezados se detecten automáticamente.

Devolvedor

EmbeddedChartBuilder: Este compilador se usa para encadenar.


setOption(option, value)

Establece las opciones avanzadas para este gráfico. Para ver una lista de las opciones disponibles, consulta Opciones de configuración del gráfico.

Este método no valida que la opción que especificas sea válida para este tipo de gráfico ni si el valor tiene el formato o la estructura correctos.

En este ejemplo, se muestra cómo cambiar el título y configurar una leyenda.

builder.setOption('title', 'Earnings projections');
builder.setOption('legend', {position: 'top', textStyle: {color: 'blue', fontSize: 16}});

Parámetros

NombreTipoDescripción
optionStringEs el nombre de la opción.
valueObjectEs el valor de la opción.

Devolvedor

EmbeddedChartBuilder: Este compilador se usa para encadenar.


setPosition(anchorRowPos, anchorColPos, offsetX, offsetY)

Establece la posición y cambia la ubicación del gráfico en la hoja. anchorRowPos y anchorColPos están indexadas en 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);

Parámetros

NombreTipoDescripción
anchorRowPosIntegerEl lado superior del gráfico está anclado en esta fila.
anchorColPosIntegerEl lado izquierdo del gráfico está anclado en esta columna.
offsetXIntegerLa esquina superior derecha del gráfico está desplazada esta cantidad de píxeles.
offsetYIntegerLa esquina inferior izquierda del gráfico está desplazada por esta cantidad de píxeles.

Devolvedor

EmbeddedChartBuilder: Este compilador se usa para encadenar.


setTransposeRowsAndColumns(transpose)

Establece si se transponen las filas y columnas del gráfico. Si se configura como true, las filas y columnas se cambian. La configuración predeterminada es 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);

Parámetros

NombreTipoDescripción
transposeBooleanSi es true, se transponen las filas y columnas que se usan para construir el gráfico.

Devolvedor

EmbeddedChartBuilder: Este compilador se usa para encadenar.