Class EmbeddedChartBuilder

EmbeddedChartBuilder

เครื่องมือสร้างที่ใช้แก้ไข EmbeddedChart ระบบจะไม่บันทึกการเปลี่ยนแปลงที่ทำกับแผนภูมิจนกว่า จะมีการเรียก Sheet.updateChart(chart) ในแผนภูมิที่สร้างใหม่

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

เมธอด

วิธีการประเภทการแสดงผลรายละเอียดแบบย่อ
addRange(range)EmbeddedChartBuilderเพิ่มช่วงในแผนภูมิที่เครื่องมือสร้างนี้แก้ไข
asAreaChart()EmbeddedAreaChartBuilderตั้งค่าประเภทแผนภูมิเป็น AreaChart และแสดง EmbeddedAreaChartBuilder
asBarChart()EmbeddedBarChartBuilderตั้งค่าประเภทแผนภูมิเป็น BarChart และแสดง EmbeddedBarChartBuilder
asColumnChart()EmbeddedColumnChartBuilderตั้งค่าประเภทแผนภูมิเป็น ColumnChart และแสดง EmbeddedColumnChartBuilder
asComboChart()EmbeddedComboChartBuilderตั้งค่าประเภทแผนภูมิเป็น ComboChart และแสดง EmbeddedComboChartBuilder
asHistogramChart()EmbeddedHistogramChartBuilderตั้งค่าประเภทแผนภูมิเป็น HistogramChart และแสดง EmbeddedHistogramChartBuilder
asLineChart()EmbeddedLineChartBuilderตั้งค่าประเภทแผนภูมิเป็นแผนภูมิเส้นและแสดงผล EmbeddedLineChartBuilder
asPieChart()EmbeddedPieChartBuilderตั้งค่าประเภทแผนภูมิเป็น PieChart และแสดง EmbeddedPieChartBuilder
asScatterChart()EmbeddedScatterChartBuilderตั้งค่าประเภทแผนภูมิเป็น ScatterChart และแสดงผล EmbeddedScatterChartBuilder
asTableChart()EmbeddedTableChartBuilderตั้งค่าประเภทแผนภูมิเป็น TableChart และแสดง EmbeddedTableChartBuilder
build()EmbeddedChartสร้างแผนภูมิเพื่อแสดงการเปลี่ยนแปลงทั้งหมดที่ทำ
clearRanges()EmbeddedChartBuilderนำช่วงทั้งหมดออกจากแผนภูมิที่เครื่องมือสร้างนี้แก้ไข
getChartType()ChartTypeแสดงแผนภูมิประเภทปัจจุบัน
getContainer()ContainerInfoแสดงแผนภูมิ ContainerInfo ซึ่งแสดงส่วนที่แผนภูมิปรากฏใน ชีต
getRanges()Range[]แสดงผลสำเนาของรายการช่วงที่ให้ข้อมูลสำหรับแผนภูมินี้ในปัจจุบัน
removeRange(range)EmbeddedChartBuilderนำช่วงที่ระบุออกจากแผนภูมิที่เครื่องมือสร้างนี้แก้ไข
setChartType(type)EmbeddedChartBuilderเปลี่ยนประเภทของแผนภูมิ
setHiddenDimensionStrategy(strategy)EmbeddedChartBuilderกำหนดกลยุทธ์ที่จะใช้กับแถวและคอลัมน์ที่ซ่อนอยู่
setMergeStrategy(mergeStrategy)EmbeddedChartBuilderตั้งค่ากลยุทธ์การรวมเพื่อใช้เมื่อมีมากกว่า 1 ช่วง
setNumHeaders(headers)EmbeddedChartBuilderกำหนดจำนวนแถวหรือคอลัมน์ของช่วงที่ควรถือว่าเป็นส่วนหัว
setOption(option, value)EmbeddedChartBuilderตั้งค่าตัวเลือกขั้นสูงสำหรับแผนภูมินี้
setPosition(anchorRowPos, anchorColPos, offsetX, offsetY)EmbeddedChartBuilderกำหนดตำแหน่ง ซึ่งจะเปลี่ยนตําแหน่งที่แผนภูมิจะปรากฏในชีต
setTransposeRowsAndColumns(transpose)EmbeddedChartBuilderตั้งค่าว่าจะสลับตำแหน่งแถวและคอลัมน์ของแผนภูมิหรือไม่

เอกสารโดยละเอียด

addRange(range)

เพิ่มช่วงในแผนภูมิที่เครื่องมือสร้างนี้แก้ไข ไม่เพิ่มช่วงหากมีอยู่แล้ว เพิ่มลงในแผนภูมิแล้ว

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

พารามิเตอร์

ชื่อประเภทคำอธิบาย
rangeRangeช่วงที่จะเพิ่ม

รีเทิร์น

EmbeddedChartBuilder — เครื่องมือสร้างนี้สำหรับการทำสายโซ่


asAreaChart()

ตั้งค่าประเภทแผนภูมิเป็น AreaChart และแสดง EmbeddedAreaChartBuilder

รีเทิร์น

EmbeddedAreaChartBuilder — เครื่องมือสร้างแผนภูมิพื้นที่


asBarChart()

ตั้งค่าประเภทแผนภูมิเป็น BarChart และแสดง EmbeddedBarChartBuilder

รีเทิร์น

EmbeddedBarChartBuilder — เครื่องมือสร้างแผนภูมิแท่ง


asColumnChart()

ตั้งค่าประเภทแผนภูมิเป็น ColumnChart และแสดง EmbeddedColumnChartBuilder

รีเทิร์น

EmbeddedColumnChartBuilder — เครื่องมือสร้างสำหรับแผนภูมิคอลัมน์


asComboChart()

ตั้งค่าประเภทแผนภูมิเป็น ComboChart และแสดง EmbeddedComboChartBuilder

รีเทิร์น

EmbeddedComboChartBuilder — เครื่องมือสร้างแผนภูมิผสม


asHistogramChart()

ตั้งค่าประเภทแผนภูมิเป็น HistogramChart และแสดง EmbeddedHistogramChartBuilder

รีเทิร์น

EmbeddedHistogramChartBuilder — เครื่องมือสร้างแผนภูมิฮิสโตแกรม


asLineChart()

ตั้งค่าประเภทแผนภูมิเป็นแผนภูมิเส้นและแสดงผล EmbeddedLineChartBuilder

รีเทิร์น

EmbeddedLineChartBuilder — เครื่องมือสร้างแผนภูมิเส้น


asPieChart()

ตั้งค่าประเภทแผนภูมิเป็น PieChart และแสดง EmbeddedPieChartBuilder

รีเทิร์น

EmbeddedPieChartBuilder — เครื่องมือสร้างแผนภูมิวงกลม


asScatterChart()

ตั้งค่าประเภทแผนภูมิเป็น ScatterChart และแสดงผล EmbeddedScatterChartBuilder

รีเทิร์น

EmbeddedScatterChartBuilder — เครื่องมือสร้างแผนภูมิกระจาย


asTableChart()

ตั้งค่าประเภทแผนภูมิเป็น TableChart และแสดง EmbeddedTableChartBuilder

รีเทิร์น

EmbeddedTableChartBuilder — เครื่องมือสร้างแผนภูมิตาราง


build()

สร้างแผนภูมิเพื่อแสดงการเปลี่ยนแปลงทั้งหมดที่ทำ

วิธีการนี้จะไม่วาดแผนภูมิที่ด้านบนของสเปรดชีตโดยอัตโนมัติ แผนภูมิใหม่ ต้องแทรกผ่าน sheet.insertChart(chart) และควรอัปเดตแผนภูมิที่มีอยู่ ผ่าน 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);

รีเทิร์น

EmbeddedChart — แผนภูมิที่สร้างขึ้น ซึ่งต้องเพิ่มลงในสเปรดชีต


clearRanges()

นำช่วงทั้งหมดออกจากแผนภูมิที่เครื่องมือสร้างนี้แก้ไข

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

รีเทิร์น

EmbeddedChartBuilder — เครื่องมือสร้างนี้สำหรับการทำสายโซ่


getChartType()

แสดงแผนภูมิประเภทปัจจุบัน

รีเทิร์น

ChartType — ประเภทของแผนภูมิ


getContainer()

แสดงแผนภูมิ ContainerInfo ซึ่งแสดงส่วนที่แผนภูมิปรากฏใน ชีต

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

รีเทิร์น

ContainerInfo — ออบเจ็กต์ที่มีตำแหน่งของคอนเทนเนอร์แผนภูมิ


getRanges()

แสดงผลสำเนาของรายการช่วงที่ให้ข้อมูลสำหรับแผนภูมินี้ในปัจจุบัน ใช้ addRange(range) และ removeRange(range) เพื่อแก้ไขรายการนี้

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

รีเทิร์น

Range[] — อาร์เรย์ของช่วงที่ใช้เป็นแผนภูมิในการสร้างแหล่งข้อมูล


removeRange(range)

นำช่วงที่ระบุออกจากแผนภูมิที่เครื่องมือสร้างนี้แก้ไข ไม่แสดงข้อผิดพลาดหาก ช่วงไม่ได้อยู่ในแผนภูมินี้

ช่วงที่นำออกต้องตรงกับช่วงที่เพิ่มผ่าน addRange(range) มิฉะนั้นจะไม่มีการเปลี่ยนแปลงใดๆ ในแผนภูมิ ใช้วิธีนี้เพื่อนำค่าออกบางส่วนไม่ได้ จากช่วง

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

พารามิเตอร์

ชื่อประเภทคำอธิบาย
rangeRangeช่วงที่จะนำออก

รีเทิร์น

EmbeddedChartBuilder — เครื่องมือสร้างนี้สำหรับการทำสายโซ่


setChartType(type)

เปลี่ยนประเภทของแผนภูมิ ขณะนี้ระบบยังไม่รองรับแผนภูมิแบบฝังบางประเภท ดู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);

พารามิเตอร์

ชื่อประเภทคำอธิบาย
typeChartTypeประเภทที่จะใช้เป็นแผนภูมินี้

รีเทิร์น

EmbeddedChartBuilder — เครื่องมือสร้างนี้สำหรับการทำสายโซ่


setHiddenDimensionStrategy(strategy)

กำหนดกลยุทธ์ที่จะใช้กับแถวและคอลัมน์ที่ซ่อนอยู่ ค่าเริ่มต้นคือ 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);

พารามิเตอร์

ชื่อประเภทคำอธิบาย
strategyChartHiddenDimensionStrategyกลยุทธ์ที่ใช้สำหรับแถวและคอลัมน์ที่ซ่อนอยู่

รีเทิร์น

EmbeddedChartBuilder — เครื่องมือสร้างนี้สำหรับการทำสายโซ่


setMergeStrategy(mergeStrategy)

ตั้งค่ากลยุทธ์การรวมเพื่อใช้เมื่อมีมากกว่า 1 ช่วง หากเป็น MERGE_ROWS ระบบจะผสานแถว หากเป็น MERGE_COLUMNS คอลัมน์จะรวมเข้าด้วยกัน ค่าเริ่มต้นคือ 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);

พารามิเตอร์

ชื่อประเภทคำอธิบาย
mergeStrategyChartMergeStrategyกลยุทธ์การรวมที่จะใช้

รีเทิร์น

EmbeddedChartBuilder — เครื่องมือสร้างนี้สำหรับการทำสายโซ่


setNumHeaders(headers)

กำหนดจำนวนแถวหรือคอลัมน์ของช่วงที่ควรถือว่าเป็นส่วนหัว

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

พารามิเตอร์

ชื่อประเภทคำอธิบาย
headersIntegerจำนวนแถวหรือคอลัมน์ที่จะถือเป็นส่วนหัว ส่วนหัวที่มีค่าเป็นลบ ตรวจหาอัตโนมัติ

รีเทิร์น

EmbeddedChartBuilder — เครื่องมือสร้างนี้สำหรับการทำสายโซ่


setOption(option, value)

ตั้งค่าตัวเลือกขั้นสูงสำหรับแผนภูมินี้ โปรดดูรายการตัวเลือกที่มีที่แผนภูมิ ตัวเลือกการกำหนดค่า

วิธีการนี้ไม่ได้ตรวจสอบว่าตัวเลือกที่คุณระบุถูกต้องสำหรับแผนภูมิประเภทนี้ หรือ มีรูปแบบ/โครงสร้างที่ถูกต้อง

ตัวอย่างนี้แสดงวิธีเปลี่ยนชื่อและตั้งค่าคำอธิบาย

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

พารามิเตอร์

ชื่อประเภทคำอธิบาย
optionStringชื่อของตัวเลือก
valueObjectค่าของตัวเลือก

รีเทิร์น

EmbeddedChartBuilder — เครื่องมือสร้างนี้สำหรับการทำสายโซ่


setPosition(anchorRowPos, anchorColPos, offsetX, offsetY)

กำหนดตำแหน่ง ซึ่งจะเปลี่ยนตําแหน่งที่แผนภูมิจะปรากฏในชีต anchorRowPos และ anchorColPos ได้รับการจัดทำดัชนี 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);

พารามิเตอร์

ชื่อประเภทคำอธิบาย
anchorRowPosIntegerด้านบนของแผนภูมิจะตรึงอยู่ในแถวนี้
anchorColPosIntegerด้านซ้ายของแผนภูมิจะตรึงอยู่กับคอลัมน์นี้
offsetXIntegerมุมขวาบนของแผนภูมิจะชดเชยด้วยจำนวนพิกเซลนี้
offsetYIntegerมุมซ้ายล่างของแผนภูมิจะชดเชยด้วยจำนวนพิกเซลนี้

รีเทิร์น

EmbeddedChartBuilder — เครื่องมือสร้างนี้สำหรับการทำสายโซ่


setTransposeRowsAndColumns(transpose)

ตั้งค่าว่าจะสลับตำแหน่งแถวและคอลัมน์ของแผนภูมิหรือไม่ หากตั้งค่าเป็น true แถวและ สลับกันแล้ว ค่าเริ่มต้นคือ 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);

พารามิเตอร์

ชื่อประเภทคำอธิบาย
transposeBooleanหากเป็น true แถวและคอลัมน์ที่ใช้สร้างแผนภูมิจะเป็น สลับแกน

รีเทิร์น

EmbeddedChartBuilder — เครื่องมือสร้างนี้สำหรับการทำสายโซ่