Wie man Excel-Diagramme in C# erstellt und bearbeitet

How to Create and Edit Excel Charts in C#

This article was translated from English: Does it need improvement?
Translated
View the article in English

In Excel ist ein Diagramm eine grafische Darstellung von Daten. Es ist ein visuelles Werkzeug, das verwendet wird, um Daten auf verständlichere und bedeutungsvollere Weise anzuzeigen und zu analysieren. Excel bietet eine Vielzahl von Diagrammtypen, wie Balkendiagramme, Liniendiagramme, Kreisdiagramme und mehr, von denen jeder für verschiedene Arten von Daten und Analysen geeignet ist.

als-Überschrift:2(Schnellstart: Liniendiagramm in Sekunden erstellen und plotten)

Mit IronXL können Sie in nur wenigen Zeilen eine Arbeitsmappe installieren, laden, CreateChart aufrufen, Ihre Datenreihe hinzufügen, Ihren Titel und Ihre Legendenposition festlegen und darstellen. Dieses Beispiel zeigt, wie schnell Sie ohne Diagramm zu einer ansprechenden Darstellung mit nativen C#-Methoden kommen können - ohne Interop-Overhead.

Nuget IconGet started making PDFs with NuGet now:

  1. Install IronXL with NuGet Package Manager

    PM > Install-Package IronXL.Excel

  2. Copy and run this code snippet.

    var chart = workSheet.CreateChart(ChartType.Line, 2, 2, 15, 10).AddSeries("A2:A10","B2:B10").Title = workSheet["B1"].StringValue; chart.SetTitle("Quick Line Chart").SetLegendPosition(LegendPosition.Bottom).Plot();
  3. Deploy to test on your live environment

    Start using IronXL in your project today with a free trial
    arrow pointer
class="hsg-featured-snippet">

Minimaler Workflow (5 Schritte)

  1. Laden Sie die C#-Bibliothek zum Erstellen und Bearbeiten von Diagrammen herunter
  2. Bereiten Sie die Daten zum Erstellen des Diagramms vor
  3. Verwenden Sie die CreateChart-Methode, um den Diagrammtyp und die Position festzulegen
  4. Verwenden Sie die AddSeries-Methode, um Datenreihen hinzuzufügen
  5. Stellen Sie das Diagramm mit der Plot-Methode dar


Beginnen Sie mit IronXL

Nutzen Sie IronXL heute kostenlos in Ihrem Projekt.

Erster Schritt:
green arrow pointer


Beispiel zur Diagrammerstellung

IronXL unterstützt Säulen-, Punkt-, Linien-, Kreis-, Balken- und Flächendiagramme. Um ein Diagramm zu erstellen, müssen wir einige Dinge separat angeben.

  1. Beginnen Sie mit der Methode CreateChart, um den Diagrammtyp und seinen Standort im Arbeitsblatt festzulegen.
  2. Fügen Sie die Reihen mit der Methode AddSeries hinzu. Diese Methode akzeptiert auch eine einzelne Datenreihe, da dies für einige Diagrammtypen ausreichend ist. Der erste Parameter repräsentiert die Werte für die horizontale Achse. Der zweite Parameter repräsentiert die Werte für die vertikale Achse.
  3. Optional den Seriennamen, Diagrammnamen und die Legendenposition angeben.
  4. Rufen Sie die Methode Plot auf, um das Diagramm darzustellen. Die Methode stellt das Diagramm mit allen hinzugefügten Daten dar. Mehrere Aufrufe dieser Methode führen zur Darstellung mehrerer Diagramme, anstatt das bestehende Diagramm zu ändern.

Let's create some charts from the data in the chart.xlsx Excel file. A preview of the data is displayed below:

class="content-img-align-center">
class="center-image-wrapper"> Daten

Säulendiagramm

: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")
$vbLabelText   $csharpLabel
class="content-img-align-center">
class="center-image-wrapper"> Säulendiagramm

Liniendiagramm

Da ein Liniendiagramm so viele Informationen wie ein Säulendiagramm darstellen kann, ist der Wechsel zwischen den beiden sehr einfach. Sie müssen nur den Diagrammtyp ändern.

:path=/static-assets/excel/content-code-examples/how-to/create-edit-charts-line-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("Line Chart");

// Set the legend position
chart.SetLegendPosition(LegendPosition.Bottom);

// Plot the chart
chart.Plot();

workBook.SaveAs("lineChart.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("Line Chart")

' Set the legend position
chart.SetLegendPosition(LegendPosition.Bottom)

' Plot the chart
chart.Plot()

workBook.SaveAs("lineChart.xlsx")
$vbLabelText   $csharpLabel
class="content-img-align-center">
class="center-image-wrapper"> Liniendiagramm

Kreisdiagramm

Für ein Kreisdiagramm wird nur eine Datenreihe benötigt.

: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")
$vbLabelText   $csharpLabel
class="content-img-align-center">
class="center-image-wrapper"> Kreisdiagramm

Beispiel zur Diagrammbearbeitung

In einem bestehenden Diagramm können Sie einige Dinge bearbeiten. Sie können die Legendenposition und den Diagrammtitel bearbeiten. Um das Diagramm zu bearbeiten, müssen Sie zuerst das Diagramm durch Zugriff auf die Charts-Eigenschaft abrufen und das gezielte Diagramm zur Bearbeitung auswählen. Von dort aus greifen Sie auf die Eigenschaften des Diagramms zu, um Ihre Bearbeitungen vorzunehmen.

: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")
$vbLabelText   $csharpLabel
class="competitors-section__wrapper-even-1">
Vorher
Nachher

Beispiel zum Entfernen von Diagrammen

Um ein bestehendes Diagramm aus einer Tabelle zu entfernen, rufen Sie zuerst das Diagramm über die Charts-Eigenschaft des Arbeitsblattobjekts ab. Sie erhalten eine Liste von Diagrammen aus der Charts-Eigenschaft. Übergeben Sie das gezielte Diagrammobjekt an die Methode RemoveChart, um es zu entfernen.

: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")
$vbLabelText   $csharpLabel

Häufig gestellte Fragen

Wie kann ich Excel-Diagramme in C# ohne Interop erstellen?

Sie können Excel-Diagramme in C# ohne Interop erstellen, indem Sie die IronXL-Bibliothek verwenden. Laden Sie zuerst die Bibliothek von NuGet herunter und verwenden Sie dann Methoden wie CreateChart, um den Diagrammtyp und dessen Position im Arbeitsblatt festzulegen.

Welche Schritte sind an der Anpassung von Excel-Diagrammen in C# beteiligt?

Um Excel-Diagramme in C# anzupassen, bereiten Sie zuerst Ihre Daten vor und verwenden dann die AddSeries-Methode, um Datenserien hinzuzufügen. Passen Sie Diagrammeigenschaften wie Titel und Legendenpositionen an, indem Sie über die Charts-Eigenschaft des Arbeitsblatts auf das Diagramm zugreifen.

Wie kann ich zwischen verschiedenen Diagrammtypen in C# wechseln?

Der Wechsel zwischen verschiedenen Diagrammtypen in C# ist einfach. Ändern Sie einfach den Diagrammtyp-Parameter in der CreateChart-Methode, um zwischen Säulen-, Streu-, Linien-, Kreis-, Balken- oder Flächendiagrammen zu wechseln.

Was ist die Methode, um Änderungen nach dem Bearbeiten eines Excel-Diagramms in C# zu speichern?

Nach dem Bearbeiten eines Excel-Diagramms verwenden Sie die SaveAs-Methode, um Änderungen an der Arbeitsmappe zu speichern und sicherzustellen, dass alle Änderungen erhalten bleiben.

Kann ich ein bestehendes Diagramm aus einem Excel-Arbeitsblatt mit C# entfernen?

Ja, Sie können ein bestehendes Diagramm entfernen, indem Sie es über die Charts-Eigenschaft des Arbeitsblatts abrufen und dann die RemoveChart-Methode verwenden, um es zu löschen.

Welche Vorteile bietet IronXL bei der Diagrammerstellung in .NET-Anwendungen?

IronXL ermöglicht eine effiziente Diagrammerstellung und -bearbeitung in .NET-Anwendungen ohne Abhängigkeit von Excel Interop, was die Leistung verbessert und die Komplexität reduziert. Es unterstützt verschiedene Diagrammtypen und bietet Methoden zur einfachen Anpassung.

Wie kann ich ein Diagramm in C# zeichnen, nachdem Datenserien hinzugefügt wurden?

Nachdem Sie Datenserien mit der AddSeries-Methode hinzugefügt haben, können Sie das Diagramm zeichnen, indem Sie die Plot-Methode aufrufen, die das Diagramm mit den bereitgestellten Daten erstellt.

Ist es möglich, die Eigenschaften eines Diagramms in C# nach dessen Erstellung zu bearbeiten?

Ja, Sie können die Eigenschaften eines Diagramms in C# bearbeiten, indem Sie über die Charts-Eigenschaft des Arbeitsblatts darauf zugreifen und Attribute wie den Diagrammtitel, die Legendenposition und mehr ändern.

Chaknith Bin
Software Ingenieur
Chaknith arbeitet an IronXL und IronBarcode. Er hat umfassende Expertise in C# und .NET und hilft, die Software zu verbessern und Kunden zu unterstützen. Seine Einblicke aus Benutzerinteraktionen tragen zu besseren Produkten, Dokumentationen und einem insgesamt besseren Erlebnis bei.
Bereit anzufangen?
Nuget Downloads 1,686,155 | Version: 2025.11 gerade veröffentlicht