Author: Oscar Cronquist Article last updated on February 10, 2023

The picture above shows a chart that has custom data labels, they are linked to specific cell values.

This means that you can build a dynamic chart and automatically change the labels depending on what is shown on the chart.

I have demonstrated how to build dynamic data labels in a previous article if you are interested in using those in a chart.

In a post from March 2013 I demonstrated how to create Custom data labels in a chart.

Unfortunately, that technique worked only for bar and column charts.

You can't apply the same technique for an x y scatter chart, as far as I know.

Luckily the people at Microsoft have heard our prayers.

They have implemented a feature into Excel 2013 that allows you to assign a cell to a chart data point label a, in an x y scatter chart.

I will demonstrate how to do this for Excel 2013 and later versions and a workaround for earlier versions in this article.

1.1 How to apply custom data labels in Excel 2013 and later versions

This example chart shows the distance between the planets in our solar system, in an x y scatter chart.

x y scatter chart - custom data labels3

The first 3 steps tell you how to build a scatter chart.

  1. Select cell range B3:C11
  2. Go to tab "Insert"
  3. Press with left mouse button on the "scatter" button
  4. Press with right mouse button on on a chart dot and press with left mouse button on on "Add Data Labels"
  5. Press with right mouse button on on any dot again and press with left mouse button on "Format Data Labels"
  6. A new window appears to the right, deselect X and Y Value.
    Format data labels excel 2013
  7. Enable "Value from cells"
    data label range excel 2013
  8. Select cell range D3:D11
  9. Press with left mouse button on OK

This is what the chart shows, as you can see you need to manually rearrange the data labels and add data label shapes.

x y scatter chart excel 365

Back to top

1.1 Video

The following video shows you how to add data labels in an X Y Scatter Chart [Excel 2013 and later versions].

Back to top

Learn more

Axis | Chart Area | Chart Title | Axis Titles | Axis lines | Chart Legend | Tick Marks | Plot Area | Data Series | Data Labels | Gridlines

1.2 How to add data label shapes

  1. Press with right mouse button on on a data label.
  2. Press with mouse on "Change data label shapes".
  3. Select a shape.

Back to top

1.3 How to change data label locations

You can manually press with left mouse button on and drag data labels as needed. You can also let excel change the position of all data labels, choose between center, left, right, above and below.

  1. Press with right mouse button on on a data label
  2. Press with left mouse button on "Format Data Labels"
    Change label position excel 13
  3. Select a new label position.

Back to top

Back to top

Learn more

Secondary Axis | Linear trendline | Logarithmic Trendline | Moving Average | Error Bars

2. Workaround for earlier Excel versions

This workaround is for Excel 2010 and 2007, it is best for a small number of chart data points.

  1. Press with left mouse button on twice on a label to select it.
  2. Press with left mouse button on in formula bar.
  3. Type =
  4. Use your mouse to press with left mouse button on a cell that contains the value you want to use.
  5. The formula bar changes to perhaps =Sheet1!$D$3
  6. Repeat step 1 to 5 with remaining data labels.

Change the value in cell D3 and see how the data label on the chart instantly changes.

The following animated picture demonstrates how to link a cell value to a specific chart data point.

Add custom data labels in a x y scatter chart1

If your chart has many data points this method becomes quickly tedious and time-consuming.

I have automated these steps for you in a macro that you can read about below, there is also an example workbook that you can get.

Learn more

Column | Bar | Line | Area | Pie | Doughnut | Scatter | BubbleFunnel | Stock | Candlestick | Surface | Radar | Map

Back to top

2.1 Apply custom data labels (VBA Macro)

This macro adds a cell reference to each data label, the value in the referenced cell is then linked to the label. If you change the value in the cell the label value changes as well.

'Name macro
Sub AddDataLabels()

'Enable error handling
On Error Resume Next

'Display an inputbox and ask the user for a cell range
Set Rng = Application.InputBox(prompt:="Select cells to link" _
, Title:="Select data label values", Default:=ActiveCell.Address, Type:=8)

'Disable error handling
On Error GoTo 0

With ActiveChart
    
    'Iterate through each series in chart
    For Each ChSer In .SeriesCollection

        'Save chart point to object SerPo
        Set SerPo = ChSer.Points

        'Save the number of points in chart to variable j
        j = SerPo.Count

        'Iterate though each point in current series
        For i = 1 To j

            'Enable data label for current chart point
            SerPo(i).ApplyDataLabels Type:=xlShowValue

            'Save cell reference to chart point
            SerPo(i).DataLabel.Formula = "=" & ActiveSheet.Name _
            & "!" & Rng.Cells(i).Address(ReferenceStyle:=xlR1C1)
        Next
    Next
End With
End Sub

Learn more

Waterfall | Treemap | Sunburst | Histogram | Pareto | Box & Whisker

Back to top

2.2 Where to put the code?

  1. Copy macro (CTRL + c)
  2. Go to the VB Editor (Alt + F11)
  3. Press with left mouse button on "Insert" on the top menu.
  4. Press with left mouse button on "Module" to insert a code module to your workbook.
  5. Paste code to the module. (CTRL + v)
  6. Return to Excel.
  7. Save your workbook as a macro-enabled workbook (*.xlsm file).
    If you don't the macro will be gone the next time you open the same workbook.

Back to top

Learn more

Arrow | Normal distribution | Equation | Comparison | Heat map | Gantt

2.3 How to use macro

  1. Select the x y scatter chart.
  2. Press Alt+F8 to view a list of macros available.
  3. Select "AddDataLabels".
  4. Press with left mouse button on "Run" button.
  5. Select the custom data labels you want to assign to your chart.
    Make sure you select as many cells as there are data points in your chart.
  6. Press with left mouse button on OK button.

Back to top

Back to top

Recommended articles

Recommended articles

How to add horizontal line to chart
This tutorial shows you how to add a horizontal/vertical line to a chart. Excel allows you to combine two types […]

Recommended articles

Add pictures to a chart axis
This article demonstrates how to insert pictures to a chart axis, the picture above shows a column chart with country […]

Recommended articles

How to create a dynamic chart
Question: How do I create a chart that dynamically adds the values, as i type them on the worksheet? Answer: […]

Recommended articles

Dynamic Gantt charts
Today I am going to show you how to create a dynamic Gantt chart in excel 2007. A Gantt chart helps […]

Recommended articles

Color chart columns based on cell color
This article demonstrates macros that automatically changes the chart bar colors based on the corresponding cell, the first example is […]