# Overlapping Data Labels

Get started with MultiSelect, a WinForms control that makes selecting multiple objects from a list or a collection of selected items easy. See more in documentation here.

## Content

Data-label overlap can occur when label text is long or when a chart contains many data points. FlexChart provides several options for managing overlapping labels.

***

## Appearance of Overlapped Data Labels

Use the [OverlappingOptions](/componentone/api/win/online-flexchart/dotnet-api/C1.Win.FlexChart.10/C1.Win.Chart.DataLabel.OverlappingOptions.html) property for additional overlap control. The property accepts values from the `LabelOverlappingOptions` enumeration.
These options determine whether labels:

* Avoid overlapping one another
* Overlap data points when necessary
* Appear outside the plot area

The following images compare data labels displayed within and outside the plot area:

| **LabelOverlappingOptions.None** | **LabelOverlappingOptions.OutsidePlotArea** |
| ---------------------------- | --------------------------------------- |
| ![C1WinForms FlexChart Pie chart after None Label Overlapping](https://cdn.mescius.io/document-site-files/images/13ef049a-dbc7-444f-94c2-9a9cd1c2f895/images/labeloverlappingnone.png) | ![C1WinForms FlexChart Pie chart after Outside Plot Area](https://cdn.mescius.io/document-site-files/images/13ef049a-dbc7-444f-94c2-9a9cd1c2f895/images/labeloverlapping-opa.png) |

```csharp
//Allow to display the data labels outside plot area
   this.flexChart1.DataLabel.OverlappingOptions = LabelOverlappingOptions.OutsidePlotArea;
```

```vbnet
' Allow to display the data labels outside plot area
   Me.flexChart1.DataLabel.OverlappingOptions = LabelOverlappingOptions.OutsidePlotArea
```

***

## Auto-arrange Data Labels

Set [DataLabel.Position](/componentone/api/win/online-flexchart/dotnet-api/C1.Win.FlexChart.10/C1.Win.Chart.DataLabel.html) to `Auto` to allow FlexChart to position labels according to the available chart space.
Use [MaxAutoLabels](/componentone/api/win/online-flexchart/dotnet-api/C1.Win.FlexChart.10/C1.Win.Chart.DataLabel.MaxAutoLabels.html) to limit the number of labels arranged automatically. The default value is `100`, which allows FlexChart to arrange up to 100 labels.

| **LabelPosition.Top** | **LabelPosition.Auto** |
| ----------------- | ------------------ |
| ![C1WinForms FlexChart Top Label Position](https://cdn.mescius.io/document-site-files/images/13ef049a-dbc7-444f-94c2-9a9cd1c2f895/images/managedatalabels-auto.png) | ![C1WinForms FlexChart Auto Label Position](https://cdn.mescius.io/document-site-files/images/13ef049a-dbc7-444f-94c2-9a9cd1c2f895/images/managedatalabels-auto2.png) |

>type=note
> Note: Increasing **MaxAutoLabels** beyond 100 can reduce rendering performance because label-placement calculations increase with the number of labels. For charts with many data points, reduce the number of visible labels at the series level to improve performance.

```csharp
//Set position of data labels 
  this.flexChart1.DataLabel.Position = LabelPosition.Top;
```

```vbnet
'Set position of data labels 
  Me.flexChart1.DataLabel.Position = LabelPosition.Top
```

***

## Hide Overlapped Data Labels

Use the [DataLabel.Overlapping](/componentone/api/win/online-flexchart/dotnet-api/C1.Win.FlexChart.10/C1.Win.Chart.DataLabel.Overlapping.html) property to specify how overlapping labels are handled. The property accepts values from the `LabelOverlapping` enumeration.
For example, select the hide option to prevent overlapping labels from being displayed.
The following images compare charts that display or hide overlapping labels:

| **LabelOverlapping.Show** | **LabelOverlapping.Hide** |
| --------------------- | --------------------- |
| ![C1WinForms FlexChart Show Label Overlapping](https://cdn.mescius.io/document-site-files/images/13ef049a-dbc7-444f-94c2-9a9cd1c2f895/images/overlappingshow.png) | ![C1WinForms FlexChart Hide Overlapping](https://cdn.mescius.io/document-site-files/images/13ef049a-dbc7-444f-94c2-9a9cd1c2f895/images/overlappinghide.png) |

```csharp
//Hide the overlapping data labels
   this.flexChart1.DataLabel.Overlapping = LabelOverlapping.Hide;
```

```vbnet
' Hide the overlapping data labels
   Me.flexChart1.DataLabel.Overlapping = LabelOverlapping.Hide
```

For pie and sunburst charts, use [PieDataLabel.Overlapping](/componentone/api/win/online-flexchart/dotnet-api/C1.Win.FlexChart.10/C1.Win.Chart.PieDataLabel.Overlapping.html), which accepts values from the `PieLabelOverlapping` enumeration. Pie and sunburst labels are displayed by default but can be hidden or trimmed when the text exceeds the available segment space.
The following images show different overlap behaviors for FlexPie labels:

| **PieLabelOverlapping.Default** | **PieLabelOverlapping.Hide** | **PieLabelOverlapping.Trim** |
| --------------------------- | ------------------------ | ------------------------ |
| ![C1WinForms FlexChart Pie chart after PieLabelOverlapping.Default](https://cdn.mescius.io/document-site-files/images/13ef049a-dbc7-444f-94c2-9a9cd1c2f895/images/pieoverlappingshow.png) | ![C1WinForms FlexChart Pie chart after PieLabelOverlapping.Hide](https://cdn.mescius.io/document-site-files/images/13ef049a-dbc7-444f-94c2-9a9cd1c2f895/images/pieoverlappinghide.png) | ![C1WinForms FlexChart Pie chart after PieLabelOverlapping.Trim](https://cdn.mescius.io/document-site-files/images/13ef049a-dbc7-444f-94c2-9a9cd1c2f895/images/pieoverlappingtrim.png) |

```csharp
//Hide the overlapping data labels
   this.flexPie1.DataLabel.Overlapping = PieLabelOverlapping.Hide;
```

```vbnet
' Hide the overlapping data labels
   Me.flexPie1.DataLabel.Overlapping = PieLabelOverlapping.Hide
```