如何使用C#创建Excel图表

查克尼特·宾
查克尼特·宾
2020年十二月22日
更新 2024年十月20日
分享:
This article was translated from English: Does it need improvement?
Translated
View the article in English

以下教程将教您如何使用IronXL在C#中以编程方式创建Excel图表。


How to Create Excel Chart in C#

  1. 安装 Excel 库以创建 Excel 图表。

  2. 将现有的 Excel 文件加载到Workbook对象中。

  3. 使用CreateChart创建图表。

  4. 设置图表的标题和图例

  5. 调用Plot方法。

  6. Workbook保存到Excel文件。

    步骤 1

1. 安装 IronXL

首先,安装IronXL最简单的方法是在Visual Studio中使用NuGet包管理器:

  • 选择“项目”菜单
  • 管理 NuGet 软件包
  • 搜索 IronXL.Excel
  • 安装

    您还可以在开发者命令提示符中输入以下命令:

Install-Package IronXL.Excel

或从此处下载:https://ironsoftware.com/csharp/excel/packages/IronXL.zip


教程

2. 为 .NET 创建 Excel 图表

现在开始项目!

将以下详细信息添加到Excel电子表格中。 以下显示:

图表使用的数据

图 1用于绘制图表的数据

添加必要的命名空间,以便在 IronXL 中使用 Excel 图表。

using IronXL;
using IronXL.Drawing.Charts;
using IronXL;
using IronXL.Drawing.Charts;
Imports IronXL
Imports IronXL.Drawing.Charts
$vbLabelText   $csharpLabel

添加代码,使用 IronXL 以编程方式创建 Excel 图形:

private void button1_Click(object sender, EventArgs e)
{
    WorkBook wb = WorkBook.Load("Chart_Ex.xlsx");
    WorkSheet ws = wb.DefaultWorkSheet;

    var chart = ws.CreateChart(ChartType.Column, 10, 15, 25, 20);

    const string xAxis = "A2:A7";

    var series = chart.AddSeries(xAxis, "B2:B7");
    series.Title = ws ["B1"].StringValue;

    series = chart.AddSeries(xAxis, "C2:C7");
    series.Title = ws ["C1"].StringValue;

    series = chart.AddSeries(xAxis, "D2:D7");
    series.Title = ws ["D1"].StringValue;

    chart.SetTitle("Column Chart");
    chart.SetLegendPosition(LegendPosition.Bottom);
    chart.Plot();
    wb.SaveAs("Exported_Column_Chart.xlsx");
}
private void button1_Click(object sender, EventArgs e)
{
    WorkBook wb = WorkBook.Load("Chart_Ex.xlsx");
    WorkSheet ws = wb.DefaultWorkSheet;

    var chart = ws.CreateChart(ChartType.Column, 10, 15, 25, 20);

    const string xAxis = "A2:A7";

    var series = chart.AddSeries(xAxis, "B2:B7");
    series.Title = ws ["B1"].StringValue;

    series = chart.AddSeries(xAxis, "C2:C7");
    series.Title = ws ["C1"].StringValue;

    series = chart.AddSeries(xAxis, "D2:D7");
    series.Title = ws ["D1"].StringValue;

    chart.SetTitle("Column Chart");
    chart.SetLegendPosition(LegendPosition.Bottom);
    chart.Plot();
    wb.SaveAs("Exported_Column_Chart.xlsx");
}
Private Sub button1_Click(ByVal sender As Object, ByVal e As EventArgs)
	Dim wb As WorkBook = WorkBook.Load("Chart_Ex.xlsx")
	Dim ws As WorkSheet = wb.DefaultWorkSheet

	Dim chart = ws.CreateChart(ChartType.Column, 10, 15, 25, 20)

	Const xAxis As String = "A2:A7"

	Dim series = chart.AddSeries(xAxis, "B2:B7")
	series.Title = ws ("B1").StringValue

	series = chart.AddSeries(xAxis, "C2:C7")
	series.Title = ws ("C1").StringValue

	series = chart.AddSeries(xAxis, "D2:D7")
	series.Title = ws ("D1").StringValue

	chart.SetTitle("Column Chart")
	chart.SetLegendPosition(LegendPosition.Bottom)
	chart.Plot()
	wb.SaveAs("Exported_Column_Chart.xlsx")
End Sub
$vbLabelText   $csharpLabel

创建了一个工作簿对象和一个工作表对象。 Worksheet 对象的 CreateChart 方法被调用以指定图表类型和图表位置。 图表的系列已添加,包括其标题和图例。 这如下所示。

图表输出

图 2图表输出


图书馆快速访问

IronXL 应用程序接口参考文档

Learn more and share how to merge, unmerge, and work with cells in Excel spreadsheets using the handy IronXL 应用程序接口参考文档.

IronXL 应用程序接口参考文档
Documentation related to 2. 为 .NET 创建 Excel 图表
查克尼特·宾
软件工程师
Chaknith 负责 IronXL 和 IronBarcode 的工作。他在 C# 和 .NET 方面拥有深厚的专业知识,帮助改进软件并支持客户。他从用户互动中获得的洞察力,有助于提升产品、文档和整体体验。