Back to Devexpress

How to: Customize a Chart's Appearance

windowsforms-5538-controls-and-libraries-chart-control-examples-creating-charts-appearance-customization-how-to-customize-a-charts-appearance.md

latest3.4 KB
Original Source

How to: Customize a Chart's Appearance

  • Aug 01, 2019
  • 2 minutes to read

This example demonstrates how to customize a chart’s appearance at runtime, via the ChartControl.AppearanceName, ChartControl.PaletteName and ChartControl.PaletteBaseColorNumber properties.

Note that you can define a separate palette for painting all indicators available in your chart, via the ChartControl.IndicatorsPaletteName property.

csharp
using System;
using System.Windows.Forms;
using DevExpress.XtraCharts;
// ...
private void Form1_Load(object sender, EventArgs e) {
    // Create an empty chart.
    ChartControl barChart = new ChartControl();

    // Create a series and add points to it.
    Series series1 = new Series("Bar Series", ViewType.Bar);
    series1.Points.Add(new SeriesPoint("A", new double[] { 10 }));
    series1.Points.Add(new SeriesPoint("B", new double[] { 12 }));
    series1.Points.Add(new SeriesPoint("C", new double[] { 14 }));
    series1.Points.Add(new SeriesPoint("D", new double[] { 17 }));

    // Create an indicator (e.g. Regression Line),
    // and add it to the series' collection.
    RegressionLine myLine = new RegressionLine(ValueLevel.Value);
    ((SideBySideBarSeriesView)series1.View).Indicators.Add(myLine);

    // Add the series to the chart.
    barChart.Series.Add(series1);

    // Define the chart's appearance and palette.
    barChart.AppearanceName = "Dark";
    barChart.PaletteName = "Opulent";
    barChart.PaletteBaseColorNumber = 5;

    // Define a separate palette for the chart's indicators.
    barChart.IndicatorsPaletteName = "Default";

    // Add the chart to the form.
    barChart.Dock = DockStyle.Fill;
    this.Controls.Add(barChart);
}
vb
Imports System
Imports System.Windows.Forms
Imports DevExpress.XtraCharts
' ...
Private Sub Form1_Load(ByVal sender As Object, _ 
ByVal e As EventArgs) Handles MyBase.Load
    ' Create an empty chart.
    Dim barChart As New ChartControl()

    ' Create a series and add points to it.
    Dim series1 As New Series("Bar Series", ViewType.Bar)
    series1.Points.Add(New SeriesPoint("A", New Double() { 10 }))
    series1.Points.Add(New SeriesPoint("B", New Double() { 12 }))
    series1.Points.Add(New SeriesPoint("C", New Double() { 14 }))
    series1.Points.Add(New SeriesPoint("D", New Double() { 17 }))

    ' Create an indicator (e.g. Regression Line),
    ' and add it to the series' collection.
    Dim myLine As New RegressionLine(ValueLevel.Value)
    CType(series1.View, SideBySideBarSeriesView).Indicators.Add(myLine)

    ' Add the series to the chart.
    barChart.Series.Add(series1)

    ' Define the chart's appearance and palette.
    barChart.AppearanceName = "Dark"
    barChart.PaletteName = "Opulent"
    barChart.PaletteBaseColorNumber = 5

    ' Define a separate palette for the chart's indicators.
    barChart.IndicatorsPaletteName = "Default"

    ' Add the chart to the form.
    barChart.Dock = DockStyle.Fill
    Me.Controls.Add(barChart)
End Sub

The result is shown in the following image.