Diagramm
Diagramm hinzufügen
func (f *File) AddChart(sheet, cell string, chart *ChartOptions, combo ...*ChartOptions) error
AddChart bietet die Methode zum Hinzufügen eines Diagramms zu einem Arbeitsblatt anhand eines bestimmten Diagrammformatsatzes (z. B. Versatz, Skalierung, Seitenverhältniseinstellung und Druckeinstellungen) und festgelegter Eigenschaften.
Das Folgende zeigt den Type des Diagramms, das von Excelize unterstützt wird:
| ID | Aufzählung | Diagramm |
|---|---|---|
| 0 | Area | 2D Flächendiagramm |
| 1 | AreaStacked | 2D gestapeltes Flächendiagramm |
| 2 | AreaPercentStacked | 2D 100% gestapeltes Flächendiagramm |
| 3 | Area3D | 3D Flächendiagramm |
| 4 | Area3DStacked | 3D gestapeltes Flächendiagramm |
| 5 | Area3DPercentStacked | 3D 100% gestapeltes Flächendiagramm |
| 6 | Bar | 2D Clusterbalkendiagramm |
| 7 | BarStacked | 2D gestapeltes Balkendiagramm |
| 8 | BarPercentStacked | 2D 100% gestapeltes Balkendiagramm |
| 9 | Bar3DClustered | 3D Clusterbalkendiagramm |
| 10 | Bar3DStacked | 3D gestapeltes Balkendiagramm |
| 11 | Bar3DPercentStacked | 3D 100% gestapeltes Balkendiagramm |
| 12 | Bar3DConeClustered | 3D Kegel-Cluster-Balkendiagramm |
| 13 | Bar3DConeStacked | 3D Kegel gestapelte Balkendiagramm |
| 14 | Bar3DConePercentStacked | 3D 100% Kegelbalkendiagramm |
| 15 | Bar3DPyramidClustered | 3D Pyramiden-Cluster-Balkendiagramm |
| 16 | Bar3DPyramidStacked | 3D Pyramide gestapelt Balkendiagramm |
| 17 | Bar3DPyramidPercentStacked | 3D 100% Pyramide gestapelt Balkendiagramm |
| 18 | Bar3DCylinderClustered | 3D Zylinder-Clusterbalkendiagramm |
| 19 | Bar3DCylinderStacked | 3D Zylinder gestapeltes Balkendiagramm |
| 20 | Bar3DCylinderPercentStacked | 3D 100% Zylinder gestapelte Balkendiagramm |
| 21 | Col | 2D Cluster-Säulendiagramm |
| 22 | ColStacked | 2D gestapeltes Säulendiagramm |
| 23 | ColPercentStacked | 2D 100% gestapeltes Säulendiagramm |
| 24 | Col3DClustered | 3D Cluster-Säulendiagramm |
| 25 | Col3D | 3D Säulendiagramm |
| 26 | Col3DStacked | 3D gestapeltes Säulendiagramm |
| 27 | Col3DPercentStacked | 3D 100% gestapeltes Säulendiagramm |
| 28 | Col3DCone | 3D Kegel-Säulendiagramm |
| 29 | Col3DConeClustered | 3D Kegel-Cluster-Säulendiagramm |
| 30 | Col3DConeStacked | 3D Kegel gestapeltes Säulendiagramm |
| 31 | Col3DConePercentStacked | 3D 100% Kegel gestapeltes Säulendiagramm |
| 32 | Col3DPyramid | 3D Pyramidensäulendiagramm |
| 33 | Col3DPyramidClustered | 3D Pyramiden-Pyramiden-Säulendiagramm |
| 34 | Col3DPyramidStacked | 3D Pyramidenstapelsäulendiagramm |
| 35 | Col3DPyramidPercentStacked | 3D 100% Pyramide gestapelt Säulendiagramm |
| 36 | Col3DCylinder | 3D Zylinder-Säulendiagramm |
| 37 | Col3DCylinderClustered | 3D Zylinder-Cluster-Säulendiagramm |
| 38 | Col3DCylinderStacked | 3D Zylinder gestapeltes Säulendiagramm |
| 39 | Col3DCylinderPercentStacked | 3D 100% Zylinder gestapeltsäulendiagramm |
| 40 | Doughnut | donut-Diagramm |
| 41 | Line | liniendiagramm |
| 42 | Line3D | 3D Liniendiagramm |
| 43 | Pie | kreisdiagramm |
| 44 | Pie3D | 3D Kreisdiagramm |
| 45 | PieOfPie | Doppeltes Tortendiagramm |
| 46 | BarOfPie | Balken eines Kreisdiagramms |
| 47 | Radar | netzdiagramm |
| 48 | Scatter | streudiagramm |
| 49 | Surface3D | 3D Oberflächendiagramm |
| 50 | WireframeSurface3D | 3D Drahtmodell-Oberflächendiagramm |
| 51 | Contour | konturdiagramm |
| 52 | WireframeContour | wireframe-Konturdiagramm |
| 53 | Bubble | blasendiagramm |
| 54 | Bubble3D | 3D Blasendiagramm |
| 55 | StockHighLowClose | Hoch-Tief-Schluss Aktienchart |
| 56 | StockOpenHighLowClose | Öffnungs-Hoch-Tief-Schluss Aktienchart |
Im Office Excel-Diagrammdatenbereich gibt Series den Informationssatz an, für den Daten gezeichnet werden sollen, das Legendenelement (Serie) und die horizontale (Kategorie) Achsenbeschriftung.
Folgende Optionen können für die Series eingestellt werden:
| Parameter | Erläuterung |
|---|---|
| Name | Legendenelement (Serie), angezeigt in der Diagrammlegende und in der Formelleiste. Der Parameter Name ist optional. Wenn Sie diesen Wert nicht angeben, lautet der Standardwert Serie 1 .. n. Name Unterstützung für die Darstellung von Formeln, zum Beispiel: Sheet1!$A$1. |
| Categories | Beschriftung der horizontalen Achse (Kategorie). Der Parameter Categories ist in den meisten Diagrammtypen optional. Der Standardwert ist eine zusammenhängende Folge der Form 1..n. |
| Values | Der Diagrammdatenbereich, der der wichtigste Parameter in Series ist, ist auch der einzige erforderliche Parameter beim Erstellen eines Diagramms. Diese Option verknüpft das Diagramm mit den angezeigten Arbeitsblattdaten. |
| Fill | Dadurch wird das Format für die Datenreihenfüllung festgelegt. |
| Legend | Legt die Schriftart des Legendentextes einer Datenreihe fest. Die Eigenschaft Legend ist optional. |
| Line | Hiermit wird das Linienformat des Liniendiagramms festgelegt. Die Eigenschaft Line ist optional. Wenn sie nicht angegeben wird, wird der Standardstil verwendet. Die Optionen, die eingestellt werden können, sind Width. Der Bereich von Width beträgt 0.25pt - 999pt. Wenn der Wert für width außerhalb des Bereichs liegt, beträgt die Standardbreite der Linie 2pt. |
| Marker | Dies setzt die Markierung des Liniendiagramms und des Streudiagramms. Der Bereich des optionalen Feldes Size liegt zwischen 2 und 72 (Standardwert ist 5). Der Aufzählungswert des optionalen Felds Symbol ist (Standardwert ist auto): circle, dash, diamond, dot, none, picture, plus, square, star, triangle, x, auto. |
| DataLabelPosition | Dadurch wird die Position der Datenbeschriftung der Diagrammreihe festgelegt. |
| DataPoint | Hiermit wird das Format für einzelne Datenpunkte in einer Kreis-, Torten- oder 3D-Tortendiagrammreihe festgelegt. Die DataPoint eigenschaft ist optional. |
Legen Sie die Eigenschaften der Diagrammlegende fest. Folgende Optionen können eingestellt werden:
| Parameter | Typ | Erläuterung |
|---|---|---|
| Position | string |
Die Position der Diagrammlegende |
| ShowLegendKey | bool |
Stellen Sie die Legendenschlüssel ein, die in Datenbezeichnungen angezeigt werden sollen |
| Font | Font |
SLegen Sie die Schrifteigenschaften des Diagrammlegendentextes fest. Die einstellbaren Eigenschaften entsprechen denen des Schriftobjekts, das für die Zellenformatierung verwendet wird. Die Eigenschaften Schriftfamilie, Größe, Farbe, Fettdruck, Kursivdruck, Unterstrichenheit und Durchstreichung können festgelegt werden |
Stellen Sie die Position der Diagrammlegende ein. Die Standard-Legendenposition ist right. Die verfügbaren Positionen sind:
| Parameter | Erläuterung |
|---|---|
| none | Legende deaktivieren |
| top | Oben drauf |
| bottom | Am Boden |
| left | Links |
| right | Rechts |
| top_right | Oben rechts |
Der Parametersatz ShowLegendKey der Legendenschlüssel soll in Datenbeschriftungen angezeigt werden. Der Standardwert ist false.
Die Eigenschaften des Diagrammtitels werden über das Feld Title mit dem Datentyp ChartTitle festgelegt. Folgende Eigenschaften können festgelegt werden:
| Parameter | Typ | Erläuterung |
|---|---|---|
| Fill | Fill |
Legen Sie die Füllfarbe des Diagrammtitels fest. Die Fill-Eigenschaft ist optional. |
| Border | LineOptions |
Legen Sie den Rahmen für den Diagrammtitel fest. Die einstellbaren Eigenschaften entsprechen denen des Rahmenobjekts, das für die Zellenformatierung verwendet wird. Die Eigenschaft Border ist optional. |
| Paragraph | []RichTextRun |
Legen Sie den formatierten Text für den Diagrammtitel fest. Die Eigenschaft Paragraph ist optional und kann nicht gleichzeitig mit der Eigenschaft Formula festgelegt werden. |
| Font | *Font |
Legen Sie die Schriftarteigenschaften des Formeltextes im Diagrammtitel fest. Die Eigenschaft Font ist optional. |
| Formula | string |
Legen Sie die Formel für den Diagrammtitel fest. Beispiel: Sheet1!$A$1. Die Eigenschaft Formula ist optional und kann nicht gleichzeitig mit der Eigenschaft Paragraph festgelegt werden. |
| OffsetX | int |
Legen Sie den horizontalen Versatz des Diagrammtitels fest. Die Eigenschaft OffsetX ist optional. Der Standardwert ist 0, und der Wert von OffsetX muss eine ganze Zahl zwischen 0 und 100 sein. |
| OffsetY | int |
Legen Sie den vertikalen Versatz des Diagrammtitels fest. Die Eigenschaft OffsetY ist optional. Der Standardwert ist 0, und der Wert von OffsetY muss eine ganze Zahl zwischen 0 und 100 sein. |
| Width | int |
Legen Sie die Breite des Diagrammtitels fest. Die Eigenschaft Width ist optional. Der Standardwert ist 0, und der Wert von Width muss eine ganze Zahl zwischen 0 und 100 sein. |
| Height | int |
Legen Sie die Höhe des Diagrammtitels fest. Die Eigenschaft Height ist optional. Der Standardwert ist 0, und der Wert von Height muss eine ganze Zahl zwischen 0 und 100 sein. |
| Overlay | bool |
Legen Sie fest, dass der Diagrammtitel über dem Diagramm angezeigt werden soll. Die Eigenschaft Overlay ist optional. Der Standardwert ist false. |
Der Parameter ShowBlanksAs liefert die Einstellung "Zellen ausblenden und leeren". Der Standardwert ist: gap. In der Excel-Anwendung wird "leere Zelle als" angezeigt: "Leerzeichen". Die folgenden Werte sind für diesen Parameter optional:
| Parameter | Erläuterung |
|---|---|
| gap | Leerzeichen |
| span | Verbinden Sie Datenpunkte mit geraden Linien |
| zero | Nullwert |
Legen Sie die Diagrammlegende für alle Datenreihen mit der Eigenschaft Legend fest. Die Eigenschaft Legend ist optional.
Legen Sie die Blasengröße in allen Datenreihen für das Blasendiagramm oder 3D-Blasendiagramm mit der Eigenschaft BubbleSizes fest. Die Eigenschaft BubbleSizes ist optional. Die Standardbreite ist 100 und der Wert sollte größer als 0 und kleiner oder gleich 300 sein.
Legen Sie die Donut-Lochgröße in allen Datenreihen für das Donut-Diagramm mit der Eigenschaft HoleSize fest. Die Eigenschaft HoleSize ist optional. Die Standardbreite ist 75 und der Wert sollte größer als 0 und kleiner oder gleich 90 sein.
Gibt an, dass jede Datenpunktmarkierung in der Reihe eine andere Farbe durch VaryColors hat. Der Standardwert ist true.
Der Parameter Format bietet Einstellungen für Parameter wie Diagrammversatz, Skalierung, Seitenverhältniseinstellungen und Druckeigenschaften sowie für die in der Funktion AddPicture verwendeten.
Die Eigenschaften des Diagrammbereichs werden über das Feld PlotArea mit dem Datentyp ChartPlotArea festgelegt. Folgende Eigenschaften können festgelegt werden:
| Parameter | Typ | Standard | Erläuterung |
|---|---|---|---|
| SecondPlotValues | int |
0 |
Gibt die Werte im zweiten Diagramm für die Diagramme PieOfPie und BarOfPie an. |
| ShowBubbleSize | bool |
false |
Gibt an, dass die Blasengröße auf einem Datenetikett angegeben werden soll. |
| ShowCatName | bool |
true |
Gibt an, dass der Kategoriename in der Datenbeschriftung angezeigt werden soll. Die Eigenschaft ShowCatName ist optional. |
| ShowDataTable | bool |
false |
Wird zum Hinzufügen einer Datentabelle unter dem Diagramm verwendet und ist je nach Diagrammtyp nur für Diagramme vom Typ Flächen-, Balken-, Säulen- und Linienreihen verfügbar. |
| ShowDataTableKeys | bool |
false |
Wird zum Hinzufügen eines Legendenschlüssels in der Datentabelle verwendet. Funktioniert nur, wenn ShowDataTable aktiviert ist. Die Eigenschaft ShowDataTableKeys ist optional. |
| ShowLeaderLines | bool |
false |
Gibt an, welche Führungslinien für Datenbeschriftungen angezeigt werden sollen. Die Eigenschaft ShowLeaderLines ist optional. |
| ShowPercent | bool |
false |
Gibt an, dass der Prozentsatz auf einem Datenetikett angegeben werden soll. |
| ShowSerName | bool |
false |
Gibt an, dass der Serienname auf einem Datenetikett angezeigt werden soll. |
| ShowVal | bool |
false |
Gibt an, dass der Wert auf einem Datenetikett angezeigt werden soll. |
| Fill | Fill |
N/A | Legen Sie die Füllfarbe des Diagramms fest. |
| UpBars | ChartUpDownBar |
N/A | Gibt das Format für Aufwärtsbalken in Aktiencharts an. Die Eigenschaft UpBars ist optional. |
| DownBars | ChartUpDownBar |
N/A | Gibt das Format für Downbars im Aktienchart an. Die Eigenschaft DownBars ist optional. |
| NumFmt | ChartNumFmt |
N/A | Gibt an, dass bei Verknüpfung mit der Quelle ein benutzerdefinierter Zahlenformatcode für Datenbeschriftungen festgelegt wird. Die Eigenschaft NumFmt ist optional. Der Standardformatcode ist General. |
Stellen Sie die primären Optionen für die horizontale und vertikale Achse auf XAxis und YAxis ein.
Die Eigenschaften von XAxis, die eingestellt werden können, sind:
| Parameter | Typ | Standard | Erläuterung |
|---|---|---|---|
| None | bool |
false |
Achsen deaktivieren. |
| DropLines | bool |
false |
Legt Hilfslinien für 2D und 3D Flächen und Liniendiagramme fest. Hilfslinien sind vertikale Linien, die Datenpunkte in einem Diagramm mit der horizontalen (Kategorie-)Achse verbinden. Sie werden häufig in Linien- oder Flächendiagrammen verwendet, um die genaue Kategorieposition jedes Punktes besser sichtbar zu machen. Die Eigenschaft DropLines ist optional. |
| HighLowLines | bool |
false |
Legt die Hoch-und Tiefstlinien für das 2D-Liniendiagramm fest. Diese Linien werden standardmäßig in Aktiencharts angezeigt und verlaufen vom höchsten zum niedrigsten Wert jeder Kategorie. Die Eigenschaft HighLowLines ist optional. |
| MajorGridLines | bool |
false |
Gibt die Hauptgitterlinien an. |
| MinorGridLines | bool |
false |
Gibt kleinere Gitterlinien an. |
| TickLabelSkip | int |
1 |
Gibt an, wie viele Häkchen zwischen einem gezeichneten Etikett übersprungen werden sollen. Die Eigenschaft TickLabelSkip ist optional. Der Standardwert ist auto. |
| ReverseOrder | bool |
false |
Gibt an, dass die Kategorien oder Werte in umgekehrter Reihenfolge (Ausrichtung des Diagramms) sind. Die Eigenschaft ReverseOrder ist optional. |
| Maximum | *float64 |
0 |
Gibt an, dass das feste Maximum 0 automatisch ist. Die maximale Eigenschaft ist optional. |
| Minimum | *float64 |
0 |
Gibt an, dass das feste Minimum 0 automatisch ist. Die minimale Eigenschaft ist optional. Der Standardwert ist auto. |
| Alignment | Alignment |
N/A | Gibt die Ausrichtung der horizontalen und vertikalen Achse an. Die Eigenschaften der Schriftart, die festgelegt werden können, sind TextRotation und Vertical |
| Font | Font |
N/A | Gibt die Schriftart der horizontalen Achse an. |
| NumFmt | ChartNumFmt |
N/A | Gibt an, dass bei Verknüpfung mit der Quelle ein benutzerdefinierter Zahlenformatcode für die Achse festgelegt wird. |
| Title | []RichTextRun |
N/A | Gibt den Titel der primären horizontalen Achse und die Größenänderung des Diagramms an. |
Die Eigenschaften von YAxis, die eingestellt werden können, sind:
| Parameter | Typ | Standard | Erläuterung |
|---|---|---|---|
| None | bool |
false |
Achsen deaktivieren. |
| MajorGridLines | bool |
false |
Gibt die Hauptgitterlinien an. |
| MinorGridLines | bool |
false |
Gibt kleinere Gitterlinien an. |
| MajorUnit | float64 |
0 |
Gibt den Abstand zwischen den Hauptstrichen an. Muss eine positive Gleitkommazahl enthalten. Die Eigenschaft MajorUnit ist optional. Der Standardwert ist auto. |
| ReverseOrder | bool |
false |
Gibt an, dass die Kategorien oder Werte in umgekehrter Reihenfolge (Ausrichtung des Diagramms) sind. Die Eigenschaft ReverseOrder ist optional. |
| Maximum | *float64 |
0 |
Gibt an, dass das feste Maximum 0 automatisch ist. Die maximale Eigenschaft ist optional. |
| Minimum | *float64 |
0 |
Gibt an, dass das feste Minimum 0 automatisch ist. Die minimale Eigenschaft ist optional. Der Standardwert ist auto. |
| Alignment | Alignment |
N/A | Gibt die Ausrichtung der horizontalen und vertikalen Achse an. Die Eigenschaften der Schriftart, die festgelegt werden können, sind TextRotation und Vertical |
| Font | Font |
N/A | Gibt die Schriftart der vertikalen Achse an. |
| LogBase | float64 |
N/A | Gibt die Basiszahl der logarithmischen Skala der vertikalen Achse an. |
| NumFmt | ChartNumFmt |
N/A | Gibt an, dass bei Verknüpfung mit der Quelle ein benutzerdefinierter Zahlenformatcode für die Achse festgelegt wird. |
| Title | []RichTextRun |
N/A | Gibt den Titel der primären vertikalen Achse und die Größenänderung des Diagramms an. |
Der Wert von TextRotation kann von -90 bis 90 eingestellt werden.
Die folgenden Werte für Vertical können festgelegt werden: horz, vert, vert270, wordArtVert, eaVert, mongolianVert und wordArtVertRtl.
Legen Sie die Diagrammgröße anhand der Eigenschaft Dimension fest. Die Dimensionseigenschaft ist optional. Folgende Eigenschaften können festgelegt werden:
| Parameter | Typ | Standard | Erläuterung |
|---|---|---|---|
| Height | uint |
260 | Height |
| Width | uint |
480 | Width |
Der Parameter combo gibt an, dass ein Diagramm erstellt wird, das zwei oder mehr Diagrammtypen in einem einzelnen Diagramm kombiniert. Erstellen Sie beispielsweise ein gruppiertes Spalten-Liniendiagramm mit den Daten Sheet1!$E$1:$L$15:
package main
import (
"fmt"
"github.com/xuri/excelize/v2"
)
func main() {
f := excelize.NewFile()
defer func() {
if err := f.Close(); err != nil {
fmt.Println(err)
}
}()
if err := f.SetSheetName("Sheet1", "Tabelle1"); err != nil {
fmt.Println(err)
return
}
for idx, row := range [][]interface{}{
{nil, "Apfel", "Orange", "Birne"},
{"Klein", 2, 3, 3},
{"Normal", 5, 2, 4},
{"Groß", 6, 7, 8},
} {
cell, err := excelize.CoordinatesToCellName(1, idx+1)
if err != nil {
fmt.Println(err)
return
}
if err := f.SetSheetRow("Tabelle1", cell, &row); err != nil {
fmt.Println(err)
return
}
}
enable, disable := true, false
if err := f.AddChart("Tabelle1", "E1", &excelize.Chart{
Type: excelize.Col,
Series: []excelize.ChartSeries{
{
Name: "Tabelle1!$A$2",
Categories: "Tabelle1!$B$1:$D$1",
Values: "Tabelle1!$B$2:$D$2",
},
},
Format: excelize.GraphicOptions{
ScaleX: 1,
ScaleY: 1,
OffsetX: 15,
OffsetY: 10,
PrintObject: &enable,
LockAspectRatio: false,
Locked: &disable,
},
Title: excelize.ChartTitle{
Paragraph: []excelize.RichTextRun{
{
Text: "Clustered Column - Liniendiagramm",
},
},
},
Legend: excelize.ChartLegend{
Position: "left",
},
PlotArea: excelize.ChartPlotArea{
ShowCatName: false,
ShowLeaderLines: false,
ShowPercent: true,
ShowSerName: true,
ShowVal: true,
},
}, &excelize.Chart{
Type: excelize.Line,
Series: []excelize.ChartSeries{
{
Name: "Tabelle1!$A$4",
Categories: "Tabelle1!$B$1:$D$1",
Values: "Tabelle1!$B$4:$D$4",
Marker: excelize.ChartMarker{
Symbol: "none", Size: 10,
},
},
},
Format: excelize.GraphicOptions{
ScaleX: 1,
ScaleY: 1,
OffsetX: 15,
OffsetY: 10,
PrintObject: &enable,
LockAspectRatio: false,
Locked: &disable,
},
Legend: excelize.ChartLegend{
Position: "right",
},
PlotArea: excelize.ChartPlotArea{
ShowCatName: false,
ShowLeaderLines: false,
ShowPercent: true,
ShowSerName: true,
ShowVal: true,
},
}); err != nil {
fmt.Println(err)
return
}
// Speichern Sie die Tabelle unter dem angegebenen Pfad.
if err := f.SaveAs("Mappe1.xlsx"); err != nil {
fmt.Println(err)
}
}
Diagrammblatt hinzufügen
func (f *File) AddChartSheet(sheet string, chart *ChartOptions, combo ...*ChartOptions) error
AddChartSheet bietet die Methode zum Erstellen eines Diagrammblatts anhand eines bestimmten Diagrammformatsatzes (z. B. Versatz, Skalierung, Einstellung des Seitenverhältnisses und Druckeinstellungen) und festgelegter Eigenschaften. In Excel ist ein Diagrammblatt ein Arbeitsblatt, das nur ein Diagramm enthält.
Diagramm löschen
func (f *File) DeleteChart(sheet, cell string) error
DeleteChart bietet eine Funktion zum Löschen von Diagrammen in einer Tabelle anhand des angegebenen Arbeitsblatts und des Zellennamens.