Skip to main content

BubbleSeriesView.MaxSize Property

Gets or sets the maximum size of the marker of the Bubble series view.

Namespace: DevExpress.XtraCharts

Assembly: DevExpress.XtraCharts.v23.2.dll

NuGet Package: DevExpress.Charts

Declaration

[XtraChartsLocalizableCategory(XtraChartsCategory.Layout)]
public double MaxSize { get; set; }

Property Value

Type Description
Double

A Double value, which specifies the marker’s maximum size (measured in units). The BubbleSeriesView.MinSize and MaxSize properties specify the marker’s size range on the X-axis. This value should be greater than 0.

Remarks

Bubble sizes are calculated automatically by default. Set the BubbleSeriesView.AutoSize property to false to manually specify maximum and minimum bubble sizes using the MaxSize and BubbleSeriesView.MinSize properties.

The MaxSize property is intended to forcibly limit the maximum size of the marker when the weight of a series point is too high relative to the other series points, and this may affect the appearance of a chart.

When calculating a bubble’s size, the extreme values within a single series are taken into account. This means that the maximum value in a series determines the MaxSize of a bubble and the minimum value - its BubbleSeriesView.MinSize. These values are calculated in the measurement units of the X-axis.

Note that the MaxSize property’s value should be greater than the value of the BubbleSeriesView.MinSize property.

Example

The following example demonstrates how to create a ChartControl with two series of the BubbleSeriesView type, and add this chart to a form at runtime. Before proceeding with this example, create a Windows Forms Application in Visual Studio, and add all required assemblies to the References list of your project.

Then, add the following code to the Form.Load event handler.

using System;
using System.Windows.Forms;
using DevExpress.XtraCharts;
// ...

namespace Series_BubbleChart {
    public partial class Form1 : Form {
        public Form1() {
            InitializeComponent();
        }

        private void Form1_Load(object sender, EventArgs e) {
            // Create a new chart.
            ChartControl bubbleChart = new ChartControl();

            // Create two bubble series.
            Series series1 = new Series("Series 1", ViewType.Bubble);
            Series series2 = new Series("Series 2", ViewType.Bubble);

            // Add points to them.
            series1.Points.Add(new SeriesPoint(1, 11, 2));
            series1.Points.Add(new SeriesPoint(2, 10, 1));
            series1.Points.Add(new SeriesPoint(3, 14, 3));
            series1.Points.Add(new SeriesPoint(4, 17, 2));

            series2.Points.Add(new SeriesPoint(1, 15, 3));
            series2.Points.Add(new SeriesPoint(2, 18, 4));
            series2.Points.Add(new SeriesPoint(3, 25, 2));
            series2.Points.Add(new SeriesPoint(4, 33, 1));

            // Add both series to the chart.
            bubbleChart.Series.AddRange(new Series[] { series1, series2 });

            // Set the numerical argument scale types for the series,
            // as it is qualitative, by default.
            series1.ArgumentScaleType = ScaleType.Numerical;
            series2.ArgumentScaleType = ScaleType.Numerical;

            // Access the view-type-specific options of the series.
            ((BubbleSeriesView)series1.View).AutoSize = false;
            ((BubbleSeriesView)series1.View).MaxSize = 1;
            ((BubbleSeriesView)series1.View).MinSize = 0.3;
            ((BubbleSeriesView)series1.View).BubbleMarkerOptions.Kind = MarkerKind.Circle;

            // Access the type-specific options of the diagram.
            ((XYDiagram)bubbleChart.Diagram).Rotated = true;

            // Hide the legend (if necessary).
            bubbleChart.Legend.Visibility = DevExpress.Utils.DefaultBoolean.False;

            // Add a chart to the form.
            bubbleChart.Dock = DockStyle.Fill;
            this.Controls.Add(bubbleChart);
        }
    }
}
See Also