corelibraries-devexpress-dot-xtracharts-dot-datamember-e5dd55f0.md
Gets or sets the data member type.
Namespace : DevExpress.XtraCharts
Assembly : DevExpress.XtraCharts.v25.2.dll
NuGet Package : DevExpress.Charts
public ChartDataMemberType DataMemberType { get; set; }
Public Property DataMemberType As ChartDataMemberType
| Type | Description |
|---|---|
| ChartDataMemberType |
The data member type.
|
Available values:
Show 23 items
| Name | Description |
|---|---|
| Argument |
The data member contains point arguments.
| | Value |
The data member contains point values.
| | Series |
The data member contains values that identify series and are used as series names when a SeriesTemplateAdapter or SeriesTemplateSummaryAdapter generates series.
| | Color |
The data member contains colors that point colorizers apply to series points.
| | ToolTipHint |
The data member contains additional information that can be displayed in the point tooltip. Use the {HINT} placeholder in the ToolTipPointPattern format string to display the hint information.
| | Open |
The data member contains open values of financial series.
| | High |
The data member contains high values of financial series.
| | Low |
The data member contains low values of financial series.
| | Close |
The data member contains close values of financial series.
| | Weight |
The data member contains weight values of Bubble series.
| | Value_1 |
The data member contains first point values of series that require two values per point (for example, Range Bar series).
| | Value_2 |
The data member contains second point values of series that require two values per point (for example, Range Bar series).
| | BoxPlotMin |
The data member contains minimum values of Box Plot points.
| | BoxPlotQuartile_1 |
The data member contains first quartile values of Box Plot points.
| | BoxPlotMedian |
The data member contains median values of Box Plot points.
| | BoxPlotQuartile_3 |
The data member contains third quartile values of Box Plot points.
| | BoxPlotMax |
The data member contains maximum values of Box Plot points.
| | BoxPlotMean |
The data member contains mean values of Box Plot points.
| | BoxPlotOutliers |
The data member contains outlier values of Box Plot points.
| | ErrorBarsNegativeError |
For internal use.
| | ErrorBarsPositiveError |
For internal use.
| | SeriesKey |
For internal use.
| | SeriesColor |
For internal use.
|
This example shows how to create a series that requires one value per argument and populate it with data.
Create a DataSourceAdapter object.
Define the adapter DataSourceAdapter.DataSource property.
Populate the adapter DataSourceAdapterBase.DataMembers collection. You should specify data members that contain arguments and values.
Use the Series.DataAdapter property to assign the adapter to the series.
using DevExpress.Utils;
using DevExpress.XtraCharts;
using System;
using System.Collections.Generic;
using System.Drawing;
using System.Windows.Forms;
namespace ChartDataAdapters {
public partial class Form1 : Form {
readonly TemperatureData temperatureData = new TemperatureData(new Random(9));
public Form1() {
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e) {
// Create a series.
Series series = new Series("Temperature", ViewType.Spline);
// Create a data adapter.
DataSourceAdapter dataAdapter = new DataSourceAdapter();
// Specify the data source.
dataAdapter.DataSource = temperatureData.Points;
// Create a data member that defines arguments.
dataAdapter.DataMembers.Add(new DataMember {
DataMemberType = ChartDataMemberType.Argument,
ColumnName = "TimeStamp",
ScaleType = ScaleType.TimeSpan
});
// Create a data member that defines values.
dataAdapter.DataMembers.Add(new DataMember {
DataMemberType = ChartDataMemberType.Value,
ColumnName = "Temperature",
ScaleType = ScaleType.Numerical
});
// Assign the data adapter to the series.
series.DataAdapter = dataAdapter;
}
}
class TemperatureData {
const int PointsCount = 250;
readonly TemperaturePoint maxTemperaturePoint = new TemperaturePoint(TimeSpan.Zero, double.MinValue);
readonly TemperaturePoint minTemperaturePoint = new TemperaturePoint(TimeSpan.MaxValue, double.MaxValue);
readonly List<TemperaturePoint> points = new List<TemperaturePoint>(PointsCount);
internal TemperaturePoint MaxTemperaturePoint {
get { return maxTemperaturePoint; }
}
internal TemperaturePoint MinTemperaturePoint {
get { return minTemperaturePoint; }
}
internal double OptimalTemperature {
get { return 53; }
}
internal List<TemperaturePoint> Points {
get { return points; }
}
internal TemperatureData(Random random) {
double preTemperature = 50;
for (int i = 0; i < PointsCount; i++) {
TimeSpan time = TimeSpan.FromSeconds(i);
double temperature = preTemperature + (random.NextDouble() - 0.5) * 10;
if (temperature > 90)
temperature -= 20;
if (temperature < 20)
temperature += 10;
TemperaturePoint temperaturePoint = new TemperaturePoint(time, temperature);
if (temperature < minTemperaturePoint.Temperature)
minTemperaturePoint = temperaturePoint;
if (temperature > maxTemperaturePoint.Temperature)
maxTemperaturePoint = temperaturePoint;
points.Add(temperaturePoint);
preTemperature = temperature;
}
}
}
public class TemperaturePoint {
public TimeSpan TimeStamp { get; private set; }
public double Temperature { get; private set; }
internal TemperaturePoint(TimeSpan time, double temperature) {
this.TimeStamp = time;
this.Temperature = temperature;
}
}
}
Imports DevExpress.Utils
Imports DevExpress.XtraCharts
Imports System
Imports System.Collections.Generic
Imports System.Windows.Forms
Namespace ChartDataAdapters
Public Partial Class Form1
Inherits Form
Private ReadOnly temperatureData As TemperatureData = New TemperatureData(New Random(9))
Public Sub New()
InitializeComponent()
End Sub
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs)
' Create a series.
Dim series As Series = New Series("Temperature", ViewType.Spline)
' Create a data adapter.
Dim dataAdapter As DataSourceAdapter = New DataSourceAdapter()
' Specify the data source.
dataAdapter.DataSource = temperatureData.Points
' Create a data member that defines arguments.
dataAdapter.DataMembers.Add(New DataMember With {
.DataMemberType = ChartDataMemberType.Argument,
.ColumnName = "TimeStamp",
.ScaleType = ScaleType.TimeSpan
})
' Create a data member that defines values.
dataAdapter.DataMembers.Add(New DataMember With {
.DataMemberType = ChartDataMemberType.Value,
.ColumnName = "Temperature",
.ScaleType = ScaleType.Numerical
})
' Assign the data adapter to the series.
series.DataAdapter = dataAdapter
End Sub
End Class
Friend Class TemperatureData
Const PointsCount As Integer = 250
Private ReadOnly maxTemperaturePointField As TemperaturePoint = New TemperaturePoint(TimeSpan.Zero, Double.MinValue)
Private ReadOnly minTemperaturePointField As TemperaturePoint = New TemperaturePoint(TimeSpan.MaxValue, Double.MaxValue)
Private ReadOnly pointsField As List(Of TemperaturePoint) = New List(Of TemperaturePoint)(PointsCount)
Friend ReadOnly Property MaxTemperaturePoint As TemperaturePoint
Get
Return maxTemperaturePointField
End Get
End Property
Friend ReadOnly Property MinTemperaturePoint As TemperaturePoint
Get
Return minTemperaturePointField
End Get
End Property
Friend ReadOnly Property OptimalTemperature As Double
Get
Return 53
End Get
End Property
Friend ReadOnly Property Points As List(Of TemperaturePoint)
Get
Return pointsField
End Get
End Property
Friend Sub New(ByVal random As Random)
Dim preTemperature As Double = 50
For i As Integer = 0 To PointsCount - 1
Dim time As TimeSpan = TimeSpan.FromSeconds(i)
Dim temperature As Double = preTemperature + (random.NextDouble() - 0.5) * 10
If temperature > 90 Then temperature -= 20
If temperature < 20 Then temperature += 10
Dim temperaturePoint As TemperaturePoint = New TemperaturePoint(time, temperature)
If temperature < minTemperaturePointField.Temperature Then minTemperaturePointField = temperaturePoint
If temperature > maxTemperaturePointField.Temperature Then maxTemperaturePointField = temperaturePoint
pointsField.Add(temperaturePoint)
preTemperature = temperature
Next
End Sub
End Class
Public Class TemperaturePoint
Private _TimeStamp As System.TimeSpan, _Temperature As Double
Public Property TimeStamp As TimeSpan
Get
Return _TimeStamp
End Get
Private Set(ByVal value As TimeSpan)
_TimeStamp = value
End Set
End Property
Public Property Temperature As Double
Get
Return _Temperature
End Get
Private Set(ByVal value As Double)
_Temperature = value
End Set
End Property
Friend Sub New(ByVal time As TimeSpan, ByVal temperature As Double)
TimeStamp = time
Me.Temperature = temperature
End Sub
End Class
End Namespace
See Also