• Aspose.Words使用教程之从零创建OOXML图表



       文档类已经添加进了新的插入图表方法,所以,让我们看看如何使用DocumentBuilder.InsertChart方法将一个简单的列图表插入到文档。 

    aspose.words最新下载https://www.evget.com/product/564/download如下所示:

    C#

    Document doc = new Document();
    DocumentBuilder builder = new DocumentBuilder(doc);
    
    // Add chart with default data. You can specify different chart types and sizes.
    Shape shape = builder.InsertChart(ChartType.Column, 432, 252);
    
    // Chart property of Shape contains all chart related options.
    Chart chart = shape.Chart;
    
    // Get chart series collection.
    ChartSeriesCollection seriesColl = chart.Series;
    
    // Delete default generated series.
    seriesColl.Clear();
    
    // Create category names array, in this example we have two categories.
    string[] categories = new string[] { "AW Category 1", "AW Category 2" };
    
    // Adding new series. Please note, data arrays must not be empty and arrays must be the same size.
    seriesColl.Add("AW Series 1", categories, new double[] { 1, 2 });
    seriesColl.Add("AW Series 2", categories, new double[] { 3, 4 });
    seriesColl.Add("AW Series 3", categories, new double[] { 5, 6 });
    seriesColl.Add("AW Series 4", categories, new double[] { 7, 8 });
    seriesColl.Add("AW Series 5", categories, new double[] { 9, 10 });
    
    doc.Save(MyDir + @"TestInsertChartColumn.docx");

    Visual Basic

    Dim doc As New Document()
    Dim builder As New DocumentBuilder(doc)
    
    ' Add chart with default data. You can specify different chart types and sizes.
    Dim shape As Shape = builder.InsertChart(ChartType.Column, 432, 252)
    
    ' Chart property of Shape contains all chart related options.
    Dim chart As Chart = shape.Chart
    
    ' Get chart series collection.
    Dim seriesColl As ChartSeriesCollection = chart.Series
    
    ' Delete default generated series.
    seriesColl.Clear()
    
    ' Create category names array, in this example we have two categories.
    Dim categories() As String = {"AW Category 1", "AW Category 2"}
    
    ' Adding new series. Please note, data arrays must not be empty and arrays must be the same size.
    seriesColl.Add("AW Series 1", categories, New Double() {1, 2})
    seriesColl.Add("AW Series 2", categories, New Double() {3, 4})
    seriesColl.Add("AW Series 3", categories, New Double() {5, 6})
    seriesColl.Add("AW Series 4", categories, New Double() {7, 8})
    seriesColl.Add("AW Series 5", categories, New Double() {9, 10})
    
    doc.Save(MyDir & "TestInsertChartColumn.docx")

    这段代码会产生如下结果:

    有四种不同的加载添加方法:

    1.插入列图表

    C#

    Document doc = new Document();
    DocumentBuilder builder = new DocumentBuilder(doc);
    
    // Insert Column chart.
    Shape shape = builder.InsertChart(ChartType.Column, 432, 252);
    Chart chart = shape.Chart;
    
    // Use this overload to add series to any type of Bar, Column, Line and Surface charts.
    chart.Series.Add("AW Series 1", new string[] { "AW Category 1", "AW Category 2" }, new double[] { 1, 2 });
    
    doc.Save(MyDir + @"TestInsertColumnChart.docx");

    Visual Basic

    Dim doc As New Document()
    Dim builder As New DocumentBuilder(doc)
    
    ' Insert Column chart.
    Dim shape As Shape = builder.InsertChart(ChartType.Column, 432, 252)
    Dim chart As Chart = shape.Chart
    
    ' Use this overload to add series to any type of Bar, Column, Line and Surface charts.
    chart.Series.Add("AW Series 1", New string() { "AW Category 1", "AW Category 2" }, New Double() { 1, 2 })
    
    doc.Save(MyDir & "TestInsertColumnChart.docx")

    结果如下:

    2.插入散点图

    C#

    Document doc = new Document();
    DocumentBuilder builder = new DocumentBuilder(doc);
    
    // Insert Scatter chart.
    Shape shape = builder.InsertChart(ChartType.Scatter, 432, 252);
    Chart chart = shape.Chart;
    
    // Use this overload to add series to any type of Scatter charts.
    chart.Series.Add("AW Series 1", new double[] { 0.7, 1.8, 2.6 }, new double[] { 2.7, 3.2, 0.8 });
    
    doc.Save(MyDir + @"TestInsertScatterChart.docx");

    Visual Basic

    Dim doc As New Document()
    Dim builder As New DocumentBuilder(doc)
    
    ' Insert Scatter chart.
    Dim shape As Shape = builder.InsertChart(ChartType.Scatter, 432, 252)
    Dim chart As Chart = shape.Chart
    
    ' Use this overload to add series to any type of Scatter charts.
    chart.Series.Add("AW Series 1", New Double() {0.7, 1.8, 2.6}, New Double() {2.7, 3.2, 0.8})
    
    doc.Save(MyDir & "TestInsertScatterChart.docx")
    
    

    结果如下:

    3.插入面积图

    C#

    Document doc = new Document();
    DocumentBuilder builder = new DocumentBuilder(doc);
    
    // Insert Area chart.
    Shape shape = builder.InsertChart(ChartType.Area, 432, 252);
    Chart chart = shape.Chart;
    
    // Use this overload to add series to any type of Area, Radar and Stock charts.
    chart.Series.Add("AW Series 1", new DateTime[] {
    new DateTime(2002, 05, 01),
    new DateTime(2002, 06, 01),
    new DateTime(2002, 07, 01),
    new DateTime(2002, 08, 01),
    new DateTime(2002, 09, 01)}, new double[] { 32, 32, 28, 12, 15 });
    
    doc.Save(MyDir + @"TestInsertAreaChart.docx");

    Visual Basic

    Dim doc As New Document()
    Dim builder As New DocumentBuilder(doc)
    
    ' Insert Area chart.
    Dim shape As Shape = builder.InsertChart(ChartType.Area, 432, 252)
    Dim chart As Chart = shape.Chart
    
    ' Use this overload to add series to any type of Area, Radar and Stock charts.
    chart.Series.Add("AW Series 1", New DateTime() {New DateTime(2002, 5, 1), New DateTime(2002, 6, 1), New DateTime(2002, 7, 1), New DateTime(2002, 8, 1), New DateTime(2002, 9, 1)}, New Double() {32, 32, 28, 12, 15})
    
    doc.Save(MyDir & "TestInsertAreaChart.docx")

    结果如下:

    4.插入气泡式图表

    C#

    Document doc = new Document();
    DocumentBuilder builder = new DocumentBuilder(doc);
    
    // Insert Bubble chart.
    Shape shape = builder.InsertChart(ChartType.Bubble, 432, 252);
    Chart chart = shape.Chart;
    
    // Use this overload to add series to any type of Bubble charts.
    chart.Series.Add("AW Series 1", new double[] { 0.7, 1.8, 2.6 }, new double[] { 2.7, 3.2, 0.8 }, new double[] { 10, 4, 8 });
    
    doc.Save(MyDir + @"TestInsertBubbleChart.docx");

    Visual Basic

    Dim doc As New Document()
    Dim builder As New DocumentBuilder(doc)
    
    ' Insert Bubble chart.
    Dim shape As Shape = builder.InsertChart(ChartType.Bubble, 432, 252)
    Dim chart As Chart = shape.Chart
    
    ' Use this overload to add series to any type of Bubble charts.
    chart.Series.Add("AW Series 1", New Double() {0.7, 1.8, 2.6}, New Double() {2.7, 3.2, 0.8}, New Double() {10, 4, 8})
    
    doc.Save(MyDir & "TestInsertBubbleChart.docx")

    结果如下:

  • 相关阅读:
    银行从业——法律法规
    蓝桥杯算法竞赛系列第十章·nSum问题的代码框架
    「津津乐道播客」#386 原汤话原食:谁还不是个“白字先生”?
    Banana Pi 开源社区发布BPI-M6开源硬件开发板,支持6.75TOPs算力
    R语言线性回归模型拟合诊断异常值分析家庭燃气消耗量和卡路里实例带自测题
    性能提升400倍丨外汇掉期估值计算优化案例
    Spring Security 在登录时如何添加图形验证码
    Python遍历文件及子文件下的指定文件
    深入理解Nginx~Nginx配置的通用语法
    动态规划算法学习二:最长公共子序列
  • 原文地址:https://blog.csdn.net/m0_67129275/article/details/126381978