Freigeben über


Verwenden von leeren Datenpunkten in Diagrammsteuerelementen

Leere Datenpunkte sind Punkte, die keine Y-Werte haben. Diese Datenpunkte dienen zum Steuern der Darstellung und der Struktur von Daten im Diagramm sowie zum Verarbeiten von Punkten mit einem NULL-Wert.

Verwenden Sie leere Punkte für folgende Aufgaben:

  • Darstellen von Punkten mit NULL-Werten

  • Ändern der Darstellung von fehlenden Datenpunkten in der Zeichnungsfläche

  • Ausrichten von zwei oder mehr Reihen (Weitere Informationen zum Ausrichten von Daten finden Sie unter Ausrichten von Daten.)

Hinzufügen von leeren Punkten

Verwenden Sie zum Hinzufügen eines leeren Punkts zu einer Datenreihe eine der folgenden Methoden:

  • Legen Sie die Empty-Eigenschaft eines Datenpunkts auf True fest.

  • Verknüpfen Sie einen Datenpunkt per Datenbindung an Werte des Typs "DBNull".

  • Fügen Sie mit der InsertEmptyPoints-Methode der DataManipulator-Klasse manuell einen leeren Punkt ein.

Die InsertEmptyPoints-Methode verwendet Intervalle entlang der X-Achse und überprüft für jedes Intervall, ob ein Datenpunkt vorhanden ist. Wenn kein Punkt vorhanden ist, fügt die Methode einen leeren Punkt ein. Damit die leeren Punkte ordnungsgemäß dargestellt werden, geben Sie ein Intervall an, das den Eigenschaften Interval, IntervalOffset, IntervalType und IntervalOffsetType in der primären oder sekundären Achse (ChartArea.AxisX-Objekt oder ChartArea.AxisX2-Objekt) der Diagrammfläche entspricht.

Sie können auch einen Bereich von X-Werten definieren, der auf fehlende Datenpunkte überprüft wird.

Hinweis

Sie können die InsertEmptyPoints-Methode auf mehrere Reihen anwenden, indem Sie die Namen der Reihen in einer durch Trennzeichen getrennten Liste als Eingabeparameter angeben.

Im folgenden Code wird veranschaulicht, wie Sie leere Punkte in zwei Reihen einfügen. Der erste Methodenaufruf verwendet einen Tag als Intervall für die Überprüfung von Reihe 1 und speichert das Ergebnis in der gleichen Reihe. Der zweite Methodenaufruf verwendet jeden Montag als Intervall, indem ein Offset verwendet wird, und speichert dann die resultierenden Daten in einer neuen Reihe mit dem Namen "ResultSeries".

Imports Dundas.Charting.WebControl
  ...
  
With Chart1.DataManipulator
' Insert empty point for each day if there is no data point present.
.InsertEmptyPoints(1, IntervalType.Days, "Series1")

' Insert empty point for each Monday, but if there is no data point present, then
' Monday is offset by 1 day from the beginning of the week (Sunday).
.InsertEmptyPoints(1, IntervalType.Weeks, 1, IntervalType.Days, "Series2", "ResultSeries")
End With
// Insert empty point for each day if there is no data point present.
Chart1.DataManipulator.InsertEmptyPoints(1, IntervalType.Days, "Series1");

// Insert empty point for each Monday, but if there is no data point present, then
// Monday is offset by 1 day from the beginning of the week (Sunday).
Chart1.DataManipulator.InsertEmptyPoints(1, IntervalType.Weeks, 1, IntervalType.Days, "Series2", "ResultSeries");

Ändern der Darstellung von leeren Punkten

Verwenden Sie zum Ändern der visuellen Darstellung gezeichneter leerer Punkte in gültigen Diagrammtypen die Series.EmptyPointStyle-Eigenschaft. Die benutzerdefinierte EmptyPointValue-Eigenschaft kann verwendet werden, um leere Punkte als 0 (null) oder als einen Durchschnitt der Punkte auf der linken und der rechten Seite des leeren Punkts zu verarbeiten. Weitere Informationen zu benutzerdefinierten Eigenschaften finden Sie unter Benutzerdefinierte Eigenschaften.

Im folgenden Codebeispiel wird die Verwendung der Series.EmptyPointStyle-Eigenschaft veranschaulicht.

' Show marker (red cross) instead of a line for first series.
Chart1.Series("Series1").EmptyPointStyle.BorderWidth = 1
Chart1.Series("Series1").EmptyPointStyle.BorderColor = Color.Black
Chart1.Series("Series1").EmptyPointStyle.MarkerColor = Color.Red
Chart1.Series("Series1").EmptyPointStyle.MarkerSize = 15
Chart1.Series("Series1").EmptyPointStyle.MarkerStyle = MarkerStyle.Cross
 
' Show empty point of second series as thin dotted line (treated as an average).
Chart1.Series("Series2").EmptyPointStyle.BorderStyle = ChartDashStyle.DashDotDot
Chart1.Series("Series2").EmptyPointStyle.MarkerColor = Color.FromArgb(64, 64, 64)
 
' Treat empty point of third series as a zero using the EmptyPointValue custom property.
Chart1.Series("Series3").EmptyPointStyle.BorderWidth = 1
Chart1.Series("Series3").EmptyPointStyle.MarkerColor = Color.FromArgb(0, 192, 0)
Chart1.Series("Series3").EmptyPointStyle.CustomProperties = "EmptyPointValue = Zero"
// Show marker (red cross) instead of a line for first series.
Chart1.Series["Series1"].EmptyPointStyle.BorderWidth = 1;
Chart1.Series["Series1"].EmptyPointStyle.BorderColor = Color.Black;
Chart1.Series["Series1"].EmptyPointStyle.MarkerColor = Color.Red;
Chart1.Series["Series1"].EmptyPointStyle.MarkerSize = 15;
Chart1.Series["Series1"].EmptyPointStyle.MarkerStyle = MarkerStyle.Cross;

// Show empty point of second series as thin dotted line (treated as an average).
Chart1.Series["Series2"].EmptyPointStyle.BorderStyle = ChartDashStyle.DashDotDot;
Chart1.Series["Series2"].EmptyPointStyle.MarkerColor = Color.FromArgb(64, 64, 64);

// Treat empty point of third series as a zero using the EmptyPointValue custom property.
Chart1.Series["Series3"].EmptyPointStyle.BorderWidth = 1;
Chart1.Series["Series3"].EmptyPointStyle.MarkerColor = Color.FromArgb(0, 192, 0);
Chart1.Series["Series3"].EmptyPointStyle.CustomProperties = "EmptyPointValue = Zero";

Siehe auch

Referenz

System.Windows.Forms.DataVisualization.Charting

System.Web.UI.DataVisualization.Charting

Konzepte

Sortieren von Daten

Ausrichten von Daten

Filtern von Daten

Weitere Ressourcen

Datenbindung und -bearbeitung