# Axis Labels | WPF Controls | DevExpress Documentation

The Chart Control can display default and custom [axis](/WPF/6334/controls-and-libraries/charts-suite/chart-control/axes/axes) labels. Default labels are generated based on series data.

![WPF_DefaultAxisLabels](/WPF/images/wpf_defaultaxislabels120698.png)

The Chart Control automatically calculates the grid layout so that certain axis labels are hidden depending on the actual chart size to avoid overlapping labels.

The following image illustrates the chart layout with hidden X-Axis labels (region):

![Chart with missing labels](/WPF/images/qualitative-scale-auto-grid.png)

To display all axis labels, disable the scale’s `AutoGrid` option and set the `GridSpacing` property to `1`.

![Chart with displayed labels](/WPF/images/qualitative-scale-disable-auto-grid.png)

## Configure Custom Labels

You can create custom axis labels and modify their position and content. The Chart Control can display custom and default labels simultaneously. The following image shows custom axis labels for a Y-axis:

![WPF_CustomsLabel](/WPF/images/wpf_customslabel120704.png)

Use the markup below to configure custom axis labels:

- XAML

<section id="tabpanel_2JMp6WkZjV_tabid-xaml" role="tabpanel" data-tab="tabid-xaml">
<pre><code class="lang-xaml">&lt;dxc:XYDiagram2D.AxisY&gt;
      &lt;dxc:AxisY2D LabelVisibilityMode=&quot;Default&quot;
                   GridLinesMinorVisible=&quot;False&quot; 
                   Interlaced=&quot;False&quot; 
                   Brush=&quot;Transparent&quot;&gt;
            &lt;dxc:AxisY2D.CustomLabels&gt;
                  &lt;dxc:CustomAxisLabel Value=&quot;120&quot; Content=&quot;2h&quot;/&gt;
                  &lt;dxc:CustomAxisLabel Value=&quot;360&quot; Content=&quot;6h&quot;/&gt;
                  &lt;dxc:CustomAxisLabel Value=&quot;600&quot; Content=&quot;10h&quot;/&gt;
                  &lt;dxc:CustomAxisLabel Value=&quot;840&quot; Content=&quot;14h&quot;/&gt;
            &lt;/dxc:AxisY2D.CustomLabels&gt;
      &lt;/dxc:AxisY2D&gt;
&lt;/dxc:XYDiagram2D.AxisY&gt;
</code></pre></section>

This code uses the following API members:

| Class or Property | Description |
| --- | --- |
| [Axis2D.CustomLabels](/WPF/DevExpress.Xpf.Charts.Axis2D.CustomLabels) | The custom axis labels’ collection. If this collection is empty, the Chart Control displays default axis labels. |
| [CustomAxisLabel](/WPF/DevExpress.Xpf.Charts.CustomAxisLabel) | A custom axis label. |
| [CustomAxisLabel.Value](/WPF/DevExpress.Xpf.Charts.CustomAxisLabel.Value) | A value that specifies a label position along an axis. |
| [CustomAxisLabel.Content](/WPF/DevExpress.Xpf.Charts.CustomAxisLabel.Content) | Custom label content. |
| [Axis2D.LabelVisibilityMode](/WPF/DevExpress.Xpf.Charts.Axis2D.LabelVisibilityMode) | Specifies whether to show custom and default axis labels simultaneously. |

If the [Axis2D.CustomLabels](/WPF/DevExpress.Xpf.Charts.Axis2D.CustomLabels) collection does not contain any visible custom labels, the default axis labels are shown. Set the [Axis2D.LabelVisibilityMode](/WPF/DevExpress.Xpf.Charts.Axis2D.LabelVisibilityMode) property to [AutoGeneratedAndCustom](/WPF/DevExpress.Xpf.Charts.AxisLabelVisibilityMode) 
 to display custom and default labels simultaneously.

### How to Use the MVVM Design Pattern

To generate custom axis labels from a ViewModel, bind the [Axis2D.CustomLabelItemsSource](/WPF/DevExpress.Xpf.Charts.Axis2D.CustomLabelItemsSource) property to a collection of objects that contain label parameters. Use the [Axis2D.CustomLabelItemTemplate](/WPF/DevExpress.Xpf.Charts.Axis2D.CustomLabelItemTemplate) or [Axis2D.CustomLabelItemTemplateSelector](/WPF/DevExpress.Xpf.Charts.Axis2D.CustomLabelItemTemplateSelector)
property to specify how to convert a model object to a custom label.

The following example shows how to generate custom labels for a y-axis:

- XAML

<section id="tabpanel_2JMp6WkZjV-1_tabid-xaml1" role="tabpanel" data-tab="tabid-xaml1">
<pre><code class="lang-xaml">&lt;Window.DataContext&gt; 
    &lt;local:MainViewModel/&gt; 
&lt;/Window.DataContext&gt; 

&lt;dxc:XYDiagram2D.AxisY&gt; 
    &lt;dxc:AxisY2D x:Name=&quot;axisY&quot; 
                 GridLinesMinorVisible=&quot;False&quot; 
                 Interlaced=&quot;False&quot; 
                 Brush=&quot;Transparent&quot; 
                 CustomLabelItemsSource=&quot;{Binding CustomLabels}&quot;&gt; 
        &lt;dxc:AxisY2D.CustomLabelItemTemplate&gt; 
            &lt;DataTemplate&gt; 
                &lt;dxc:CustomAxisLabel Value=&quot;{Binding Item1}&quot; 
                                     Content=&quot;{Binding Item2}&quot;/&gt; 
            &lt;/DataTemplate&gt; 
        &lt;/dxc:AxisY2D.CustomLabelItemTemplate&gt; 
    &lt;/dxc:AxisY2D&gt; 
&lt;/dxc:XYDiagram2D.AxisY&gt; 
</code></pre></section>

- C#
- VB.NET

<section id="tabpanel_2JMp6WkZjV-2_tabid-csharp" role="tabpanel" data-tab="tabid-csharp">
<pre><code class="lang-csharp">public class MainViewModel {
    public IEnumerable&lt;Tuple&lt;double, string&gt;&gt; CustomLabels { get; private set; }
    public MainViewModel() {
        this.CustomLabels = new List&lt;Tuple&lt;double, string&gt;&gt; {
            new Tuple&lt;double, string&gt;(120, &quot;2h&quot;),
            new Tuple&lt;double, string&gt;(360, &quot;6h&quot;),
            new Tuple&lt;double, string&gt;(600, &quot;10h&quot;),
            new Tuple&lt;double, string&gt;(840, &quot;14h&quot;)
        };
    }
}
</code></pre></section>
<section id="tabpanel_2JMp6WkZjV-2_tabid-vb" role="tabpanel" data-tab="tabid-vb" aria-hidden="true" hidden="hidden">
<pre><code class="lang-vb">Public Class MainViewModel    
    Public Property CustomLabels As IEnumerable(Of Tuple)
        Get 
        End Get 
        Set 
        End Set 
    End Property 
    Public Sub New()
        MyBase.New 
        Me.CustomLabels = New List(Of Tuple)() {
                         New Tuple(Of Double, String)(120, &quot;2h&quot;), 
                         New Tuple(Of Double, String)(360, &quot;6h&quot;), 
                         New Tuple(Of Double, String)(600, &quot;10h&quot;), 
                         New Tuple(Of Double, String)(840, &quot;14h&quot;)}
    End Sub 
End Class 
</code></pre></section>

The code above uses the following API members:

| Member | Description |
| --- | --- |
| [Axis2D.CustomLabelItemsSource](/WPF/DevExpress.Xpf.Charts.Axis2D.CustomLabelItemsSource) | Gets or sets the collection that is used to generate custom labels. |
| [Axis2D.CustomLabelItemTemplate](/WPF/DevExpress.Xpf.Charts.Axis2D.CustomLabelItemTemplate) | Specifies the [DataTemplate](https://learn.microsoft.com/dotnet/api/system.windows.datatemplate) object that defines how to convert a model object to a custom label. |
| [Axis2D.CustomLabelItemTemplateSelector](/WPF/DevExpress.Xpf.Charts.Axis2D.CustomLabelItemTemplateSelector) | Gets or sets the [DataTemplateSelector](https://learn.microsoft.com/dotnet/api/system.windows.controls.datatemplateselector) object that defines the custom logic to select a data template that converts a model to a custom label. |

## How to Format Default Label Text

Use the predefined placeholders, [format specifiers](/WPF/10408/common-concepts/formatting-values/format-specifiers), and plain text to set a pattern that defines a label’s text. In the image below, the **{V} min** pattern is applied to the y-axis labels.

![WPF_AxisLabelTextPattern](/WPF/images/wpf_axislabeltextpattern120709.png)

The following markup configures the label’s text pattern:

- XAML

<section id="tabpanel_2JMp6WkZjV-3_tabid-xaml" role="tabpanel" data-tab="tabid-xaml">
<pre><code class="lang-xaml">&lt;dxc:XYDiagram2D.AxisY&gt;
      &lt;dxc:AxisY2D GridLinesMinorVisible=&quot;False&quot; 
                   Interlaced=&quot;False&quot; 
                   Brush=&quot;Transparent&quot;&gt;
            &lt;dxc:AxisY2D.Label&gt;
                  &lt;dxc:AxisLabel TextPattern=&quot;{}{V} min&quot;/&gt;
            &lt;/dxc:AxisY2D.Label&gt;
      &lt;/dxc:AxisY2D&gt;
&lt;/dxc:XYDiagram2D.AxisY&gt;
</code></pre></section>

The code above uses the classes and properties from the table below:

| Class or Property | Description |
| --- | --- |
| [AxisLabel.TextPattern](/WPF/DevExpress.Xpf.Charts.AxisLabel.TextPattern) | Specifies the text pattern. |
| [AxisBase.Label](/WPF/DevExpress.Xpf.Charts.AxisBase.Label) | Specifies label settings. |
| [AxisLabel](/WPF/DevExpress.Xpf.Charts.AxisLabel) | The axis label settings’ storage. |

The following table lists all available placeholders:

| Pattern | Description |
| --- | --- |
| {A} | Displays series point arguments (only for argument axes). |
| {V} | Displays series point values (only for value axes). |
| {VP} | Displays series point values as a percentage (only for value axes). |

You can also specify the [AxisLabel.Formatter](/WPF/DevExpress.Xpf.Charts.AxisLabel.Formatter) property to generate text strings for axis labels based on a custom condition or change the [order of magnitude](https://en.wikipedia.org/wiki/Order_of_magnitude) of axis label values. If the **Formatter** property is specified, the [AxisLabel.TextPattern](/WPF/DevExpress.Xpf.Charts.AxisLabel.TextPattern) value is ignored.

`TextPattern` can be applied to date-time or numeric scale values. Use `Formatter` for the [qualitative](/WPF/DevExpress.Xpf.Charts.ScaleType) scale type.

Follow the steps below to create a formatter:

- Create a class that inherits the [IAxisLabelFormatter](/WPF/DevExpress.Xpf.Charts.IAxisLabelFormatter) interface and implement the **GetAxisLabelText** method.
- Assign the newly created class instance to the [AxisLabel.Formatter](/WPF/DevExpress.Xpf.Charts.AxisLabel.Formatter) property.

This example shows how to apply a custom format to numeric axis labels:

![A formatter applies to axis labels:](/WPF/images/chart-control/axislabelformatter-on.png)A formatter applies to axis labels:

![A formatter does not apply to axis labels:](/WPF/images/chart-control/axislabelformatter-off.png)A formatter does not apply to axis labels:

**Markup:**

- XAML

<section id="tabpanel_2JMp6WkZjV-4_tabid-xaml" role="tabpanel" data-tab="tabid-xaml">
<pre><code class="lang-xaml">&lt;dxc:XYDiagram2D.AxisX&gt;
    &lt;dxc:AxisX2D&gt;
        &lt;dxc:AxisX2D.Label&gt;
            &lt;dxc:AxisLabel&gt;
                &lt;dxc:AxisLabel.Formatter&gt;
                    &lt;local:AxisLabelFormatter/&gt;
                &lt;/dxc:AxisLabel.Formatter&gt;
            &lt;/dxc:AxisLabel&gt;
        &lt;/dxc:AxisX2D.Label&gt;
    &lt;/dxc:AxisX2D&gt;
&lt;/dxc:XYDiagram2D.AxisX&gt;
&lt;dxc:XYDiagram2D.AxisY&gt;
    &lt;dxc:AxisY2D&gt;
            &lt;dxc:AxisLabel&gt;
                &lt;dxc:AxisLabel.Formatter&gt;
                    &lt;local:AxisLabelFormatter/&gt;
                &lt;/dxc:AxisLabel.Formatter&gt;
            &lt;/dxc:AxisLabel&gt;
        &lt;/dxc:AxisY2D.Label&gt;
    &lt;/dxc:AxisY2D&gt;
&lt;/dxc:XYDiagram2D.AxisY&gt;
</code></pre></section>

**Code-Behind:**

- C#
- VB.NET

<section id="tabpanel_2JMp6WkZjV-5_tabid-csharp" role="tabpanel" data-tab="tabid-csharp">
<pre><code class="lang-csharp">public class AxisLabelFormatter : IAxisLabelFormatter {
    public string GetAxisLabelText(object axisValue) {
        return Convert.ToString((double)axisValue / 1000);
    }
}
</code></pre></section>
<section id="tabpanel_2JMp6WkZjV-5_tabid-vb" role="tabpanel" data-tab="tabid-vb" aria-hidden="true" hidden="hidden">
<pre><code class="lang-vb">Public Class AxisLabelFormatter
    Inherits IAxisLabelFormatter
    Public Function GetAxisLabelText(ByVal axisValue As Object) As String
        Return Convert.ToString(CDbl(axisValue) / 1000)
    End Function
End Class
</code></pre></section>

## Resolve Axis Label Overlap

The Chart Control includes a Resolve Overlap algorithm that rotates, staggers and hides axis labels when they cannot sufficiently display label content due to lack of space. You can use the Resolve Overlap options to configure this algorithm. The image below shows a chart with these options disabled.

![WPF_ResolveOverlapping](/WPF/images/wpf_resolveoverlapping120718.png)

The following animation shows how the Resolve Overlap algorithm works:

![WPF_ResolveOverlappingAxisLabels](/WPF/images/wpf_resolveoverlappingaxislabels120721.gif)

The example below configures the Resolve Overlap algorithm options:

[View Example: Configure Resolve Overlapping for Axis Labels](https://github.com/DevExpress-Examples/wpf-chart-configure-resolve-overlapping-for-axis-labels)

- XAML

<section id="tabpanel_2JMp6WkZjV-6_tabid-xaml" role="tabpanel" data-tab="tabid-xaml">
<pre><code class="lang-xaml">&lt;dxc:XYDiagram2D.AxisX&gt;
    &lt;dxc:AxisX2D&gt;
        &lt;dxc:AxisX2D.DateTimeScaleOptions&gt;
            &lt;dxc:ManualDateTimeScaleOptions MeasureUnit=&quot;Hour&quot;
                        GridAlignment=&quot;Hour&quot;
                        GridSpacing=&quot;6&quot;
                        AutoGrid=&quot;False&quot; /&gt;
        &lt;/dxc:AxisX2D.DateTimeScaleOptions&gt;
        &lt;dxc:AxisX2D.Label&gt;
            &lt;dxc:AxisLabel TextPattern=&quot;{}{A:dd/MM HH:mm}&quot;&gt;
                &lt;dxc:Axis2D.ResolveOverlappingOptions&gt;
                    &lt;dxc:AxisLabelResolveOverlappingOptions AllowHide=&quot;True&quot;
                                AllowRotate=&quot;True&quot;
                                AllowStagger=&quot;True&quot;
                                MinIndent=&quot;5&quot; /&gt;
                &lt;/dxc:Axis2D.ResolveOverlappingOptions&gt;
            &lt;/dxc:AxisLabel&gt;
        &lt;/dxc:AxisX2D.Label&gt;
    &lt;/dxc:AxisX2D&gt;
&lt;/dxc:XYDiagram2D.AxisX&gt;
</code></pre></section>

The code above uses the following API members:

| Member | Description |
| --- | --- |
| [Axis2D.ResolveOverlappingOptions](/WPF/DevExpress.Xpf.Charts.Axis2D.ResolveOverlappingOptions) | Settings that define how to resolve label overlap. |
| [AxisLabelResolveOverlappingOptions.AllowHide](/WPF/DevExpress.Xpf.Charts.AxisLabelResolveOverlappingOptions.AllowHide) | Gets or sets the value that indicates whether to hide axis labels to resolve overlap. |
| [AxisLabelResolveOverlappingOptions.AllowRotate](/WPF/DevExpress.Xpf.Charts.AxisLabelResolveOverlappingOptions.AllowRotate) | Specifies the value that indicates whether to rotate axis labels. |
| [AxisLabelResolveOverlappingOptions.AllowStagger](/WPF/DevExpress.Xpf.Charts.AxisLabelResolveOverlappingOptions.AllowStagger) | Gets or sets the value that indicates whether to stagger axis labels. |
| [AxisLabelResolveOverlappingOptions.MinIndent](/WPF/DevExpress.Xpf.Charts.AxisLabelResolveOverlappingOptions.MinIndent) | Gets or sets the minimum indent between adjacent axis labels when the Resolve Overlap algorithm is applied. |

Note

The **AllowRotate** and **AllowStagger** properties only affect labels of a horizontal [2D XY Diagram](/WPF/115312/controls-and-libraries/charts-suite/chart-control/diagram/2d-xy-diagram) axis (the argument x-axis, or the value y-axis when [XYDiagram2D.Rotated](/WPF/DevExpress.Xpf.Charts.XYDiagram2D.Rotated) is set to **true**).

The following example uses the [Axis2D.SetResolveOverlappingOptions](/WPF/DevExpress.Xpf.Charts.Axis2D.SetResolveOverlappingOptions%28DevExpress.Xpf.Charts.AxisLabel-DevExpress.Xpf.Charts.AxisLabelResolveOverlappingOptions%29) method to specify the Resolve Overlap options for an X-axis in code:

- C#
- VB.NET

<section id="tabpanel_2JMp6WkZjV-7_tabid-csharp" role="tabpanel" data-tab="tabid-csharp">
<pre><code class="lang-csharp">AxisLabel xLabel = new AxisLabel();
Axis2D.SetResolveOverlappingOptions(xLabel, new AxisLabelResolveOverlappingOptions() { AllowHide = false,
                                                                                       AllowRotate = false,
                                                                                       AllowStagger = false});
((XYDiagram2D)chartControl1.Diagram).ActualAxisX.Label = xLabel;
</code></pre></section>
<section id="tabpanel_2JMp6WkZjV-7_tabid-vb" role="tabpanel" data-tab="tabid-vb" aria-hidden="true" hidden="hidden">
<pre><code class="lang-vb">Dim xLabel As AxisLabel = New AxisLabel()
Axis2D.SetResolveOverlappingOptions(xLabel, New AxisLabelResolveOverlappingOptions() With {
        .AllowHide = False,
        .AllowRotate = False,
        .AllowStagger = False
})
CType(chartControl1.Diagram, XYDiagram2D).ActualAxisX.Label = xLabel
</code></pre></section>

## Customize Label Appearance

You can change the text color, background color, font, and orientation of axis labels.

![](/WPF/images/chart-control/axis-label-appearance.png)

**In Markup**

- XAML

<section id="tabpanel_2JMp6WkZjV-8_tabid-xaml" role="tabpanel" data-tab="tabid-xaml">
<pre><code class="lang-xaml">&lt;dxc:XYDiagram2D.AxisX&gt;
    &lt;dxc:AxisX2D Visible=&quot;True&quot;&gt;
        &lt;dxc:AxisX2D.Label&gt;
            &lt;dxc:AxisLabel Foreground=&quot;DarkSlateBlue&quot; 
                           Background=&quot;LightBlue&quot; 
                           FontSize=&quot;14&quot; 
                           FontStyle=&quot;Italic&quot; 
                           FontWeight=&quot;Bold&quot;
                           Angle=&quot;45&quot;
                           TextPattern=&quot;{}{V} year&quot;/&gt;
        &lt;/dxc:AxisX2D.Label&gt;
    &lt;/dxc:AxisX2D&gt;
&lt;/dxc:XYDiagram2D.AxisX&gt;
</code></pre></section>

**In Code-Behind** 

- C#
- VB.NET

<section id="tabpanel_2JMp6WkZjV-9_tabid-csharp" role="tabpanel" data-tab="tabid-csharp">
<pre><code class="lang-csharp">XYDiagram2D diagram = (XYDiagram2D)chartControl1.Diagram;
diagram.AxisX = new AxisX2D();
diagram.AxisX.Label = new AxisLabel();
diagram.AxisX.Label.Background = new SolidColorBrush(Colors.Orange);
diagram.AxisX.Label.Foreground = new SolidColorBrush(Colors.DarkSlateBlue);
diagram.AxisX.Label.FontSize= 14;
diagram.AxisX.Label.FontStyle = FontStyles.Italic;
diagram.AxisX.Label.FontWeight = FontWeights.Bold;
</code></pre></section>
<section id="tabpanel_2JMp6WkZjV-9_tabid-vb" role="tabpanel" data-tab="tabid-vb" aria-hidden="true" hidden="hidden">
<pre><code class="lang-vb">Dim diagram As XYDiagram2D = CType(chartControl1.Diagram, XYDiagram2D)
diagram.AxisX = New AxisX2D
diagram.AxisX.Label = New AxisLabel
diagram.AxisX.Label.Background = New SolidColorBrush(Colors.Orange)
diagram.AxisX.Label.Foreground = New SolidColorBrush(Colors.DarkSlateBlue)
diagram.AxisX.Label.FontSize = 14
diagram.AxisX.Label.FontStyle = FontStyles.Italic
diagram.AxisX.Label.FontWeight = FontWeights.Bold
</code></pre></section>

The following appearance customization properties are available:

- [Angle](/WPF/DevExpress.Xpf.Charts.AxisLabel.Angle) (also specifies rotation for a data template defined in the [AxisLabel.ElementTemplate](/WPF/DevExpress.Xpf.Charts.AxisLabel.Angle) property.)
- [Background](https://learn.microsoft.com/dotnet/api/system.windows.controls.control.background)
- [BorderBrush](https://learn.microsoft.com/dotnet/api/system.windows.controls.control.borderbrush)
- [BorderThickness](https://learn.microsoft.com/dotnet/api/system.windows.controls.control.borderthickness)
- [FontFamily](https://learn.microsoft.com/dotnet/api/system.windows.controls.control.fontfamily)
- [FontSize](https://learn.microsoft.com/dotnet/api/system.windows.controls.control.fontsize)
- [FontStretch](https://learn.microsoft.com/dotnet/api/system.windows.controls.control.fontstretch)
- [FontStyle](https://learn.microsoft.com/dotnet/api/system.windows.controls.control.fontstyle)
- [FontWeight](https://learn.microsoft.com/dotnet/api/system.windows.controls.control.fontweight)
- [Foreground](https://learn.microsoft.com/dotnet/api/system.windows.controls.control.foreground)
- [Padding](https://learn.microsoft.com/dotnet/api/system.windows.controls.control.padding)

You can also define the [ElementTemplate](/WPF/DevExpress.Xpf.Charts.ChartTextElement.ElementTemplate) property to change axis label appearance:

![](/WPF/images/chart-control/axis-label-template.png)

- XAML

<section id="tabpanel_2JMp6WkZjV-10_tabid-xaml" role="tabpanel" data-tab="tabid-xaml">
<pre><code class="lang-xaml">&lt;Window.Resources&gt;
    &lt;DataTemplate x:Key=&quot;AxisXLabelTemplate&quot;&gt;
        &lt;Border BorderThickness=&quot;1&quot; CornerRadius=&quot;9&quot; Opacity=&quot;1.0&quot;&gt;
            &lt;Border.Background&gt;
                &lt;SolidColorBrush Color=&quot;Orange&quot;/&gt;
            &lt;/Border.Background&gt;
            &lt;Label Content=&quot;{Binding Path=Content}&quot; Padding=&quot;5,1,5,1.5&quot; 
                   Foreground=&quot;DarkSlateBlue&quot; FontSize=&quot;12&quot; /&gt;
        &lt;/Border&gt;
    &lt;/DataTemplate&gt;
&lt;/Window.Resources&gt;
...
&lt;dxc:XYDiagram2D.AxisX&gt;
    &lt;dxc:AxisX2D Visible=&quot;True&quot;&gt;
        &lt;dxc:AxisX2D.Label&gt;
            &lt;dxc:AxisLabel ElementTemplate=&quot;{StaticResource AxisXLabelTemplate}&quot;/&gt;
        &lt;/dxc:AxisX2D.Label&gt;
    &lt;/dxc:AxisX2D&gt;
&lt;/dxc:XYDiagram2D.AxisX&gt;
</code></pre></section>

See Also

[Tickmarks, Grid Lines, and Interlacing](/WPF/6337/controls-and-libraries/charts-suite/chart-control/axes/tickmarks-grid-lines-and-interlacing)

[How to: Sort Qualitative Scale Values in a Custom Sort Order](/WPF/115150/controls-and-libraries/charts-suite/chart-control/examples/providing-data/how-to-sort-qualitative-scale-values-in-a-custom-sort-order)

[How to: Customize Axis Labels](/WPF/7048/controls-and-libraries/charts-suite/chart-control/examples/appearance-customization/how-to-customize-axis-labels)

[How to: Create and Customize Custom Axis Labels](/WPF/17929/controls-and-libraries/charts-suite/chart-control/examples/chart-elements/how-to-create-and-customize-custom-axis-labels)

[How to: Configure Resolve Overlapping for Axis Labels](/WPF/117128/controls-and-libraries/charts-suite/chart-control/examples/chart-elements/how-to-configure-resolve-overlapping-for-axis-labels)