การทำงานกับแผนภูมิ

Contents
[ ]

มีการเพิ่มวิธี insert_chart ใหม่ลงในคลาส DocumentBuilder มาดูวิธีแทรกแผนภูมิคอลัมน์อย่างง่ายลงในเอกสารโดยใช้วิธี DocumentBuilder.insert_chart:

วิธีแทรกแผนภูมิ

ในส่วนนี้ เราจะได้เรียนรู้วิธีแทรกแผนภูมิลงในเอกสาร

แทรกแผนภูมิคอลัมน์

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแทรกแผนภูมิคอลัมน์:

รหัสให้ผลลัพธ์ดังต่อไปนี้:

create-column-chart-aspose-words-net

มีวิธี add, add_double และ add_date ซึ่งเปิดเผยให้ครอบคลุมแหล่งข้อมูลรูปแบบต่างๆ ที่เป็นไปได้สำหรับแผนภูมิทุกประเภท:

รหัสให้ผลลัพธ์ดังต่อไปนี้:

create-column-chart-from-datasource-aspose-words-net

แทรกแผนภูมิกระจาย

ตัวอย่างด้านล่างแสดงวิธีการแทรกแผนภูมิกระจาย

รหัสให้ผลลัพธ์ดังต่อไปนี้:

scatter-chart-aspose-words-net

แทรกแผนภูมิพื้นที่

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแทรกแผนภูมิพื้นที่:

รหัสให้ผลลัพธ์ดังต่อไปนี้:

area-chart-aspose-words-net

แทรกแผนภูมิฟอง

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการแทรกแผนภูมิฟอง:

รหัสให้ผลลัพธ์ดังต่อไปนี้:

bubble-chart-aspose-words-net

การทำงานกับแผนภูมิผ่านวัตถุ Shape.chart

เมื่อแทรกแผนภูมิและเติมข้อมูลแล้ว คุณจะสามารถเปลี่ยนรูปลักษณ์ได้ คุณสมบัติ Shape.chart มีตัวเลือกที่เกี่ยวข้องกับแผนภูมิทั้งหมดที่มีอยู่ใน API สาธารณะ

ตัวอย่างเช่น เรามาเปลี่ยนชื่อ Chart หรือลักษณะการทำงานของคำอธิบาย:

รหัสสร้างผลลัพธ์ดังต่อไปนี้:

line-chart-aspose-words-net

วิธีทำงานกับ ChartSeriesCollection ของแผนภูมิ

มาดูคอลเลกชัน ChartSeries กันดีกว่า ชุดแผนภูมิทั้งหมดมีอยู่ในคอลเลกชัน Chart.series:

คุณสามารถลบซีรีส์ทีละรายการหรือล้างซีรีส์ทั้งหมด รวมถึงเพิ่มซีรี่ส์ใหม่ได้หากจำเป็น แผนภูมิที่แทรกใหม่มีชุดข้อมูลเริ่มต้นบางชุดที่เพิ่มลงในคอลเลกชันนี้ หากต้องการลบออกคุณต้องเรียกใช้วิธี chart.series.clear()

การทำงานกับคลาส ChartSeries เดี่ยว

ต่อไปนี้เป็นวิธีการทำงานกับซีรีส์ใดซีรีส์หนึ่ง

โปรดดูผลลัพธ์ด้านล่าง:

line-chart-chartseries-aspose-words-net

ChartSeries เดียวทั้งหมดมีตัวเลือก ChartDataPoint เริ่มต้น โปรดลองใช้รหัสต่อไปนี้เพื่อเปลี่ยนแปลง:

โปรดดูผลลัพธ์ด้านล่าง:

line-chart-chartdatapoint-aspose-words-net

วิธีทำงานกับ Single ChartDataPoint ของ ChartSeries

การใช้ ChartDataPoint คุณสามารถปรับแต่งการจัดรูปแบบของจุดข้อมูลจุดเดียวของชุดแผนภูมิได้:

โปรดดูผลลัพธ์ด้านล่าง:

line-chart-datapoint-aspose-words-net

วิธีทำงานกับ ChartDataLabel ของ ChartSeries เดี่ยว

การใช้ ChartDataLabel ทำให้คุณสามารถระบุการจัดรูปแบบของป้ายกำกับข้อมูลเดียวของชุดแผนภูมิ เช่น แสดง/ซ่อน LegendKey, CategoryName, SeriesName, Value เป็นต้น

โปรดดูผลลัพธ์ด้านล่าง:

bar-chart-aspose-words-net

วิธีกำหนดตัวเลือกเริ่มต้นสำหรับ ChartDataLabels ของ ChartSeries

คลาส ChartDataLabelCollection กำหนดคุณสมบัติที่สามารถใช้เพื่อตั้งค่าตัวเลือกเริ่มต้นสำหรับ ChartDataLabels สำหรับชุดแผนภูมิ คุณสมบัติเหล่านี้ ได้แก่ show_category_name, show_bubble_size, show_percentage, show_series_name, show_value เป็นต้น

โปรดดูผลลัพธ์ด้านล่าง:

pie-chart-aspose-words-net

วิธีจัดรูปแบบป้ายข้อมูลแผนภูมิจำนวน

การใช้ ChartDataLabel.number_format ทำให้คุณสามารถระบุการจัดรูปแบบตัวเลขของป้ายกำกับข้อมูลเดียวของแผนภูมิได้

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีจัดรูปแบบป้ายกำกับข้อมูลจำนวนหนึ่ง:

วิธีการตั้งค่าคุณสมบัติแกนแผนภูมิ

หากคุณต้องการทำงานกับแกนแผนภูมิ การปรับขนาด และหน่วยการแสดงผลสำหรับแกนค่า โปรดใช้คลาส ChartAxis, AxisDisplayUnit และ AxisScaling

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีกำหนดคุณสมบัติแกน X และ Y:

วิธีการตั้งค่าเวลา Date ของ Axis

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการตั้งค่าวันที่/เวลาให้กับคุณสมบัติของแกน:

วิธีจัดรูปแบบค่าตัวเลขของแกน

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการเปลี่ยนรูปแบบของตัวเลขบนแกนค่า:

วิธีกำหนดขอบเขตของแกน

คลาส AxisBound แสดงถึงขอบเขตต่ำสุดหรือสูงสุดของค่าแกน ขอบเขตสามารถระบุเป็นตัวเลข วันที่-เวลา หรือค่า “อัตโนมัติ” พิเศษได้

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการตั้งค่าขอบเขตของแกน:

วิธีการตั้งค่าหน่วยช่วงเวลาระหว่างป้ายกำกับ

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการตั้งค่าหน่วยช่วงเวลาระหว่างป้ายกำกับบนแกน:

วิธีซ่อนแกนแผนภูมิ

หากคุณต้องการแสดงหรือซ่อนแกนแผนภูมิ คุณสามารถทำได้โดยการตั้งค่าคุณสมบัติ ChartAxis.hidden

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการซ่อนแกน Y ของแผนภูมิ:

วิธีจัดแนวฉลากแผนภูมิ

หากคุณต้องการตั้งค่าการจัดแนวข้อความสำหรับป้ายกำกับหลายบรรทัด คุณสามารถทำได้โดยการตั้งค่าคุณสมบัติ ChartAxis.tick_label_alignment

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการทำเครื่องหมายการจัดตำแหน่งป้ายกำกับ:

วิธีการตั้งค่าการเติมและการจัดรูปแบบเส้นขีด

สามารถตั้งค่าการจัดรูปแบบการเติมและเส้นขีดสำหรับชุดแผนภูมิ จุดข้อมูล และเครื่องหมายได้ ในการดำเนินการนี้ คุณจะต้องใช้คุณสมบัติของประเภท ChartFormat ในคลาส ChartSeries, ChartDataPoint และ ChartMarker รวมถึงนามแฝงสำหรับคุณสมบัติบางอย่าง เช่น fore_color, back_color, visible และ transparency ในคลาส Stroke

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการตั้งค่าสีของซีรี่ส์:

doc = aw.Document()
builder = aw.DocumentBuilder(doc)

shape = builder.insert_chart(aw.drawing.charts.ChartType.COLUMN, 432, 252)

chart = shape.chart
seriesColl = chart.series

# Delete default generated series.
seriesColl.clear()

# Create category names array.
categories = [ "AW Category 1", "AW Category 2" ]

# Adding new series. Value and category arrays must be the same size.
series1 = seriesColl.add("AW Series 1", categories, [ 1, 2 ])
series2 = seriesColl.add("AW Series 2", categories, [ 3, 4 ])
series3 = seriesColl.add("AW Series 3", categories, [ 5, 6 ])

# Set series color.
series1.format.fill.fore_color = drawing.Color.red
series2.format.fill.fore_color = drawing.Color.yellow
series3.format.fill.fore_color = drawing.Color.blue

doc.save(docs_base.artifacts_dir + "WorkingWithCharts.set_series_color.docx")

ตัวอย่างโค้ดต่อไปนี้แสดงวิธีการตั้งค่าสีและน้ำหนักของเส้น:

doc = aw.Document()
builder = aw.DocumentBuilder(doc)

shape = builder.insert_chart(aw.drawing.charts.ChartType.LINE, 432, 252)

chart = shape.chart
seriesColl = chart.series

# Delete default generated series.
seriesColl.clear()

# Adding new series.
series1 = seriesColl.add_double("AW Series 1", [ 0.7, 1.8, 2.6 ], [ 2.7, 3.2, 0.8 ])
series2 = seriesColl.add_double("AW Series 2", [ 0.5, 1.5, 2.5 ], [ 3, 1, 2 ])

# Set series color.
series1.format.stroke.fore_color = drawing.Color.red
series1.format.stroke.weight = 5
series2.format.stroke.fore_color = drawing.Color.light_green
series2.format.stroke.weight = 5

doc.save(docs_base.artifacts_dir + "WorkingWithCharts.line_color_and_weight.docx")