[Expand]General Information
[Collapse]WinForms Controls
 [Expand]What's Installed
 [Expand]Build an Application
 [Collapse]Controls and Libraries
  [Expand]Forms and User Controls
  [Expand]Messages, Notifications, and Dialogs
  [Expand]Editors and Simple Controls
  [Expand]Ribbon, Bars and Menu
  [Expand]Application UI Manager
  [Expand]Docking Library
  [Expand]Data Grid
  [Expand]Vertical Grid
  [Expand]Property Grid
  [Expand]Pivot Grid
  [Expand]Tree List
  [Collapse]Chart Control
   [Expand]Getting Started
   [Expand]Charting Basics
   [Expand]Series Views
   [Collapse]Chart Elements
     [Expand]Diagram Types
       Axis Scale Types
       Visual Ranges and Whole Ranges
       Primary and Secondary Axes
       Grid Lines, Tickmarks and Interlacing
       Axis Appearance and Position
       Axis Titles
       Axis Labels
       Constant Lines
       Scale Breaks
     Chart Titles
   [Expand]Providing Data
   [Expand]Data Representation
   [Expand]Appearance Customization
   [Expand]End-User Features
   [Expand]Design-Time Features
   [Expand]Visual Elements
   [Expand]Additional Resources
  [Expand]Map Control
  [Expand]Rich Text Editor
  [Expand]Spell Checker
  [Expand]Form Layout Managers
  [Expand]Navigation Controls
  [Expand]PDF Viewer
  [Expand]TreeMap Control
  [Expand]Sunburst Control
 [Expand]Common Features
  Get More Help
 [Expand]API Reference
[Expand]ASP.NET Controls and MVC Extensions
[Expand]ASP.NET Bootstrap Controls
[Expand]ASP.NET Core Bootstrap Controls
[Expand]WPF Controls
[Expand]Xamarin Controls
[Expand]Windows 10 App Controls
[Expand]Office File API
[Expand]Report and Dashboard Server
[Expand]eXpressApp Framework
[Expand]eXpress Persistent Objects
[Expand]CodeRush Classic
[Expand]Cross-Platform Core Libraries
[Expand]Tools and Utilities
 End-User Documentation
View this topic on docs.devexpress.com (Learn more)


This document details the use of axes in XtraCharts: their purpose, implementation and capabilities. It highlights the basics on axis scale types, scrolling and visible range, using primary and secondary axes and axes' elements. Before reading this text, it may be useful to review Charting Basics. To learn more on the hierarchy of elements in the WinForms Chart, refer to Chart Elements.

For charting, the rectangular coordinate system is used to determine each point uniquely on a plane through two numbers, the argument and the value of the point. To define the coordinates, two perpendicular directed lines - the axes are specified: the axis of arguments (X-axis) and the axis of values (Y-axis).

It's possible to rearrange the axes positions: to display the X-axis vertically, and the Y-axis horizontally, via the XYDiagram.Rotated property. Note that this doesn't affect the functionality of axes, and their flipped position doesn't alter their functionality; the axis of arguments is still the X-axis, and the axis of values - the Y-axis.

Structurally, axes belong to a chart's Diagram object, and the diagram types which support axes are: XY-Diagram, Gantt Diagram, XY-Diagram 3D and Radar Diagram. So, since there are multiple diagram types, each supporting specific series view types, there is some specificity in implementing axes for different diagram types. For the purpose of simplicity, and since the XY-Diagram is the most common type, it's used in this document, to demonstrate axes' functionality.

To access axes at design time, select your chart control, and in the Properties window, expand the ChartControl.Diagram property. You'll see the XYDiagram.AxisX and XYDiagram.AxisY properties, which provide access to the appropriate axes' options and elements.

At runtime, to access axes, you need to cast your Diagram object's instance to the required type, as the following code demonstrates.

In XtraCharts, there is a stiff inter-dependence between the scale type of series and axes. Since series points should have their arguments and values defined, and these arguments (and their values) should fall under one of the three scale types available: (Numerical, DateTime or Qualitative). Note that you do not need to change the argument scale type of the SeriesBase.ArgumentScaleType property (set to the Auto mode, by default) because the type of series point argument is detected automatically based on the type of underlying data. To learn more, refer to Axis Scale Types.

Another notable feature is the capability to limit the whole range of an axis, along with its visible range. To learn more on this, refer to Visual Ranges and Whole Ranges .

Besides the primary axes, it's possible to add an indefinite number of secondary axes to a diagram's collection. You can assign them to the required series instead of the primary axes, and distribute them among separate Panes. To learn more on this, refer to Primary and Secondary Axes.

It's possible to independently customize the appearance of each axis in a great many ways. For more information on this, refer to the following documents: Grid Lines, Tickmarks and Interlacing and Axis Appearance and Position.

In addition, the XYDiagram.AxisX and XYDiagram.AxisY properties provide access to axes' child elements: axis title, Axis Labels, Strips and Constant Lines. For a detailed description of each element, refer to the corresponding document. These elements are shown in the following image.

Moreover, on any axis, Scale Breaks can be inserted, to replace a fragment of the axis' range with a ragged area.

Expanded See Also

Is this topic helpful?​​​​​​​