Compartir a través de


Usar puntos de datos vacíos en controles Chart

Los puntos de datos vacíos son puntos que no tienen valores Y.Estos puntos de datos son útiles para controlar el aspecto y estructura de los datos del gráfico, así como para administrar puntos cuyos datos son un valor nulo.

Utilice los puntos vacíos para:

  • Representar los puntos con valores NULL.

  • Cambiar el aspecto de los puntos de datos que faltan en el área de trazado.

  • Alinear dos o más series.Para obtener información sobre cómo alinear los datos, vea Alinear datos.

Agregar puntos vacíos

Puede agregar un punto vacío a un serie de datos de alguna de las siguientes maneras siguientes:

  • Establezca la propiedad Empty de un punto de datos en True.

  • Enlace un punto de datos a los valores de tipo DBNull.

  • Utilice el método InsertEmptyPoints de la clase DataManipulator para insertar un punto vacío de forma manual.

El método InsertEmptyPoints utiliza los intervalos del eje X para comprobar si un punto de datos existe para cada uno de los intervalos.Si no existe ningún punto, el método inserta un punto vacío.Para que los puntos vacíos aparezcan correctamente, especifique un intervalo que corresponda a las propiedades Interval, IntervalOffset, IntervalType y IntervalOffsetType del eje principal o secundario del área del gráfico (objeto ChartArea.AxisX o ChartArea.AxisX2 ).

También puede definir un intervalo de valores de X para comprobar si hay puntos de datos que faltan.

Nota

Puede utilizar el método InsertEmptyPoints en varias series especificando los nombres de las series en una lista separada por comas para el parámetro de entrada.

El siguiente código muestra cómo insertar los puntos vacíos en dos series.La primera llamada a un método utiliza un día como el intervalo para comprobar Series1 y guarda el resultado en la misma serie.La segunda llamada a un método utiliza todos los lunes como el intervalo utilizando un desplazamiento y, a continuación, almacena los datos resultantes en una nueva serie llamada 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");

Cambiar la apariencia de los puntos vacíos

Puede cambiar la representación visual de puntos vacíos trazados en los tipos de gráfico aplicables utilizando la propiedad Series.EmptyPointStyle.La propiedad personalizada EmptyPointValue se puede utilizar para tratar los puntos vacíos como ceros o como una media de los puntos a la izquierda y derecha de los mismos.Para obtener más información sobre las propiedades personalizadas, vea Propiedades personalizadas

El siguiente ejemplo de código muestra cómo utilizar la propiedad Series.EmptyPointStyle.

' 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";

Vea también

Referencia

System.Windows.Forms.DataVisualization.Charting

System.Web.UI.DataVisualization.Charting

Conceptos

Ordenar datos

Alinear datos

Filtrar datos

Otros recursos

Enlazar y manipular datos