Class EmbeddedChartBuilder

EmbeddedChartBuilder

Compilador que se usa para editar un EmbeddedChart. Los cambios realizados en el gráfico no se guardan hasta que se llama 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 en 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 en ColumnChart y muestra un EmbeddedColumnChartBuilder.
asComboChart()EmbeddedComboChartBuilderEstablece el tipo de gráfico en 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 en 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 el gráfico 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 las 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 la cantidad de filas o columnas del rango que deben tratarse como encabezados.
setOption(option, value)EmbeddedChartBuilderEstablece opciones avanzadas para este gráfico.
setPosition(anchorRowPos, anchorColPos, offsetX, offsetY)EmbeddedChartBuilderEstablece la posición y cambia el lugar en que aparece el gráfico en la hoja.
setTransposeRowsAndColumns(transpose)EmbeddedChartBuilderEstablece si las columnas y las filas del gráfico están transpuestas.

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á.

Volver

EmbeddedChartBuilder: Este compilador, para encadenar


asAreaChart()

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

Volver

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


asBarChart()

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

Volver

EmbeddedBarChartBuilder: un compilador para un gráfico de barras


asColumnChart()

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

Volver

EmbeddedColumnChartBuilder: un compilador para un gráfico de columnas


asComboChart()

Establece el tipo de gráfico en comboChart y muestra un EmbeddedComboChartBuilder.

Volver

EmbeddedComboChartBuilder: un compilador para un gráfico combinado


asHistogramChart()

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

Volver

EmbeddedHistogramChartBuilder: un compilador para un gráfico de histograma


asLineChart()

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

Volver

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


asPieChart()

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

Volver

EmbeddedPieChartBuilder: un compilador para un gráfico circular


asScatterChart()

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

Volver

EmbeddedScatterChartBuilder: un compilador para un diagrama de dispersión


asTableChart()

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

Volver

EmbeddedTableChartBuilder: un compilador para un gráfico de tabla


build()

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

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

Volver

EmbeddedChart: Es el gráfico creado, que debe agregarse 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);

Volver

EmbeddedChartBuilder: Este compilador, para encadenar


getChartType()

Muestra el tipo de gráfico actual.

Volver

ChartType: Es el tipo de gráfico.


getContainer()

Muestra el gráfico ContainerInfo, que encapsula dónde aparece el gráfico 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());

Volver

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

Volver

Range[]: Es un arreglo de rangos que sirven como gráfico para compilar la fuente de datos.


removeRange(range)

Quita el rango especificado del gráfico que modifica este compilador. No muestra un error si el rango no está 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á.

Volver

EmbeddedChartBuilder: Este compilador, para encadenar


setChartType(type)

Cambia el tipo de gráfico. Actualmente, 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 en el que se cambiará este gráfico.

Volver

EmbeddedChartBuilder: Este compilador, para encadenar


setHiddenDimensionStrategy(strategy)

Establece la estrategia que se usará para las 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 usará para las filas y columnas ocultas.

Volver

EmbeddedChartBuilder: Este compilador, 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 combinan; si es MERGE_COLUMNS, las columnas se combinan. 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á.

Volver

EmbeddedChartBuilder: Este compilador, para encadenar


setNumHeaders(headers)

Establece la cantidad 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
headersIntegerLa cantidad de filas o columnas que se tratarán como encabezados. Los valores negativos provocan que los encabezados se detecten automáticamente.

Volver

EmbeddedChartBuilder: Este compilador, para encadenar


setOption(option, value)

Establece 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 establecer una leyenda.

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

Parámetros

NombreTipoDescripción
optionStringEl nombre de la opción.
valueObjectEl valor de la opción.

Volver

EmbeddedChartBuilder: Este compilador, para encadenar.


setPosition(anchorRowPos, anchorColPos, offsetX, offsetY)

Establece la posición y cambia el lugar en que aparece el gráfico en la hoja. anchorRowPos y anchorColPos tienen la indexación 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 se compensa con esta cantidad de píxeles.
offsetYIntegerLa esquina inferior izquierda del gráfico se compensa con esta cantidad de píxeles.

Volver

EmbeddedChartBuilder: Este compilador, para encadenar


setTransposeRowsAndColumns(transpose)

Establece si las columnas y las filas del gráfico están transpuestas. 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, las filas y columnas que se usan para construir el gráfico se transponen.

Volver

EmbeddedChartBuilder: Este compilador, para encadenar