如何使用 C# 創建 Excel 圖表

查克尼思·賓
查克尼思·賓
2020年12月22日
已更新 2024年10月20日
分享:
This article was translated from English: Does it need improvement?
Translated
View the article in English

以下教學內容將幫助您使用IronXL在C#中以程式化方式創建Excel圖表。

以程式化方式在 .NET 中建立 Excel 圖表

How To Work related to 如何使用 C# 創建 Excel 圖表

How to Create Excel Chart in C#

  1. 安裝 Excel 函式庫以創建 Excel 圖表。

  2. 將現有的 Excel 文件加載到一個 Workbook 對象中。

  3. 使用CreateChart建立圖表。

  4. 設定圖表的標題和圖例

  5. 呼叫Plot方法。

  6. Workbook保存到Excel文件。

    第一步

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 試算表中。 如下所示:

用於製圖的數據

Figure 1Data to be used for charting

添加使用 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 API 參考文件

Learn more and share how to merge, unmerge, and work with cells in Excel spreadsheets using the handy IronXL API 參考文件.

IronXL API 參考文件
Documentation related to 2. 為 .NET 創建 Excel 圖表
查克尼思·賓
軟體工程師
Chaknith 致力於 IronXL 和 IronBarcode。他在 C# 和 .NET 方面擁有豐富的專業知識,協助改進軟體並支持客戶。他從用戶互動中獲得的洞察力有助於提高產品、文檔和整體體驗。