Class EmbeddedChartBuilder

Trình tạobiểu đồ được nhúng

Trình tạo dùng để chỉnh sửa EmbeddedChart. Các thay đổi đối với biểu đồ sẽ không được lưu cho đến khi Sheet.updateChart(chart) được gọi trên biểu đồ được tạo lại.

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

Phương thức

Phương thứcLoại dữ liệu trả vềMô tả ngắn
addRange(range)EmbeddedChartBuilderThêm một dải ô vào biểu đồ mà trình tạo này sửa đổi.
asAreaChart()EmbeddedAreaChartBuilderĐặt loại biểu đồ thành AreaChart và trả về EmbeddedAreaChartBuilder.
asBarChart()EmbeddedBarChartBuilderĐặt loại biểu đồ thành BarChart và trả về EmbeddedBarChartBuilder.
asColumnChart()EmbeddedColumnChartBuilderĐặt loại biểu đồ thành ColumnChart và trả về EmbeddedColumnChartBuilder.
asComboChart()EmbeddedComboChartBuilderĐặt loại biểu đồ thành ComboChart và trả về EmbeddedComboChartBuilder.
asHistogramChart()EmbeddedHistogramChartBuilderĐặt loại biểu đồ thành HistogramChart và trả về EmbeddedHistogramChartBuilder.
asLineChart()EmbeddedLineChartBuilderĐặt loại biểu đồ thành LineChart và trả về EmbeddedLineChartBuilder.
asPieChart()EmbeddedPieChartBuilderĐặt loại biểu đồ thành PieChart và trả về EmbeddedPieChartBuilder.
asScatterChart()EmbeddedScatterChartBuilderĐặt loại biểu đồ thành ScatterChart và trả về EmbeddedScatterChartBuilder.
asTableChart()EmbeddedTableChartBuilderĐặt loại biểu đồ thành TableChart và trả về EmbeddedTableChartBuilder.
build()EmbeddedChartTạo biểu đồ để phản ánh tất cả thay đổi đã thực hiện đối với biểu đồ đó.
clearRanges()EmbeddedChartBuilderXoá tất cả các dải ô khỏi biểu đồ mà trình tạo này sửa đổi.
getChartType()ChartTypeTrả về loại biểu đồ hiện tại.
getContainer()ContainerInfoTrả về biểu đồ ContainerInfo, bao gồm vị trí biểu đồ xuất hiện trên trang tính.
getRanges()Range[]Trả về bản sao của danh sách các dải ô hiện đang cung cấp dữ liệu cho biểu đồ này.
removeRange(range)EmbeddedChartBuilderXoá phạm vi đã chỉ định khỏi biểu đồ mà trình tạo này sửa đổi.
setChartType(type)EmbeddedChartBuilderThay đổi loại biểu đồ.
setHiddenDimensionStrategy(strategy)EmbeddedChartBuilderĐặt chiến lược để sử dụng cho các hàng và cột ẩn.
setMergeStrategy(mergeStrategy)EmbeddedChartBuilderĐặt chiến lược hợp nhất để sử dụng khi có nhiều dải ô.
setNumHeaders(headers)EmbeddedChartBuilderĐặt số lượng hàng hoặc cột của dải ô cần được coi là tiêu đề.
setOption(option, value)EmbeddedChartBuilderĐặt các tuỳ chọn nâng cao cho biểu đồ này.
setPosition(anchorRowPos, anchorColPos, offsetX, offsetY)EmbeddedChartBuilderĐặt vị trí, thay đổi vị trí biểu đồ xuất hiện trên trang tính.
setTransposeRowsAndColumns(transpose)EmbeddedChartBuilderĐặt xem hàng và cột của biểu đồ có được chuyển vị hay không.

Tài liệu chi tiết

addRange(range)

Thêm một dải ô vào biểu đồ mà trình tạo này sửa đổi. Không thêm dải ô nếu dải ô đó đã được thêm vào biểu đồ.

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

sheet.insertChart(chart);

Tham số

TênLoạiMô tả
rangeRangeDải ô cần thêm.

Cầu thủ trả bóng

EmbeddedChartBuilder – trình tạo này, để tạo chuỗi


asAreaChart()

Đặt loại biểu đồ thành AreaChart và trả về EmbeddedAreaChartBuilder.

Cầu thủ trả bóng

EmbeddedAreaChartBuilder – một trình tạo cho biểu đồ vùng


asBarChart()

Đặt loại biểu đồ thành BarChart và trả về EmbeddedBarChartBuilder.

Cầu thủ trả bóng

EmbeddedBarChartBuilder – một trình tạo cho biểu đồ thanh


asColumnChart()

Đặt loại biểu đồ thành ColumnChart và trả về EmbeddedColumnChartBuilder.

Cầu thủ trả bóng

EmbeddedColumnChartBuilder – một trình tạo cho biểu đồ cột


asComboChart()

Đặt loại biểu đồ thành ComboChart và trả về EmbeddedComboChartBuilder.

Cầu thủ trả bóng

EmbeddedComboChartBuilder – trình tạo biểu đồ kết hợp


asHistogramChart()

Đặt loại biểu đồ thành HistogramChart và trả về EmbeddedHistogramChartBuilder.

Cầu thủ trả bóng

EmbeddedHistogramChartBuilder – một trình tạo cho biểu đồ dạng hình thang


asLineChart()

Đặt loại biểu đồ thành LineChart và trả về EmbeddedLineChartBuilder.

Cầu thủ trả bóng

EmbeddedLineChartBuilder – trình tạo biểu đồ dạng đường


asPieChart()

Đặt loại biểu đồ thành PieChart và trả về EmbeddedPieChartBuilder.

Cầu thủ trả bóng

EmbeddedPieChartBuilder – trình tạo biểu đồ hình tròn


asScatterChart()

Đặt loại biểu đồ thành ScatterChart và trả về EmbeddedScatterChartBuilder.

Cầu thủ trả bóng

EmbeddedScatterChartBuilder – một trình tạo cho biểu đồ tán xạ


asTableChart()

Đặt loại biểu đồ thành TableChart và trả về EmbeddedTableChartBuilder.

Cầu thủ trả bóng

EmbeddedTableChartBuilder – một trình tạo cho biểu đồ dạng bảng


build()

Tạo biểu đồ để phản ánh tất cả thay đổi đã thực hiện đối với biểu đồ đó.

Phương thức này không tự động vẽ biểu đồ trên đầu bảng tính. Bạn phải chèn biểu đồ mới thông qua sheet.insertChart(chart) và cập nhật biểu đồ hiện có thông qua sheet.updateChart(chart).

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)
                  .setPosition(5, 5, 0, 0)
                  .build();

sheet.insertChart(chart);

Cầu thủ trả bóng

EmbeddedChart – biểu đồ đã tạo, vẫn phải được thêm vào bảng tính


clearRanges()

Xoá tất cả các dải ô khỏi biểu đồ mà trình tạo này sửa đổi.

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

// This code updates the chart to use only the new ranges while preserving the
// existing formatting of the chart.
const chart = sheet.getCharts()[0];
const newChart = chart.modify()
                     .clearRanges()
                     .addRange(sheet.getRange('A1:A5'))
                     .addRange(sheet.getRange('B1:B5'))
                     .build();
sheet.updateChart(newChart);

Cầu thủ trả bóng

EmbeddedChartBuilder – trình tạo này, để tạo chuỗi


getChartType()

Trả về loại biểu đồ hiện tại.

Cầu thủ trả bóng

ChartType – loại biểu đồ


getContainer()

Trả về biểu đồ ContainerInfo, bao gồm vị trí biểu đồ xuất hiện trên trang tính.

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

const 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()
const containerInfo = chartBuilder.getContainer();

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

Cầu thủ trả bóng

ContainerInfo – một đối tượng chứa vị trí của vùng chứa biểu đồ


getRanges()

Trả về bản sao của danh sách các dải ô hiện đang cung cấp dữ liệu cho biểu đồ này. Sử dụng addRange(range)removeRange(range) để sửa đổi danh sách này.

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

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

const ranges = chartBuilder.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());
}

Cầu thủ trả bóng

Range[] – một mảng các dải ô đóng vai trò là nguồn dữ liệu của biểu đồ cần tạo


removeRange(range)

Xoá phạm vi đã chỉ định khỏi biểu đồ mà trình tạo này sửa đổi. Không gửi lỗi nếu phạm vi không có trong biểu đồ này.

Phạm vi đã xoá phải khớp với phạm vi được thêm thông qua addRange(range); nếu không, biểu đồ sẽ không thay đổi. Bạn không thể sử dụng phương thức này để xoá một phần giá trị khỏi một dải ô.

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

const firstRange = sheet.getRange('A1:B5');
const secondRange = sheet.getRange('A6:B8');

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

const chart = chartBuilder.build();

sheet.insertChart(chart);

Tham số

TênLoạiMô tả
rangeRangeDải ô cần xoá.

Cầu thủ trả bóng

EmbeddedChartBuilder – trình tạo này, để tạo chuỗi


setChartType(type)

Thay đổi loại biểu đồ. Không phải tất cả các loại biểu đồ được nhúng đều được hỗ trợ. Vui lòng xem ChartType.

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)
                  .setPosition(5, 5, 0, 0)
                  .build();

sheet.insertChart(chart);

Tham số

TênLoạiMô tả
typeChartTypeLoại biểu đồ mà bạn muốn thay đổi biểu đồ này thành.

Cầu thủ trả bóng

EmbeddedChartBuilder – trình tạo này, để tạo chuỗi


setHiddenDimensionStrategy(strategy)

Đặt chiến lược để sử dụng cho các hàng và cột ẩn. Giá trị mặc định là 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();

sheet.insertChart(chart);

Tham số

TênLoạiMô tả
strategyChartHiddenDimensionStrategyChiến lược sử dụng cho các hàng và cột ẩn.

Cầu thủ trả bóng

EmbeddedChartBuilder – trình tạo này, để tạo chuỗi


setMergeStrategy(mergeStrategy)

Đặt chiến lược hợp nhất để sử dụng khi có nhiều dải ô. Nếu là MERGE_ROWS, các hàng sẽ được hợp nhất; nếu là MERGE_COLUMNS, các cột sẽ được hợp nhất. Mặc định là MERGE_COLUMNS.

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

const range = sheet.getRange('A1:B10');
const range2 = sheet.getRange('C:C10');
const 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);

Tham số

TênLoạiMô tả
mergeStrategyChartMergeStrategyChiến lược hợp nhất cần sử dụng.

Cầu thủ trả bóng

EmbeddedChartBuilder – trình tạo này, để tạo chuỗi


setNumHeaders(headers)

Đặt số lượng hàng hoặc cột của dải ô cần được coi là tiêu đề.

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

sheet.insertChart(chart);

Tham số

TênLoạiMô tả
headersIntegerSố lượng hàng hoặc cột cần coi là tiêu đề. Giá trị âm sẽ khiến tiêu đề được tự động phát hiện.

Cầu thủ trả bóng

EmbeddedChartBuilder – trình tạo này, để tạo chuỗi


setOption(option, value)

Đặt các tuỳ chọn nâng cao cho biểu đồ này. Để xem danh sách các tuỳ chọn hiện có, hãy xem phần Tuỳ chọn cấu hình biểu đồ.

Phương thức này không xác thực liệu tuỳ chọn bạn chỉ định có hợp lệ cho loại biểu đồ này hay không, cũng như liệu giá trị có đúng định dạng/cấu trúc hay không.

Ví dụ này cho biết cách thay đổi tiêu đề và đặt chú giải.

const spreadsheet = SpreadsheetApp.getActiveSpreadsheet();
const sheet = spreadsheet.getSheets()[0];
const chart = sheet.newChart()
 .setOption('title', 'Earnings projections')
 .setOption('legend', {
   position: 'top',
   textStyle: { color: 'blue', fontSize: 16 },
 }).build();

Tham số

TênLoạiMô tả
optionStringTên của tuỳ chọn.
valueObjectGiá trị của tuỳ chọn.

Cầu thủ trả bóng

EmbeddedChartBuilder – Trình tạo này, để tạo chuỗi.


setPosition(anchorRowPos, anchorColPos, offsetX, offsetY)

Đặt vị trí, thay đổi vị trí biểu đồ xuất hiện trên trang tính. anchorRowPosanchorColPos được lập chỉ mục từ 1.

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)
                  .setPosition(5, 5, 0, 0)
                  .build();

sheet.insertChart(chart);

Tham số

TênLoạiMô tả
anchorRowPosIntegerCạnh trên cùng của biểu đồ được neo vào hàng này.
anchorColPosIntegerCột này là cột neo của bên trái biểu đồ.
offsetXIntegerGóc trên bên phải của biểu đồ bị lệch đi nhiều pixel.
offsetYIntegerGóc dưới bên trái của biểu đồ bị lệch đi một số pixel.

Cầu thủ trả bóng

EmbeddedChartBuilder – trình tạo này, để tạo chuỗi


setTransposeRowsAndColumns(transpose)

Đặt xem hàng và cột của biểu đồ có được chuyển vị hay không. Nếu được đặt thành true, các hàng và cột sẽ được chuyển đổi. Giá trị mặc định là false.

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)
                  .setTransposeRowsAndColumns(true)
                  .setPosition(5, 5, 0, 0)
                  .build();

sheet.insertChart(chart);

Tham số

TênLoạiMô tả
transposeBooleanNếu là true, các hàng và cột dùng để tạo biểu đồ sẽ được hoán vị.

Cầu thủ trả bóng

EmbeddedChartBuilder – trình tạo này, để tạo chuỗi