RangeBarSeriesLabel.Position Property
Gets or sets a value that specifies the position of series labels relative to the corresponding range bars.
Namespace: DevExpress.XtraCharts
Assembly: DevExpress.XtraCharts.v24.2.dll
NuGet Package: DevExpress.Charts
#Declaration
[XtraChartsLocalizableCategory(XtraChartsCategory.Behavior)]
public RangeBarLabelPosition Position { get; set; }
#Property Value
Type | Description |
---|---|
Range |
A Range |
Available values:
Name | Description |
---|---|
Outside | The label is painted outside the range bar, near its edge. |
Inside | The label is painted inside the range bar, near its edge. |
Center | The label is painted in the center of the range bar’s edge. |
#Remarks
Refer to the RangeBarLabelPosition enumeration’s description for a list of available label positions.
Note that the series label is always shown in the bar center when the Kind property is set to OneLabel.
#Example
The following example demonstrates how to create a ChartControl with two series of the SideBySideRangeBarSeriesView type, and add this chart to a form at runtime. Before proceeding with this example, first create a Windows Forms Application in Visual Studio, and include all necessary assemblies to the References list of your project.
Then, add the following code to the Form.Load event handler.
using DevExpress.XtraCharts;
using DevExpress.XtraEditors;
using System;
using System.Windows.Forms;
namespace RangeBarChart {
public partial class Form1 : XtraForm {
public Form1() {
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e) {
// Create a new chart.
ChartControl rangeBarChart = new ChartControl();
// Create two range bar series.
Series series1 = new Series("Series 1", ViewType.SideBySideRangeBar);
Series series2 = new Series("Series 2", ViewType.SideBySideRangeBar);
// Add points to them.
series1.Points.Add(new SeriesPoint("A", 10, 15));
series1.Points.Add(new SeriesPoint("B", 4, 7));
series1.Points.Add(new SeriesPoint("C", 3, 13));
series1.Points.Add(new SeriesPoint("D", 2, 11));
series1.Points.Add(new SeriesPoint("E", 1, 8));
series2.Points.Add(new SeriesPoint("A", 9, 13));
series2.Points.Add(new SeriesPoint("B", 5, 10));
series2.Points.Add(new SeriesPoint("C", 1, 9));
series2.Points.Add(new SeriesPoint("D", 3, 7));
series2.Points.Add(new SeriesPoint("E", 2, 10));
// Add both series to the chart.
rangeBarChart.Series.AddRange(new Series[] { series1, series2 });
// Specify series label options.
series2.LabelsVisibility = DevExpress.Utils.DefaultBoolean.True;
RangeBarSeriesLabel seriesLabel = (RangeBarSeriesLabel)series2.Label;
seriesLabel.Position = RangeBarLabelPosition.Outside;
seriesLabel.Kind = RangeBarLabelKind.TwoLabels;
seriesLabel.Indent = 10;
// Access the view-type-specific options of the series.
SideBySideRangeBarSeriesView myView1 = (SideBySideRangeBarSeriesView)series1.View;
myView1.MaxValueMarkerVisibility = DevExpress.Utils.DefaultBoolean.True;
myView1.MinValueMarkerVisibility = DevExpress.Utils.DefaultBoolean.True;
myView1.MinValueMarker.Kind = MarkerKind.Circle;
myView1.MaxValueMarker.Kind = MarkerKind.Star;
myView1.MaxValueMarker.StarPointCount = 5;
((SideBySideRangeBarSeriesView)series2.View).BarWidth = 0.4;
// Access the type-specific options of the diagram.
((XYDiagram)rangeBarChart.Diagram).EnableAxisXZooming = true;
// Hide the legend (if necessary).
rangeBarChart.Legend.Visibility = DevExpress.Utils.DefaultBoolean.True;
// Add a title to the chart (if necessary).
rangeBarChart.Titles.Add(new ChartTitle());
rangeBarChart.Titles[0].Text = "A Side-by-Side Range Bar Chart";
rangeBarChart.Titles[0].WordWrap = true;
// Add the chart to the form.
rangeBarChart.Dock = DockStyle.Fill;
this.Controls.Add(rangeBarChart);
}
}
}