Legenden (Diagrammsteuerelemente)
Legenden ermöglichen die Unterscheidung zwischen Reihen und Datenpunkten im Diagrammbild. Sie werden als Legend-Objekte in der Chart.Legends-Auflistungseigenschaft gespeichert.
Standardmäßig ist eine Legende nicht an einer Diagrammfläche angedockt und wird außerhalb der Diagrammflächen angezeigt. Mithilfe der DockedToChartArea-Eigenschaft des Legend-Objekts können Sie eine Legende an eine Diagrammfläche andocken. Jede Reihe wird mithilfe der Legend-Eigenschaft des Series-Objekts einzeln einer Legende zugewiesen.
In den meisten Diagrammtypen stellt jedes Legendenelement eine gezeichnete Reihe dar. In einem Kreis-, Ring-, Trichter- oder Pyramidendiagramm stellt jedes Legendenelement einen Datenpunkt in der Reihe dar.
Standardmäßig erstellt das Diagrammsteuerelement automatisch zwei Spalten in einer Legende, eine mit Angaben zu den Farben der gezeichneten Daten und eine mit dem Legendentext. Sie können den Legendentext in der Series.LegendText-Eigenschaft oder der DataPoint.LegendText-Eigenschaft angeben.
Hinzufügen von Legenden zur Laufzeit
Um einem Diagramm zur Laufzeit eine Legende hinzuzufügen, stellen Sie sicher, dass sie an der richtigen, einer Datenreihe zugewiesenen Diagrammfläche angedockt ist und dass die IsVisibleInLegend-Eigenschaft der Datenreihe auf true festgelegt ist. Im folgenden Code wird dies veranschaulicht.
' Create a new legend called "Legend2".
Chart1.Legends.Add(New Legend("Legend2"))
' Set Docking chart of the legend to the Default chart area.
Chart1.Legends("Legend2").DockToChartArea = "Default"
' Assign the legend to Series1.
Chart1.Series("Series1").Legend = "Legend2"
Chart1.Series("Series1").IsVisibleInLegend = true
// Create a new legend called "Legend2".
Chart1.Legends.Add(new Legend("Legend2"));
// Set Docking of the Legend chart to the Default Chart Area.
chart1.Legends["Legend2"].DockToChartArea = "Default";
// Assign the legend to Series1.
Chart1.Series["Series1"].Legend = "Legend2";
Chart1.Series["Series1"].IsVisibleInLegend = true;
Verwenden Sie Eigenschaften in einem Legend-Objekt, um das Erscheinungsbild der Legende anzupassen, z. B. Docking, Alignment, IsDockedInsideChartArea, Position, TableStyle, LegendStyle, MaximumAutoSize, Font und InterlacedRows.
Verwenden von Titeln, Headern und Spalten
Das folgende Diagramm zeigt die verschiedenen Legendenfunktionen und die zugehörigen Eigenschaften im Legend-Objekt.
Tipp
Sie können die einzelnen Legendenelemente und Zellen in der Chart.Legends-Auflistung nicht anpassen. Verwenden Sie hierzu benutzerdefinierte Legendenelemente.
Wenn Sie mithilfe der Legend.Title-Eigenschaft einen Legendentitel angeben, können Sie mit \n einen Zeilenumbruch einfügen. Sie können auch Schlüsselwörter verwenden, sodass sich der Text abhängig von der Datenreihe ändert. Weitere Informationen finden Sie unter Schlüsselwörter.
Um die Anzahl der Spalten in der Legende anzupassen, verwenden Sie die Legend.CellColumns-Auflistungseigenschaft. Die Spalten in dieser Eigenschaft gelten für alle automatisch generierten Legendenelemente.
Im folgenden Code werden die Legend.CellColumns-Eigenschaft und die Verwendung von Schlüsselwörtern veranschaulicht. Es werden drei Spalten hinzugefügt: eine für die Reihennamen, eine für das Reihensymbol und eine für den Durchschnitt der Daten in jeder Reihe.
Chart1.Legends["Legend2"].CellColumns.Add(New LegendCellColumn("Name", LegendCellColumnType.Text, "#LEGENDTEXT"))
Chart1.Legends["Legend2"].CellColumns.Add(New LegendCellColumn("Sym", LegendCellColumnType.SeriesSymbol, ""))
Chart1.Legends["Legend2"].CellColumns.Add(New LegendCellColumn("Avg", LegendCellColumnType.Text, "#AVG{N2}"))
Chart1.Legends["Legend2"].CellColumns.Add(new LegendCellColumn("Name", LegendCellColumnType.Text, "#LEGENDTEXT"));
Chart1.Legends["Legend2"].CellColumns.Add(new LegendCellColumn("Sym", LegendCellColumnType.SeriesSymbol,""));
Chart1.Legends["Legend2"].CellColumns.Add(new LegendCellColumn("Avg", LegendCellColumnType.Text, "#AVG{N2}"));
Sie können das Erscheinungsbild jeder Spalte mithilfe der Eigenschaften des LegendCellColumn-Objekts anpassen, z. B. MinimumWidth, MaximumWidth, Alignmnent, Margins, HeaderText und ItemColumnsSeparator.