Back to Devexpress

DateTimeScaleOptions.MeasureUnit Property

corelibraries-devexpress-dot-xtracharts-dot-datetimescaleoptions.md

latest11.5 KB
Original Source

DateTimeScaleOptions.MeasureUnit Property

Gets or sets the detail level for date-time values.

Namespace : DevExpress.XtraCharts

Assembly : DevExpress.XtraCharts.v25.2.dll

NuGet Package : DevExpress.Charts

Declaration

csharp
public DateTimeMeasureUnit MeasureUnit { get; set; }
vb
Public Property MeasureUnit As DateTimeMeasureUnit

Property Value

TypeDescription
DateTimeMeasureUnit

A DateTimeMeasureUnit enumeration value which represents the axis’ detail level.

|

Available values:

NameDescription
Millisecond

Specifies a millisecond as the measurement unit for date-time values.

| | Second |

Specifies a second as the measurement unit for date-time values.

| | Minute |

Specifies a minute as the measurement unit for date-time values.

| | Hour |

Specifies an hour as the measurement unit for date-time values.

| | Day |

Specifies a day as the measurement unit for date-time values.

| | Week |

Specifies a week as the measurement unit for date-time values.

| | Month |

Specifies a month as the measurement unit for date-time values.

| | Quarter |

Specifies a quarter of a year as the measurement unit for date-time values.

| | Year |

Specifies a year as the measurement unit for date-time values.

|

Property Paths

You can access this nested property as listed below:

Object TypePath to MeasureUnit
AxisBase

.DateTimeScaleOptions .MeasureUnit

|

Remarks

This property is available when the SeriesBase.ArgumentScaleType or SeriesBase.ValueScaleType property is set to DateTime , and the ScaleOptionsBase.ScaleMode property is set to Manual.

DateTimeScaleOptions.MeasureUnit = QuarterDateTimeScaleOptions.MeasureUnit = Year

Note

To access DateTimeScaleOptions, use the AxisBase.DateTimeScaleOptions property.

To define a date-time measurement unit to which the beginning of a diagram’s gridlines and labels should be aligned, use the DateTimeScaleOptions.GridAlignment property.

Example

This example shows how to use DateTimeScaleOptions to reduce the number of visible series points.

The following code configures the axis scale settings to resemble to the chart appearance above:

csharp
DateTimeScaleOptions dateTimeScaleOptions = ((XYDiagram)chartControl.Diagram).AxisX.DateTimeScaleOptions;

dateTimeScaleOptions.WorkdaysOnly = true;
dateTimeScaleOptions.ScaleMode = ScaleMode.Manual;
dateTimeScaleOptions.AggregateFunction = AggregateFunction.Average;
dateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Month;
dateTimeScaleOptions.GridAlignment = DateTimeGridAlignment.Quarter;
dateTimeScaleOptions.GridSpacing = 1;
vb
Dim dateTimeScaleOptions As DateTimeScaleOptions = CType(chartControl.Diagram,XYDiagram).AxisX.DateTimeScaleOptions

dateTimeScaleOptions.WorkdaysOnly = true
dateTimeScaleOptions.ScaleMode = ScaleMode.Manual
dateTimeScaleOptions.AggregateFunction = AggregateFunction.Average
dateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Month
dateTimeScaleOptions.GridAlignment = DateTimeGridAlignment.Quarter
dateTimeScaleOptions.GridSpacing = 1

The following table lists the API members the code above uses:

MemberDescription
AxisBase.DateTimeScaleOptionsStores the options that define the behavior of a scale when its type is date-time.
ScaleOptionsBase.ScaleModeGets or sets the scale mode for an axis.
ScaleModeLists the values that specify the scale mode for an axis.
DateTimeScaleOptions.MeasureUnitGets or sets the detail level for date-time values.
DateTimeMeasureUnitLists the values that specify the detail level for date-time values.
ScaleGridOptionsBase.GridOffsetGets or sets the offset of grid lines and major tickmarks.
ScaleGridOptionsBase.AggregateFunctionGets or sets the value indicating the aggregate function that should be used to relieve data.
AggregateFunctionLists the values that specify the aggregate function used for an axis.
DateTimeScaleOptions.GridAlignmentGets or sets the date-time measure unit to which the beginning of an axis’ gridlines and labels should be aligned.
DateTimeGridAlignmentLists the values that specify the date-time measurement unit, to which the beginning of a diagram’s gridlines and labels should be aligned.
ScaleGridOptionsBase.GridSpacingGets or sets the interval between grid lines and major tickmarks.

The following code snippets (auto-collected from DevExpress Examples) contain references to the MeasureUnit 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.

winforms-charts-use-automatic-date-time-scale-modes-of-an-axis/CS/DateTimeAggregation/Form1.cs#L169

csharp
AxisX.Label.TextPattern = "{A:yyyy}";
AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Year;
UpdateGridAlignment(1);

winforms-charts-create-model-for-custom-chart-element/CS/CustomChartElementModel/Form1.cs#L129

csharp
diagram.AxisX.Label.TextPattern = "{A:MMM, d (HH:mm)}";
diagram.AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Hour;
diagram.AxisX.DateTimeScaleOptions.GridSpacing = 9;

winforms-chart-draw-a-custom-legend-marker-for-a-series/CS/CustomDrawingSample/Form1.cs#L50

csharp
diagram.AxisX.DateTimeScaleOptions.AggregateFunction = AggregateFunction.Sum;
    diagram.AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Year;
}

winforms-chart-draw-a-custom-series-marker-in-the-crosshair/CS/CustomDrawCrosshairSample/Form1.cs#L48

csharp
diagram.AxisX.DateTimeScaleOptions.AggregateFunction = AggregateFunction.Sum;
    diagram.AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Year;
}

winforms-charts-use-automatic-date-time-scale-modes-of-an-axis/VB/DateTimeAggregation/Form1.vb#L151

vb
AxisX.Label.TextPattern = "{A:yyyy}"
AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Year
UpdateGridAlignment(1)

winforms-charts-create-model-for-custom-chart-element/VB/CustomChartElementModel/Form1.vb#L187

vb
diagram.AxisX.Label.TextPattern = "{A:MMM, d (HH:mm)}"
diagram.AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Hour
diagram.AxisX.DateTimeScaleOptions.GridSpacing = 9

winforms-chart-draw-a-custom-legend-marker-for-a-series/VB/CustomDrawingSample/Form1.vb#L54

vb
diagram.AxisX.DateTimeScaleOptions.AggregateFunction = AggregateFunction.Sum
    diagram.AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Year
End If

winforms-chart-draw-a-custom-series-marker-in-the-crosshair/VB/CustomDrawCrosshairSample/Form1.vb#L53

vb
diagram.AxisX.DateTimeScaleOptions.AggregateFunction = AggregateFunction.Sum
    diagram.AxisX.DateTimeScaleOptions.MeasureUnit = DateTimeMeasureUnit.Year
End If

See Also

DateTimeScaleOptions Class

DateTimeScaleOptions Members

DevExpress.XtraCharts Namespace