Skip to main content

AxisBase.LogarithmicBase Property

Gets or sets a value specifying a logarithmic base when the AxisBase.Logarithmic property is enabled.

Namespace: DevExpress.XtraCharts

Assembly: DevExpress.XtraCharts.v23.2.dll

NuGet Package: DevExpress.Charts

Declaration

[XtraChartsLocalizableCategory(XtraChartsCategory.Behavior)]
public virtual double LogarithmicBase { get; set; }

Property Value

Type Description
Double

A Double value which specifies the logarithmic base.

Remarks

If a chart’s series have their SeriesBase.ArgumentScaleType or SeriesBase.ValueScaleType properties set to ScaleType.Numerical, you can use the AxisBase.Logarithmic property to specify whether the logarithmic scale should be used to display axis values. When it is set to true, you can also define a logarithmic base value via the LogarithmicBase property.

Via the LogarithmicBase property, you can define a base value to a logarithm, which will be used to calculate the axis values.

The following images demonstrate how the LogarithmicBase property works.

LogarithmicBase = 10 LogarithmicBase = 20
Logarithmic_1 LogarithmicBase_20

Example

This example demonstrates how to use a logarithmic scale in XtraCharts, which is disabled by default.

Note

The logarithmic scale is only compatible with the numerical scale type.

To enable it, set the AxisBase.Logarithmic property to true, and set the AxisBase.LogarithmicBase property to the value required in your scenario.

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

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

        private void btnLogarithm10_Click(object sender, EventArgs e) {
            AxisY axis = ((XYDiagram)chartControl1.Diagram).AxisY;
            axis.Logarithmic = true;
            axis.LogarithmicBase = 10;
            axis.WholeRange.AlwaysShowZeroLevel = false;
        }

        private void btnLogarithm100_Click(object sender, EventArgs e) {
            AxisY axis = ((XYDiagram)chartControl1.Diagram).AxisY;
            axis.Logarithmic = true;
            axis.LogarithmicBase = 100;
            axis.WholeRange.AlwaysShowZeroLevel = false;
        }

        private void btnDisableLogarithm_Click(object sender, EventArgs e) {
            AxisY axis = ((XYDiagram)chartControl1.Diagram).AxisY;
            axis.Logarithmic = false;
            axis.WholeRange.AlwaysShowZeroLevel = true;
        }
    }
}
See Also