SeriesBase.ArgumentScaleType Property
Gets or sets a value that specifies the scale type for the argument data of the series’ data points.
Namespace: DevExpress.XtraCharts
Assembly: DevExpress.XtraCharts.v24.2.dll
NuGet Package: DevExpress.Charts
#Declaration
[XtraChartsLocalizableCategory(XtraChartsCategory.Behavior)]
public ScaleType ArgumentScaleType { get; set; }
#Property Value
Type | Description |
---|---|
Scale |
A Scale |
Available values:
Name | Description |
---|---|
Qualitative | Identifies the Qualitative data scale. This means that data provided for the Series. |
Numerical | Identifies the Numerical data scale. This means that data provided for the Series. |
Date |
Identifies the Date |
Time |
Identifies the Time |
Auto | The scale type is automatically determined according to the real type of underlying data. |
#Remarks
An ArgumentScaleType property determines the parameters of the AxisXBase derived axis used to plot the given series. For example, the label format for an axis is specified using the AxisLabel.TextPattern property.
Usually, you do not need to change the argument scale type of the ArgumentScaleType property (set to the Auto mode, by default) because the type of series point argument is detected automatically, based on the type of underlying data.
For more information, refer to Axis Scale Types.
#Example
This example demonstrates how an axis’ date-time and numeric options can be customized, depending on the ScaleType defined for a series’ arguments and values.
using System;
using System.Windows.Forms;
using DevExpress.XtraCharts;
// ...
namespace FormatAxisLabels {
public partial class Form1 : Form {
public Form1() {
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e) {
// Create an empty chart.
ChartControl chartControl1 = new ChartControl();
// Create a bar series and add points to it.
Series series1 = new Series("Series 1", ViewType.Bar);
series1.Points.Add(new SeriesPoint(new DateTime(2009, 1, 1), new double[] { 26.25 }));
series1.Points.Add(new SeriesPoint(new DateTime(2009, 2, 1), new double[] { 16.52 }));
series1.Points.Add(new SeriesPoint(new DateTime(2009, 3, 1), new double[] { 22.21 }));
series1.Points.Add(new SeriesPoint(new DateTime(2009, 4, 1), new double[] { 15.35 }));
series1.Points.Add(new SeriesPoint(new DateTime(2009, 5, 1), new double[] { 24.15 }));
// Add the series to the chart.
chartControl1.Series.Add(series1);
// Hide the legend (if necessary).
chartControl1.Legend.Visibility = DevExpress.Utils.DefaultBoolean.False;
// Set the scale type for the series' arguments and values.
series1.ArgumentScaleType = ScaleType.DateTime;
series1.ValueScaleType = ScaleType.Numerical;
// Cast the chart's diagram to the XYDiagram type, to access its axes.
XYDiagram diagram = chartControl1.Diagram as XYDiagram;
// Define the date-time measurement unit, to which the beginning of
// a diagram's gridlines and labels should be aligned.
diagram.AxisX.DateTimeScaleOptions.GridAlignment = DateTimeGridAlignment.Day;
// Define the detail level for date-time values.
diagram.AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Month;
// Define the custom date-time format (name of a month) for the axis labels.
diagram.AxisX.Label.TextPattern = "{V:MMMM}";
// Since the ValueScaleType of the chart's series is Numerical,
// it is possible to customize the NumericOptions of Y-axis.
diagram.AxisY.Label.TextPattern = "{V:C1}";
// Add a title to the chart (if necessary).
ChartTitle chartTitle1 = new ChartTitle();
chartTitle1.Text = "Axis Scale Types";
chartControl1.Titles.Add(chartTitle1);
// Add the chart to the form.
chartControl1.Dock = DockStyle.Fill;
this.Controls.Add(chartControl1);
}
}
}
#Related GitHub Examples
The following code snippets (auto-collected from DevExpress Examples) contain references to the ArgumentScaleType property.
Note
The algorithm used to collect these code examples remains a work in progress. Accordingly, the links and snippets below may produce inaccurate results. If you encounter an issue with code examples below, please use the feedback form on this page to report the issue.