创建图表-in-word-documents-using-csharp

作为 C# 开发人员,您可以通过编程方式在 Word 文档中插入各种类型的图表。它有助于以图形方式呈现您的数据和信息。在本文中,您将学习如何使用 C# 在 Word 文档中创建图表

本文讨论/涵盖了以下主题:

在 Word 文档中插入图表的 C# API

为了在 DOCX 文件中插入图表,我们将使用 Aspose.Words for .NET API。它允许您生成、修改、转换、渲染和打印文件,而无需直接在跨平台应用程序中使用 Microsoft Word。 API 使您能够以编程方式在 Word 文档中插入各种 支持的图表类型

您可以 下载 API 的 DLL 或使用 NuGet 安装它。

Install-Package Aspose.Words

在 Word 文档中创建柱形图

您可以按照以下步骤以编程方式在 Word 文档中创建柱形图:

  • 首先,使用 Document 类创建一个新文档。
  • 现在,使用 Document 类对象创建 DocumentBuilder 类的实例。
  • 然后,调用 DocumentBuilder.InsertChart() 方法。将 ChartType 作为 Column 传递,并以 heightwidth 作为输入参数。
  • Shape 类对象中获取结果。
  • 现在,创建 Chart 类的实例并将 Shape.Chart 对象分配给它。如果此形状具有图表,则它提供对图表属性的访问。
  • 然后,在 ChartSeriesCollection 对象中获取图表系列集合。
  • 创建类别名称数组。
  • 现在,调用 ChartSeriesCollection.Add() 方法添加图表系列。传递名称、类别数组和值作为输入参数。重复此步骤以添加更多系列。
  • 最后,调用带有输出文件路径的Document.Save()方法来保存文件。

以下代码示例展示了如何使用 C# 在 Word 文档中创建柱形图

// 创建文档
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// 添加带有默认数据的图表。您可以指定不同的图表类型和大小。
Shape shape = builder.InsertChart(ChartType.Column, 432, 252);

// Shape 的图表属性包含所有图表相关选项。
Chart chart = shape.Chart;

// 获取图表系列集合。
ChartSeriesCollection seriesColl = chart.Series;
// 检查系列计数。
Console.WriteLine(seriesColl.Count);

// 删除默认生成的系列。
seriesColl.Clear();

// 创建类别名称数组,在此示例中,我们有两个类别。
string[] categories = new string[] { "AW Category 1", "AW Category 2" };

// 添加新系列。请注意,数据数组不能为空,并且数组的大小必须相同。
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(@"C:\Files\Words\ColumnsChart.docx");
使用 C# 在 Word 文档中创建柱形图。

使用 C# 在 Word 文档中创建柱形图

使用 C# 在 Word 文档中创建散点图

您可以按照前面提到的步骤以编程方式在 Word 文档中插入散点图。但是,您需要在 DocumentBuilder.InsertChart() 方法中设置 ChartType.Scatter。

以下代码示例展示了如何使用 C# 在 Word 文档中创建散点图

// 创建一个新文档
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// 插入散点图。
Shape shape = builder.InsertChart(ChartType.Scatter, 432, 252);
Chart chart = shape.Chart;

// 使用此重载将系列添加到任何类型的散点图。
chart.Series.Add("AW Series 1", new double[] { 0.7, 1.8, 2.6 }, new double[] { 2.7, 3.2, 0.8 });

// 保存文档
doc.Save(@"C:\Files\Words\ScatterChart.docx");
使用 C# 在 Word 文档中创建散点图。

使用 C# 在 Word 文档中创建散点图

使用 C# 在 Word 文档中插入面积图

您可以按照前面提到的步骤以编程方式在 Word 文档中插入面积图。但是,您需要在 DocumentBuilder.InsertChart() 方法中设置 ChartType.Area。

以下代码示例展示了如何使用 C# 在 Word 文档中创建面积图

// 创建一个新文档
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// 插入面积图。
Shape shape = builder.InsertChart(ChartType.Area, 432, 252);
Chart chart = shape.Chart;

// 使用此重载将系列添加到任何类型的区域、雷达和股票图表。
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(@"C:\Files\Words\AreaChart.docx");
使用 C# 在 Word 文档中插入面积图。

使用 C# 在 Word 文档中插入面积图

使用 C# 在 Word 文档中插入气泡图

您可以按照前面提到的步骤以编程方式在 Word 文档中插入气泡图。但是,您需要在 DocumentBuilder.InsertChart() 方法中设置 ChartType.Bubble。

以下代码示例展示了如何使用 C# 在 Word 文档中创建气泡图

// 创建一个新文档
Document doc = new Document();
DocumentBuilder builder = new DocumentBuilder(doc);

// 插入气泡图。
Shape shape = builder.InsertChart(ChartType.Bubble, 432, 252);
Chart chart = shape.Chart;

// 使用此重载将系列添加到任何类型的气泡图。
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(@"C:\Files\Words\BubbleChart.docx");
使用 C# 在 Word 文档中插入气泡图。

使用 C# 在 Word 文档中插入气泡图

获得免费许可证

您可以通过请求 免费的临时许可证 来试用该 API,而不受评估限制。

结论

在本文中,您学习了如何使用 C# 在 Word 文档中创建图表。特别是,您学习了如何以编程方式在 Word 文档中创建柱形图、面积图、气泡图和散点图。同样,您可以创建其他类型的图表。您可以使用 文档 了解更多关于 Aspose.Words for .NET API 的信息。如有任何歧义,请随时在 论坛 上与我们联系。

也可以看看