How to Create and Edit Excel Charts in C
IronXL 讓 C# 開發人員能夠透過簡單的 API 呼叫,以程式化方式建立、編輯及移除 Excel 圖表。 您可直接從資料生成柱狀圖、折線圖、圓餅圖及其他圖表型別,無需依賴 Excel Interop。
在 Excel 中,圖表是資料的圖形化呈現,用於以視覺化方式顯示和分析資訊。 Excel 提供多種圖表型別,例如條形圖、線圖和圓餅圖,每種圖表皆適用於不同的資料與分析需求。 When working with IronXL's comprehensive Excel library, you can programmatically create these visualizations to enhance your reports and dashboards.
快速入門:幾秒鐘內建立並繪製線圖
透過 IronXL,您只需幾行程式碼,即可完成安裝、載入工作簿、呼叫 CreateChart、新增資料系列、設定標題與圖例位置,以及 Plot 等操作。 此範例展示如何使用原生 C# 方法建立圖表,無需承受 Interop 的額外負擔。
-
使用NuGet套件管理器安裝https://www.nuget.org/packages/IronXL.Excel
-
複製並運行這段程式碼片段。
// Load workbook and create a line chart with data series var chart = workSheet.CreateChart(ChartType.Line, 2, 2, 15, 10).AddSeries("A2:A10","B2:B10").Title = workSheet["B1"].StringValue; // Set title and legend position, then plot the chart chart.SetTitle("Quick Line Chart").SetLegendPosition(LegendPosition.Bottom).Plot(); -
部署以在您的實時環境中測試
今天就開始在您的專案中使用IronXL,透過免費試用
簡化工作流程(5 個步驟)
- 下載 C# 函式庫以建立和編輯圖表
- 準備製作圖表所需的資料
- 請使用
CreateChart方法來設定圖表型別與位置 - 請使用
AddSeries方法來新增資料系列 - 使用
Plot方法繪製圖表
開始使用 IronXL
如何在 Excel 中建立圖表?
IronXL 支援柱狀圖、散點圖、線圖、圓餅圖、條形圖及面積圖。 要建立圖表,請指定以下元件。 This flexibility allows you to create Excel spreadsheets with rich visualizations tailored to your data presentation needs.
- 使用
CreateChart來指定圖表型別和工作表位置。 - 使用
AddSeries新增系列。 此方法對於某些圖表型別僅接受單一欄位。第一個參數為橫軸數值。 第二項是縱軸數值。 - 可選地指定系列名稱、圖表名稱及圖例位置。
- 呼叫
Plot以渲染圖表。 多次呼叫會產生多個圖表。
Let's create charts from the data in the chart.xlsx Excel file. A preview of the data is displayed below:
製作柱狀圖的流程為何?
柱狀圖非常適合用於比較不同類別之間的數值。 When you load spreadsheet data, you can visualize it effectively using column charts to highlight differences between data points. 以下範例展示如何使用動物族群資料建立多系列柱狀圖:
:path=/static-assets/excel/content-code-examples/how-to/create-edit-charts-column-chart.cs
using IronXL;
using IronXL.Drawing.Charts;
WorkBook workBook = WorkBook.Load("chart.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
// Set the chart type and position
IChart chart = workSheet.CreateChart(ChartType.Column, 5, 5, 20, 10);
string xAxis = "A2:A7";
// Add the series
IChartSeries series = chart.AddSeries(xAxis, "B2:B7");
series.Title = workSheet["B1"].StringValue;
// Add the series
series = chart.AddSeries(xAxis, "C2:C7");
series.Title = workSheet["C1"].StringValue;
// Add the series
series = chart.AddSeries(xAxis, "D2:D7");
series.Title = workSheet["D1"].StringValue;
// Set the chart title
chart.SetTitle("Column Chart");
// Set the legend position
chart.SetLegendPosition(LegendPosition.Bottom);
// Plot the chart
chart.Plot();
workBook.SaveAs("columnChart.xlsx");
Imports IronXL
Imports IronXL.Drawing.Charts
Private workBook As WorkBook = WorkBook.Load("chart.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet
' Set the chart type and position
Private chart As IChart = workSheet.CreateChart(ChartType.Column, 5, 5, 20, 10)
Private xAxis As String = "A2:A7"
' Add the series
Private series As IChartSeries = chart.AddSeries(xAxis, "B2:B7")
series.Title = workSheet("B1").StringValue
' Add the series
series = chart.AddSeries(xAxis, "C2:C7")
series.Title = workSheet("C1").StringValue
' Add the series
series = chart.AddSeries(xAxis, "D2:D7")
series.Title = workSheet("D1").StringValue
' Set the chart title
chart.SetTitle("Column Chart")
' Set the legend position
chart.SetLegendPosition(LegendPosition.Bottom)
' Plot the chart
chart.Plot()
workBook.SaveAs("columnChart.xlsx")
如何建立線圖?
線圖特別擅長呈現隨時間變化的趨勢。由於線圖與柱狀圖顯示相同資訊,因此只需變更圖表型別即可在兩者之間切換。 這使得線圖在讀取包含時間序列資料的 XLSX 檔案時特別有用:
:path=/static-assets/excel/content-code-examples/how-to/create-edit-charts-pie-chart.cs
using IronXL;
using IronXL.Drawing.Charts;
WorkBook workBook = WorkBook.Load("chart.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
// Set the chart type and position
IChart chart = workSheet.CreateChart(ChartType.Pie, 5, 5, 20, 10);
string xAxis = "A2:A7";
// Add the series
IChartSeries series = chart.AddSeries(xAxis, "B2:B7");
series.Title = workSheet["B1"].StringValue;
// Set the chart title
chart.SetTitle("Pie Chart");
// Set the legend position
chart.SetLegendPosition(LegendPosition.Bottom);
// Plot the chart
chart.Plot();
workBook.SaveAs("pieChart.xlsx");
Imports IronXL
Imports IronXL.Drawing.Charts
Private workBook As WorkBook = WorkBook.Load("chart.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet
' Set the chart type and position
Private chart As IChart = workSheet.CreateChart(ChartType.Pie, 5, 5, 20, 10)
Private xAxis As String = "A2:A7"
' Add the series
Private series As IChartSeries = chart.AddSeries(xAxis, "B2:B7")
series.Title = workSheet("B1").StringValue
' Set the chart title
chart.SetTitle("Pie Chart")
' Set the legend position
chart.SetLegendPosition(LegendPosition.Bottom)
' Plot the chart
chart.Plot()
workBook.SaveAs("pieChart.xlsx")
何時該使用圓餅圖?
圓形圖表用以顯示整體中的比例與百分比。 對於圓形圖,僅需一欄資料,因此更易於實作。 They're effective when you want to convert spreadsheet data into visual representations of market share, budget allocation, or category distribution:
:path=/static-assets/excel/content-code-examples/how-to/create-edit-charts-pie-chart.cs
using IronXL;
using IronXL.Drawing.Charts;
WorkBook workBook = WorkBook.Load("chart.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
// Set the chart type and position
IChart chart = workSheet.CreateChart(ChartType.Pie, 5, 5, 20, 10);
string xAxis = "A2:A7";
// Add the series
IChartSeries series = chart.AddSeries(xAxis, "B2:B7");
series.Title = workSheet["B1"].StringValue;
// Set the chart title
chart.SetTitle("Pie Chart");
// Set the legend position
chart.SetLegendPosition(LegendPosition.Bottom);
// Plot the chart
chart.Plot();
workBook.SaveAs("pieChart.xlsx");
Imports IronXL
Imports IronXL.Drawing.Charts
Private workBook As WorkBook = WorkBook.Load("chart.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet
' Set the chart type and position
Private chart As IChart = workSheet.CreateChart(ChartType.Pie, 5, 5, 20, 10)
Private xAxis As String = "A2:A7"
' Add the series
Private series As IChartSeries = chart.AddSeries(xAxis, "B2:B7")
series.Title = workSheet("B1").StringValue
' Set the chart title
chart.SetTitle("Pie Chart")
' Set the legend position
chart.SetLegendPosition(LegendPosition.Bottom)
' Plot the chart
chart.Plot()
workBook.SaveAs("pieChart.xlsx")
如何編輯現有的圖表?
在處理現有 Excel 檔案時,您可能需要修改已建立的圖表。 IronXL 提供直觀的方法來編輯現有圖表,讓您能夠更新標題、重新定位圖例,以及刷新資料。 This is useful when editing Excel files that contain pre-existing visualizations.
您可以在現有圖表中編輯圖例位置和圖表標題。 若要編輯圖表,請先透過存取 Charts 屬性並選取目標圖表來取得該圖表。 接著請開啟圖表屬性以進行編輯:
:path=/static-assets/excel/content-code-examples/how-to/create-edit-charts-edit-chart.cs
using IronXL;
using IronXL.Drawing.Charts;
WorkBook workBook = WorkBook.Load("pieChart.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
// Retrieve the chart
IChart chart = workSheet.Charts[0];
// Edit the legend position
chart.SetLegendPosition(LegendPosition.Top);
// Edit the chart title
chart.SetTitle("Edited Chart");
workBook.SaveAs("editedChart.xlsx");
Imports IronXL
Imports IronXL.Drawing.Charts
Private workBook As WorkBook = WorkBook.Load("pieChart.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet
' Retrieve the chart
Private chart As IChart = workSheet.Charts(0)
' Edit the legend position
chart.SetLegendPosition(LegendPosition.Top)
' Edit the chart title
chart.SetTitle("Edited Chart")
workBook.SaveAs("editedChart.xlsx")
前言
之後
如何從 Excel 中移除圖表?
有時您需要清理 Excel 檔案,刪除過時或不必要的圖表。 This is common when managing worksheets containing multiple visualizations. 若要從試算表中移除現有圖表,請先從 Charts 屬性中取得該圖表。 您將收到一份圖表清單。 將目標圖表物件傳遞給 RemoveChart:
:path=/static-assets/excel/content-code-examples/how-to/create-edit-charts-remove-chart.cs
using IronXL;
using IronXL.Drawing.Charts;
using System.Collections.Generic;
WorkBook workBook = WorkBook.Load("pieChart.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
// Retrieve the chart
List<IChart> chart = workSheet.Charts;
// Remove the chart
workSheet.RemoveChart(chart[0]);
workBook.SaveAs("removedChart.xlsx");
Imports IronXL
Imports IronXL.Drawing.Charts
Imports System.Collections.Generic
Private workBook As WorkBook = WorkBook.Load("pieChart.xlsx")
Private workSheet As WorkSheet = workBook.DefaultWorkSheet
' Retrieve the chart
Private chart As List(Of IChart) = workSheet.Charts
' Remove the chart
workSheet.RemoveChart(chart(0))
workBook.SaveAs("removedChart.xlsx")
進階圖表自訂
除了基本的圖表建立功能外,IronXL 還支援進階自訂選項。 When creating complex reports or dashboards, you can combine charts with other Excel features like conditional formatting to create comprehensive data visualizations.
在商業應用中,圖表通常需要透過資料庫查詢或即時資料來源進行動態生成。 IronXL 可與 .NET 資料結構無縫整合,讓您能從 Lists 或任何可枚舉集合中建立圖表。 這使其非常適合用於生成包含視覺元素的自動化報告。
摘要
IronXL 提供了一套完整的解決方案,用於在 C# 應用程式中處理 Excel 圖表。 無論是建立新的視覺化圖表、修改現有圖表,還是移除過時的圖表,此函式庫皆提供直覺的方法,且無需使用 Excel Interop。透過將圖表功能與 IronXL 的其他功能(如資料處理和格式設定)結合,您可以建立精緻的 Excel 自動化解決方案,藉此提升 .NET 應用程式中的資料呈現與分析能力。
常見問題
如何在不使用Interop的情況下在C#中以編程方式建立Excel圖表?
IronXL提供了一個簡單的API,使您可以在C#中建立Excel圖表,而無需Interop依賴項。您可以使用CreateChart方法指定圖表型別和位置,使用AddSeries新增資料,並使用Plot來渲染圖表——全部通過原生C#程式碼。
我可以在Excel工作表中使用C#建立哪些型別的圖表?
IronXL支持建立各種型別的圖表,包括柱狀圖、散點圖、折線圖、圓餅圖、條形圖和面積圖。您可以在調用CreateChart方法時指定圖表型別,並可使用標題、圖例和資料系列自定義每個圖表。
如何以編程方式將資料系列新增到Excel圖表中?
使用IronXL的AddSeries方法將資料新增到您的圖表中。該方法接受單元格範圍作為參數——第一個參數用於水平軸值,第二個參數用於垂直軸值。您可以新增多個系列以建立多系列圖表。
在Excel中使用C#建立折線圖的最快方法是什麼?
使用IronXL, 您可以在幾行程式碼中建立折線圖: 使用CreateChart(ChartType.Line)初始化圖表, AddSeries()以新增您的資料範圍, SetTitle() 用於圖表標題, 以及Plot() 將圖表渲染到工作表上。
我可以自定義圖表屬性,如標題和圖例位置嗎?
是的,IronXL允許完全自定義Excel圖表。您可以使用SetTitle()新增圖表標題,使用SetLegendPosition()放置圖例(上、下、左、右),並可選擇指定系列名稱以更好地識別資料。
我需要安裝Microsoft Excel來以編程方式建立圖表嗎?
不需要,IronXL可以獨立運作而不需要Microsoft Excel的安裝。它內部處理所有的Excel文件操作和圖表建立,非常適合不能安裝Excel的伺服器環境和應用程式。

