Skip to main content
A newer version of this page is available. .

TdxChartSimpleDiagram Class

A simple diagram in the Chart control.

Declaration

TdxChartSimpleDiagram = class(
    TdxChartCustomDiagram
)

Remarks

A simple diagram is designed to display Pie and Doughnut series.

Supported Simple Series Types

A series View determines how a simple diagram displays series.[1] A diagram can display multiple series with different Views and individual View appearance settings. You can use the ViewType or ViewClass property to switch between compatible Views in any existing series and display the same data in a different manner at any time.

Pie View

The Pie View displays series values as slices of a circle whose radial angles reflect shares of all series values in relation to their total.

VCL Chart Control: A Pie View Example

Doughnut View

The Doughnut View is identical to the Pie View but has a hole in its center.

VCL Chart Control: A Doughnut View Example

Main API Members

The list below outlines key members of the TdxChartSimpleDiagram class that allow you to configure simple diagrams and manage series in them.

Example

The following code example creates a simple series with the Doughnut View and populates it with data points in unbound mode:

var
  ASimpleDiagram: TdxChartSimpleDiagram;
  ASimpleSeries: TdxChartSimpleSeries;
  ADoughnutView: TdxChartSimpleSeriesDoughnutView;
begin
  dxChartControl1.BeginUpdate;  // Initiates the following batch change
  try
    ASimpleDiagram := dxChartControl1.AddDiagram<TdxChartSimpleDiagram>('Country statistics');
    ASimpleDiagram.Title.Appearance.FontOptions.Size := 16;
    ASimpleDiagram.Legend.AlignmentHorz := TdxChartLegendAlignment.Near; // Moves the legend pane
    ASimpleSeries := ASimpleDiagram.AddSeries('Area');  // Creates a simple series
    // Displays series data point arguments on the diagram legend pane
    ASimpleSeries.ShowInLegend := TdxChartSeriesShowInLegend.Diagram;
    ASimpleSeries.ViewType := 'Doughnut';  // Selects the Doughnut series View
    ASimpleSeries.DataBindingType := 'Unbound';  // Selects the unbound data access mode
    TdxChartSimpleSeriesUnboundDataBinding(ASimpleSeries.DataBinding).ArgumentField.ValueType := 'string';
    ASimpleSeries.Title.Text := 'Area';  // Specifies the series title
    // Populates the unbound simple series with data points
    ASimpleSeries.Points.Add('Russia', 17.0752);
    ASimpleSeries.Points.Add('Canada', 9.98467);
    ASimpleSeries.Points.Add('USA', 9.63142);
    ASimpleSeries.Points.Add('China', 9.59696);
    ASimpleSeries.Points.Add('Brazil', 8.511965);
    ASimpleSeries.Points.Add('Australia', 7.68685);
    ASimpleSeries.Points.Add('India', 3.28759);
    ASimpleSeries.Points.Add('Others', 81.2);
    // Customizes appearance of the Doughnut series View
    ADoughnutView := ASimpleSeries.View as TdxChartSimpleSeriesDoughnutView;
    ADoughnutView.HoleRadius := 50;
    ADoughnutView.ExplodedValueOptions.Mode := TdxChartExplodedValueMode.All;
  finally
    dxChartControl1.EndUpdate;  // Calls EndUpdate regardless of the batch operation's success
  end;

VCL Chart Control: Doughnut Series Example

Diagram Deletion

To delete a diagram, release it directly in code (call the Free procedure in Delphi or use the delete keyword in C++Builder).

Direct TdxChartSimpleDiagram Class References

The Chart control’s Diagrams and VisibleDiagrams properties reference the TdxChartSimpleDiagram class as a TdxChartCustomDiagram object. You need to cast it to the TdxChartSimpleDiagram class to access all public API members.

Footnotes
  1. All example images in this topic section demonstrate the same series when different Views are active for comparison.

See Also