Diagramme sind ein hervorragendes Werkzeug, um Daten übersichtlich darzustellen. Darüber hinaus stellen sie die Daten visuell dar, was die Nutzung großer Datenmengen erleichtert. Sie finden Diagramme möglicherweise hilfreich in Situationen, in denen Sie Daten wie den monatlichen Budgetvergleich oder die Produktakzeptanzrate anzeigen müssen. Vor diesem Hintergrund lernen Sie in diesem Artikel, wie Sie mit C++ Diagramme in Excel Dateien erstellen.
- C++-API zum Erstellen von Excel-Diagrammen
- Liniendiagramm in Excel mit C++ erstellen
- Erstellen eines Pyramidendiagramms in Excel mit C++
- Blasendiagramm in Excel mit C++ erstellen
- Zusätzliche unterstützte Diagramme
- Holen Sie sich eine kostenlose Lizenz
C++-API zum Erstellen von Excel-Diagrammen
Aspose.Cells for C++ ist eine native C++ Bibliothek, mit der Sie Excel Dateien erstellen, lesen und ändern können, ohne dass Microsoft Excel installiert sein muss. Die API unterstützt auch das Erstellen von Diagrammen in Excel Dateien. Sie können die API entweder über NuGet installieren oder direkt aus dem Abschnitt Downloads herunterladen.
PM> Install-Package Aspose.Cells.Cpp
Liniendiagramm in Excel mit C++ erstellen
Um ein Liniendiagramm zu erstellen, verwenden Sie beim Hinzufügen des Diagramms den Aufzählungswert ChartType\Line. Im Folgenden sind die Schritte zum Erstellen eines Liniendiagramms in einer Excel Datei aufgeführt.
- Erstellen Sie zunächst eine Instanz der Klasse IWorkbook.
- Rufen Sie das Arbeitsblatt ab, in dem Sie das Diagramm hinzufügen möchten, indem Sie die Methode IWorkbook->GetIWorksheets()->GetObjectByIndex (Aspose::Cells::Systems::Int32 index) verwenden.
- Fügen Sie die Daten für das Diagramm ein.
- Fügen Sie das Diagramm mit IWorksheet->GetICharts()->Add (Aspose::Cells::Charts::ChartType type,Aspose::Cells::Systems::Int32 upperLeftRow, Aspose::Cells::Systems ::Int32 UpperLeftColumn, Aspose::Cells::Systems::Int32 LowerRightRow, Aspose::Cells::Systems::Int32 LowerRightColumn) Methode.
- Greifen Sie mit der methode IWorksheet->GetICharts()->GetObjectByIndex (Aspose::Cells::Systems::Int32 index) auf das Diagramm mit seinem Index zu.
- Fügen Sie die Datenquelle für das Diagramm mit IChart->GetNISeries()->Add (intrusiveptrAspose::Cells::Systems::String area, bool isVertical) methode.
- Speichern Sie abschließend die Excel Datei mit IWorkbook->Save (intrusiveptrAspose::Cells::Systems::String fileName) methode.
Im Folgenden finden Sie den Beispielcode zum Erstellen eines Liniendiagramms in Excel mithilfe von C++.
// Verzeichnispfad ausgeben.
StringPtr outDir = new String("OutputDirectory\\");
// Pfad der ausgegebenen Excel Datei
StringPtr outputChartTypeLine = outDir->StringAppend(new String("outputChartTypeLine.xlsx"));
// Erstellen Sie eine neue Arbeitsmappe
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook();
// Holen Sie sich das erste Arbeitsblatt, das standardmäßig erstellt wird
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Hinzufügen von Beispielwerten zu Zellen
worksheet->GetICells()->GetObjectByIndex(new String("A1"))->PutValue(50);
worksheet->GetICells()->GetObjectByIndex(new String("A2"))->PutValue(100);
worksheet->GetICells()->GetObjectByIndex(new String("A3"))->PutValue(150);
worksheet->GetICells()->GetObjectByIndex(new String("B1"))->PutValue(4);
worksheet->GetICells()->GetObjectByIndex(new String("B2"))->PutValue(20);
worksheet->GetICells()->GetObjectByIndex(new String("B3"))->PutValue(50);
// Hinzufügen eines Diagramms zum Arbeitsblatt
int chartIndex = worksheet->GetICharts()->Add(Aspose::Cells::Charts::ChartType::ChartType_Line, 5, 0, 20, 8);
// Zugriff auf die Instanz des neu hinzugefügten Diagramms
intrusive_ptr<Aspose::Cells::Charts::IChart> chart = worksheet->GetICharts()->GetObjectByIndex(chartIndex);
// Hinzufügen von SeriesCollection (Diagrammdatenquelle) zum Diagramm im Bereich von „A1“-Zelle bis „B3“
chart->GetNISeries()->Add(new String("A1:B3"), true);
// Speichern der Excel Datei
workbook->Save(outputChartTypeLine);
Erstellen eines Pyramidendiagramms in Excel mit C++
Verwenden Sie zum Erstellen eines Pyramidendiagramms den Aufzählungswert ChartType\Pyramid, um den Diagrammtyp beim Hinzufügen des Diagramms anzugeben. Im Folgenden sind die Schritte zum Erstellen eines Pyramidendiagramms in einer Excel Datei aufgeführt.
- Erstellen Sie zunächst eine Instanz der Klasse IWorkbook.
- Rufen Sie das Arbeitsblatt ab, dem Sie das Diagramm hinzufügen möchten, indem Sie die Methode IWorkbook->GetIWorksheets()->GetObjectByIndex (Aspose::Cells::Systems::Int32 index) verwenden.
- Fügen Sie die Daten für das Diagramm ein.
- Fügen Sie das Diagramm mit IWorksheet->GetICharts()->Add (Aspose::Cells::Charts::ChartType type,Aspose::Cells::Systems::Int32 upperLeftRow, Aspose::Cells::Systems ::Int32 UpperLeftColumn, Aspose::Cells::Systems::Int32 LowerRightRow, Aspose::Cells::Systems::Int32 LowerRightColumn) methode.
- Greifen Sie mit der methode IWorksheet->GetICharts()->GetObjectByIndex (Aspose::Cells::Systems::Int32 index) auf das Diagramm mit seinem Index zu.
- Fügen Sie die Datenquelle für das Diagramm mit IChart->GetNISeries()->Add (intrusiveptrAspose::Cells::Systems::String area, bool isVertical) methode.
- Speichern Sie abschließend die Excel Datei mit IWorkbook->Save (intrusiveptrAspose::Cells::Systems::String fileName) methode.
Im Folgenden finden Sie den Beispielcode zum Erstellen eines Pyramidendiagramms in Excel mithilfe von C++.
// Verzeichnispfad ausgeben.
StringPtr outDir = new String("OutputDirectory\\");
// Pfad der ausgegebenen Excel Datei
StringPtr outputChartTypePyramid = outDir->StringAppend(new String("outputChartTypePyramid.xlsx"));
// Erstellen Sie eine neue Arbeitsmappe
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook();
// Holen Sie sich das erste Arbeitsblatt, das standardmäßig erstellt wird
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Hinzufügen von Beispielwerten zu Zellen
worksheet->GetICells()->GetObjectByIndex(new String("A1"))->PutValue(50);
worksheet->GetICells()->GetObjectByIndex(new String("A2"))->PutValue(100);
worksheet->GetICells()->GetObjectByIndex(new String("A3"))->PutValue(150);
worksheet->GetICells()->GetObjectByIndex(new String("B1"))->PutValue(4);
worksheet->GetICells()->GetObjectByIndex(new String("B2"))->PutValue(20);
worksheet->GetICells()->GetObjectByIndex(new String("B3"))->PutValue(50);
// Hinzufügen eines Diagramms zum Arbeitsblatt
int chartIndex = worksheet->GetICharts()->Add(Aspose::Cells::Charts::ChartType::ChartType_Pyramid, 5, 0, 20, 8);
// Zugriff auf die Instanz des neu hinzugefügten Diagramms
intrusive_ptr<Aspose::Cells::Charts::IChart> chart = worksheet->GetICharts()->GetObjectByIndex(chartIndex);
// Hinzufügen von SeriesCollection (Diagrammdatenquelle) zum Diagramm im Bereich von „A1“-Zelle bis „B3“
chart->GetNISeries()->Add(new String("A1:B3"), true);
// Speichern der Excel Datei
workbook->Save(outputChartTypePyramid);
Blasendiagramm in Excel mit C++ erstellen
Um ein Blasendiagramm zu erstellen, übergeben Sie den Aufzählungswert ChartType\Bubble an die Methode IWorksheet->GetICarts()->Add(). Im Folgenden sind die Schritte zum Erstellen eines Blasendiagramms in einer Excel Datei aufgeführt.
- Erstellen Sie zunächst eine Instanz der Klasse IWorkbook.
- Rufen Sie das Arbeitsblatt ab, dem Sie das Diagramm hinzufügen möchten, indem Sie die Methode IWorkbook->GetIWorksheets()->GetObjectByIndex (Aspose::Cells::Systems::Int32 index) verwenden.
- Fügen Sie die Daten für das Diagramm ein.
- Fügen Sie das Diagramm mit IWorksheet->GetICharts()->Add (Aspose::Cells::Charts::ChartType type,Aspose::Cells::Systems::Int32 upperLeftRow, Aspose::Cells::Systems ::Int32 UpperLeftColumn, Aspose::Cells::Systems::Int32 LowerRightRow, Aspose::Cells::Systems::Int32 LowerRightColumn) Methode.
- Greifen Sie mit der methode IWorksheet->GetICharts()->GetObjectByIndex (Aspose::Cells::Systems::Int32 index) auf das Diagramm mit seinem Index zu.
- Fügen Sie die Datenquelle, Blasengrößen, X-Werte und Y-Werte für das Diagramm hinzu, indem Sie IChart->GetNISeries()->Add (intrusiveptrAspose::Cells::Systems::String area, bool isVertical), IChart->GetNISeries()->GetObjectByIndex(0)->SetBubbleSizes (intrusiveptrAspose::Cells::Systems::String value), IChart->GetNISeries()->GetObjectByIndex(0)->SetXValues (intrusiveptrAspose::Cells::Systems::String value), IChart->GetNISeries()->GetObjectByIndex(0)->SetValues (intrusiveptrAspose::Cells::Systems::String value) Methoden.
- Speichern Sie abschließend die Excel Datei mit IWorkbook->Save (intrusiveptrAspose::Cells::Systems::String fileName) methode.
Im Folgenden finden Sie den Beispielcode zum Erstellen eines Blasendiagramms in Excel mithilfe von C++.
// Verzeichnispfad ausgeben.
StringPtr outDir = new String("OutputDirectory\\");
// Pfad der ausgegebenen Excel Datei
StringPtr outputChartTypeBubble = outDir->StringAppend(new String("outputChartTypeBubble.xlsx"));
// Erstellen Sie eine neue Arbeitsmappe
intrusive_ptr<IWorkbook> workbook = Factory::CreateIWorkbook();
// Holen Sie sich das erste Arbeitsblatt, das standardmäßig erstellt wird
intrusive_ptr<IWorksheet> worksheet = workbook->GetIWorksheets()->GetObjectByIndex(0);
// Geben Sie die Daten für die Reihe des Diagramms ein
// Y-Werte
worksheet->GetICells()->GetObjectByIndex(0, 0)->PutValue((StringPtr)new String("Y-Werte"));
worksheet->GetICells()->GetObjectByIndex(0, 1)->PutValue(2);
worksheet->GetICells()->GetObjectByIndex(0, 2)->PutValue(4);
worksheet->GetICells()->GetObjectByIndex(0, 3)->PutValue(6);
// Blasengröße
worksheet->GetICells()->GetObjectByIndex(1, 0)->PutValue((StringPtr)new String("Blasengröße"));
worksheet->GetICells()->GetObjectByIndex(1, 1)->PutValue(2);
worksheet->GetICells()->GetObjectByIndex(1, 2)->PutValue(3);
worksheet->GetICells()->GetObjectByIndex(1, 3)->PutValue(1);
// X-Werte
worksheet->GetICells()->GetObjectByIndex(2, 0)->PutValue((StringPtr)new String("X-Werte"));
worksheet->GetICells()->GetObjectByIndex(2, 1)->PutValue(1);
worksheet->GetICells()->GetObjectByIndex(2, 2)->PutValue(2);
worksheet->GetICells()->GetObjectByIndex(2, 3)->PutValue(3);
// Legen Sie die Breite der ersten Spalte fest
worksheet->GetICells()->SetColumnWidth(0, 12);
// Hinzufügen eines Diagramms zum Arbeitsblatt
int chartIndex = worksheet->GetICharts()->Add(Aspose::Cells::Charts::ChartType::ChartType_Bubble, 5, 0, 20, 8);
// Zugriff auf die Instanz des neu hinzugefügten Diagramms
intrusive_ptr<Aspose::Cells::Charts::IChart> chart = worksheet->GetICharts()->GetObjectByIndex(chartIndex);
// Hinzufügen von SeriesCollection (Diagrammdatenquelle) zum Diagramm im Bereich von B1 bis D1
chart->GetNISeries()->Add(new String("B1:D1"), true);
// Stellen Sie Blasengrößen ein
chart->GetNISeries()->GetObjectByIndex(0)->SetBubbleSizes(new String("B2:D2"));
// Stellen Sie die Werte der X-Achse ein
chart->GetNISeries()->GetObjectByIndex(0)->SetXValues(new String("B3:D3"));
// Stellen Sie die Werte der Y-Achse ein
chart->GetNISeries()->GetObjectByIndex(0)->SetValues(new String("B1:D1"));
// Speichern der Excel Datei
workbook->Save(outputChartTypeBubble);
Zusätzliche unterstützte Diagramme
Abgesehen von den oben gezeigten Diagrammen unterstützt Aspose.Cells for C++ viele zusätzliche Diagrammtypen. Sie können die vollständige Liste der unterstützten Diagramme anzeigen, indem Sie die Aufzählungswerte ChartType anzeigen.
Holen Sie sich eine kostenlose Lizenz
Sie können die API ohne Evaluierungseinschränkungen testen, indem Sie eine kostenlose temporäre Lizenz anfordern.
Fazit
In diesem Artikel haben Sie gelernt, wie Sie mit C++ Diagramme in Excel-Tabellen erstellen. Insbesondere haben Sie gesehen, wie Sie Linien, Pyramiden und Blasendiagramme mit Aspose.Cells für die C++-API erstellen. Darüber hinaus haben Sie gesehen, dass die API eine große Anzahl anderer Diagramme unterstützt, die Sie in Ihren Excel Dateien erstellen können. Neben Diagrammen bietet die API viele zusätzliche Funktionen für die Arbeit mit Excel Dateien. Sie können die API im Detail erkunden, indem Sie die offizielle Dokumentation besuchen. Bei Fragen können Sie uns gerne in unserem kostenlosen Support-Forum erreichen.