corelibraries-devexpress-dot-xtracharts-dot-intervaloptionsbase.md
Gets or sets a format string that configures text for the interval axis labels and crosshair labels.
Namespace : DevExpress.XtraCharts
Assembly : DevExpress.XtraCharts.v25.2.dll
NuGet Package : DevExpress.Charts
public string Pattern { get; set; }
Public Property Pattern As String
| Type | Description |
|---|---|
| String |
A format string.
|
This pattern is applied when GridLayoutMode (NumericIntervalOptions.GridLayoutMode, DateTimeScaleOptionsBase.GridLayoutMode and QualitativeScaleOptions.GridLayoutMode) is GridAndLabelCentered or GridShiftedLabelCentered. Otherwise, use the AxisLabel.TextPattern property.
Patterns can contain regular text (displayed as is) and value placeholders in braces. To format numeric and date/time values, you can apply Format Specifiers. Use a colon to separate a placeholder and its format specifier.
The following table contains the available placeholders:
| Placeholder | Description |
|---|---|
| {OB} | Displays an opening bracket. |
| {CB} | Displays a closing bracket. |
| {A1} | Displays the interval start value. |
| {A2} | Displays the interval end value. |
This example demonstrates how to create a histogram chart with bins of a given width.
private void Form1_Load(object sender, EventArgs e) {
// Load data to a chart.
chartControl1.DataSource = LoadDataTableFromXml("..\\..\\Data\\CityWeather.xml", "CityWeather");
Series series = new Series();
series.ArgumentDataMember = "Temperature";
SideBySideBarSeriesView view = series.View as SideBySideBarSeriesView;
view.Border.Visibility = DevExpress.Utils.DefaultBoolean.True;
view.BarWidth = 1;
chartControl1.Series.Add(series);
// Configure histogram options.
XYDiagram diagram = chartControl1.Diagram as XYDiagram;
NumericScaleOptions scaleOptions = diagram.AxisX.NumericScaleOptions;
scaleOptions.AggregateFunction = AggregateFunction.Histogram;
scaleOptions.ScaleMode = ScaleMode.Interval;
scaleOptions.IntervalOptions.DivisionMode = IntervalDivisionMode.Width;
scaleOptions.IntervalOptions.Width = 10;
scaleOptions.IntervalOptions.OverflowValue = 20;
scaleOptions.IntervalOptions.UnderflowValue = -30;
scaleOptions.IntervalOptions.Pattern = "{OB}{A1:F0} ― {A2:F0}{CB}";
scaleOptions.IntervalOptions.OverflowValuePattern = "{OS} {A1}";
scaleOptions.IntervalOptions.UnderflowValuePattern = "{US} {A2}";
scaleOptions.IntervalOptions.GridLayoutMode = GridLayoutMode.GridShiftedLabelCentered;
diagram.AxisX.GridLines.Visible = true;
diagram.AxisX.Tickmarks.MinorVisible = false;
}
static DataTable LoadDataTableFromXml(string fileName, string tableName) {
DataSet xmlDataSet = new DataSet();
xmlDataSet.ReadXml(fileName);
return xmlDataSet.Tables[tableName];
}
Private Sub Form1_Load(ByVal sender As Object, ByVal e As EventArgs)
' Load data to a chart.
chartControl1.DataSource = LoadDataTableFromXml("..\..\Data\CityWeather.xml", "CityWeather")
Dim series As Series = New Series()
series.ArgumentDataMember = "Temperature"
Dim view As SideBySideBarSeriesView = TryCast(series.View, SideBySideBarSeriesView)
view.Border.Visibility = DevExpress.Utils.DefaultBoolean.[True]
view.BarWidth = 1
chartControl1.Series.Add(series)
' Configure histogram options.
Dim diagram As XYDiagram = TryCast(chartControl1.Diagram, XYDiagram)
Dim scaleOptions As NumericScaleOptions = diagram.AxisX.NumericScaleOptions
scaleOptions.AggregateFunction = AggregateFunction.Histogram
scaleOptions.ScaleMode = ScaleMode.Interval
scaleOptions.IntervalOptions.DivisionMode = IntervalDivisionMode.Width
scaleOptions.IntervalOptions.Width = 10
scaleOptions.IntervalOptions.OverflowValue = 20
scaleOptions.IntervalOptions.UnderflowValue = -30
scaleOptions.IntervalOptions.Pattern = "{OB}{A1:F0} ― {A2:F0}{CB}"
scaleOptions.IntervalOptions.OverflowValuePattern = "{OS} {A1}"
scaleOptions.IntervalOptions.UnderflowValuePattern = "{US} {A2}"
scaleOptions.IntervalOptions.GridLayoutMode = GridLayoutMode.GridShiftedLabelCentered
diagram.AxisX.GridLines.Visible = True
diagram.AxisX.Tickmarks.MinorVisible = False
End Sub
Private Shared Function LoadDataTableFromXml(ByVal fileName As String, ByVal tableName As String) As DataTable
Dim xmlDataSet As DataSet = New DataSet()
xmlDataSet.ReadXml(fileName)
Return xmlDataSet.Tables(tableName)
End Function
The following API members configure the histogram options:
| Member | Description |
|---|---|
| ScaleGridOptionsBase.AggregateFunction | Gets or sets the value indicating the aggregate function that should be used to relieve data. |
| ScaleOptionsBase.ScaleMode | Gets or sets the scale mode for an axis. |
| NumericScaleOptions.IntervalOptions | Stores options for numeric axis when its ScaleMode is Interval. |
| NumericIntervalOptions.DivisionMode | Specifies how to divide axis scale into intervals. |
| NumericIntervalOptions.Width | Gets or sets the interval size when DivisionMode is Width. |
| NumericIntervalOptions.OverflowValue | Gets or sets the start value for the interval that includes overflow values. |
| NumericIntervalOptions.UnderflowValue | Gets or sets the end value for the interval that includes underflow values. |
IntervalOptionsBase.Pattern | Gets or sets a format string that configures text for the interval axis labels and crosshair labels. |
| IntervalOptionsBase.OverflowValuePattern | Gets or sets a format string that configures text for the overflow interval axis labels and crosshair labels. |
| IntervalOptionsBase.UnderflowValuePattern | Gets or sets a format string that configures text for the underflow interval axis labels and crosshair labels. |
| NumericIntervalOptions.GridLayoutMode | Gets or sets the value that specifies the alignment of grid lines, major tickmarks and axis labels. |
The following code snippet (auto-collected from DevExpress Examples) contains a reference to the Pattern 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-plot-xy-series-with-histogram/CS/Form1.cs#L46
diagram.AxisX.NumericScaleOptions.IntervalOptions.DivisionMode = IntervalDivisionMode.Count;
diagram.AxisX.NumericScaleOptions.IntervalOptions.Pattern = "{OB}{A1:F1}, {A2:F1}{CB}";
SecondaryAxisY secondaryAxisY = new SecondaryAxisY();
winforms-charts-plot-xy-series-with-histogram/VB/Form1.vb#L73
diagram.AxisX.NumericScaleOptions.IntervalOptions.DivisionMode = IntervalDivisionMode.Count
diagram.AxisX.NumericScaleOptions.IntervalOptions.Pattern = "{OB}{A1:F1}, {A2:F1}{CB}"
Dim secondaryAxisY As SecondaryAxisY = New SecondaryAxisY()
See Also