Skip to footer content
EXCEL TOOLS

How to Create a Scatter Plot in Excel: Made Easy

A scatter plot in Excel turns two columns of numbers into a clear picture of how they relate to each other. The fastest way to make one takes about ten seconds. Highlight the two columns that hold your data, open the Insert tab on the ribbon, click the scatter plot icon in the Charts group, and pick the first thumbnail. Excel places a finished scatter plot on your worksheet right away.

That single button handles the most common need. The rest of this guide walks through every other route to the same result, including Recommended Charts, keyboard shortcuts, the full chart dialog, and a macro for repeat jobs. Before plotting, it pays to lay your data out in two adjacent numeric columns, with the values for the horizontal axis on the left. The same habits that make a clean scatter plot also make it easy to keep creating and editing charts as your spreadsheet grows, and a tidy source sheet saves time whenever you are building Excel files that feed those charts.

A scatter plot, also called an XY chart or a scatter diagram, suits data where both values are numeric, such as advertising spend against sales, temperature against ice cream orders, or study hours against test scores. By convention, the independent variable sits on the horizontal axis and the dependent variable sits on the vertical axis, which Excel labels the value axis. A scatter plot behaves differently from a line chart because the horizontal axis shows real numeric distances between points instead of evenly spaced labels. Anyone who later wants to automate the step can skip to the developer section near the end, where the same chart is produced in a few lines of code.

How to Create a Scatter Plot in Excel: Made Easy: Image 1 - Two-column data range selected, with the Insert tab open and the scatter chart icon

A Quick Example to Follow Along

Assume the following table sits in two columns, with ad spend in column A and resulting sales in column B. Each row is a pair of X and Y values that becomes one point on the chart.

| Ad spend (X value) | Sales (Y value) | | --- | --- | | 100 | 240 | | 150 | 310 | | 200 | 360 | | 250 | 410 | | 300 | 500 |

With these two variables in place, any of the methods below will make a scatter plot from the same data, plotting the five pairs as a simple graph. Note that the program reads the left column as the X axis and the right column as the Y axis, so the column order matters.

Method 1: Use the Insert Tab on the Ribbon

This is the method most people reach for, and it works the same way on Windows and Mac.

  1. Select the two columns of numeric data, including the header row.
  2. Click the Insert tab.

  3. In the Charts group, click the Insert Scatter (X, Y) or Bubble Chart icon. The icon shows several dots scattered on a small grid.

  4. Click Scatter from the drop-down, which is the top-left thumbnail.

The chart appears on the same worksheet. The left column becomes the horizontal (X) axis and the right column becomes the vertical (Y) axis. In short: highlight the range, open the Insert tab, and click Scatter.

How to Create a Scatter Plot in Excel: Made Easy: Image 2 - Scatter chart drop-down expanded, showing the five subtype thumbnails with the plain Scatter option

If you are unsure which chart fits your numbers, let Excel choose for you.

  1. Select your data range.
  2. Go to Insert and click Recommended Charts.

  3. Excel analyzes your data and lists chart types on the left. When both columns are numeric, a scatter option usually appears among the suggestions.
  4. Click the scatter preview, then click OK.

This route is handy for everyday users who want a quick check that a scatter plot truly suits the data before committing to it.

How to Create a Scatter Plot in Excel: Made Easy: Image 3 - Recommended Charts dialog with a scatter preview selected and the OK button

Method 3: Insert a Chart With a Keyboard Shortcut

Two shortcuts speed up chart creation once your data is selected.

  • Alt + F1 inserts a default chart as an object on the current worksheet.
  • F11 inserts a default chart on a brand new chart sheet.

Excel uses a clustered column chart as the default, so the next step converts it to a scatter plot. Right-click the new chart, choose Change Chart Type, open the X Y (Scatter) category, and select the subtype you want. Method 5 covers that conversion in more detail.

For pure ribbon navigation without a mouse, press Alt, then N, then move to the scatter icon with the arrow keys and press Enter.

Method 4: Open the Full Chart Dialog for Precise Control

The All Charts dialog gives you every scatter subtype in one place.

  1. Select your data.
  2. On the Insert tab, click the small arrow in the bottom-right corner of the Charts group to open the Insert Chart dialog.

  3. Switch to the All Charts tab.

  4. Click X Y (Scatter) in the left list.

  5. Pick a subtype across the top, preview it, and click OK.

This dialog is the best choice when you need a specific style, such as a scatter plot with smooth connecting lines for a trend or with straight lines for a step pattern.

Method 5: Convert an Existing Chart Into a Scatter Plot

Many people already have a column or line chart and want to switch it. The right click context menu makes this quick.

  1. Click once on the existing chart to select it.
  2. Right-click anywhere inside the chart area.
  3. Choose Change Chart Type from the menu.

  4. Select X Y (Scatter) and pick a subtype.

  5. Click OK.

Excel keeps your data links and chart title, so only the visual style changes and the same data points are displayed in the new format.

Method 6: Build a Scatter Plot With a Macro (VBA)

For reports that get rebuilt on a schedule, a short macro removes the manual clicks. Open the Visual Basic editor with Alt + F11, insert a module, and paste a routine like this:

Sub MakeScatterPlot()
    Dim cht As ChartObject
    Set cht = ActiveSheet.ChartObjects.Add(Left:=200, Top:=20, Width:=400, Height:=300)
    cht.Chart.SetSourceData Source:=Range("A1:B20")
    cht.Chart.ChartType = xlXYScatter
    cht.Chart.HasTitle = True
    cht.Chart.ChartTitle.Text = "Spend vs Sales"
End Sub
Sub MakeScatterPlot()
    Dim cht As ChartObject
    Set cht = ActiveSheet.ChartObjects.Add(Left:=200, Top:=20, Width:=400, Height:=300)
    cht.Chart.SetSourceData Source:=Range("A1:B20")
    cht.Chart.ChartType = xlXYScatter
    cht.Chart.HasTitle = True
    cht.Chart.ChartTitle.Text = "Spend vs Sales"
End Sub
Sub MakeScatterPlot()
    Dim cht As ChartObject
    cht = ActiveSheet.ChartObjects.Add(Left:=200, Top:=20, Width:=400, Height:=300)
    cht.Chart.SetSourceData(Source:=Range("A1:B20"))
    cht.Chart.ChartType = xlXYScatter
    cht.Chart.HasTitle = True
    cht.Chart.ChartTitle.Text = "Spend vs Sales"
End Sub
$vbLabelText   $csharpLabel

Run the macro from the editor or assign it to a button. The xlXYScatter constant produces the plain marker style; xlXYScatterLines and xlXYScatterSmooth add connecting lines.

Scatter Plot Subtypes Worth Knowing

Excel offers five XY scatter styles, and choosing the right one improves clarity:

  • Scatter with only markers plots each point on its own, which is ideal for spotting correlation and outliers.
  • Scatter with smooth lines and markers connects points with a curved line for continuous trends.
  • Scatter with smooth lines shows the curve without markers.
  • Scatter with straight lines and markers joins points in order with direct segments.
  • Scatter with straight lines shows segments only.

For most analysis work, markers alone give the cleanest read.

Customizing Your Scatter Plot

A few finishing touches turn a raw chart into something report-ready. When a chart is selected, Excel shows the Chart Design tab on the ribbon, which holds quick layouts, the Select Data button, styles, and the same chart element covered below.

  • Add axis titles. Click the chart, open the Chart Elements button (the plus sign on the right side of the chart area), and tick Axis Titles so readers know what each axis measures.
  • Add a trendline. Tick Trendline in the same menu to show the relationship between the two variables, with options for linear, exponential, and moving average lines; you can also right-click any data point and choose Add Trendline..., then show the R-squared value on the chart to measure the strength of the correlation.
  • Adjust the markers. Open Format Data Series to change marker size, shape, and fill color.
  • Label points. Tick Data Labels when each point represents a named item, or right-click any point and choose Add Data Labels... to open the Format Data Labels pane. Labels can represent specific information from your dataset by using Value From Cells instead of the default values.
  • Set the axis scale. Double-click an axis to open Format Axis, then set the minimum and the maximum value so the points fill the plot area. The vertical axis is the value axis.
  • Split the plot into four quadrants. Optionally draw a horizontal reference line and a vertical reference line at the average X and Y values on the graph to divide the chart area into four quadrants, a common way to group points by high and low performance.

Conditional cues on the source data can also guide the eye before charting, and the principles match how conditional formatting highlights values in a worksheet.

Common Issues and Troubleshooting

Excel made a line or column chart instead of a scatter plot. The keyboard shortcuts insert a default column chart. Use Change Chart Type and select X Y (Scatter), or pick the scatter icon on the Insert tab from the start.

Only one set of points appears against 1, 2, 3 on the X axis. Excel plots a single selected column against row numbers. Select both the X and Y columns so it has two value sets.

The horizontal axis shows text instead of numbers. A scatter plot needs numeric values on both axes. When the left column holds text labels, Excel cannot use it as the X axis. Convert the labels to numbers, or switch to a different chart type that accepts categories.

A header row turned into a data point. Keep the header row in your selection so Excel reads it as a series title rather than a value. Mixing headers in for one column and out for another causes mismatched points.

The columns are not next to each other. Hold Ctrl while selecting each column, and select the column meant for the X axis first.

Points overlap and the chart looks crowded. Shrink the marker size in Format Data Series, add transparency, or filter the data range before charting.

Dates look unevenly spaced on the X axis. A scatter plot treats dates as their underlying numbers, so points sit at true time distances. That spacing is correct for XY data, though a line chart with a date axis may read better for time series.

Options look limited in Excel for the web. The browser version offers fewer subtypes and formatting controls. Open the file in the desktop app for the full All Charts dialog and trendline choices.

For Developers: Create Scatter Plots With IronXL

Teams that generate spreadsheets from an application can skip the manual steps and produce the chart in code. IronXL is a .NET library that reads and writes Excel files without Office or Interop installed on the server, which makes it a fit for web apps, scheduled jobs, and cloud functions.

The snippet below loads a workbook, builds a scatter chart, and saves the result:

using IronXL;
using IronXL.Drawing.Charts;
// Load a workbook that already holds your X and Y data
WorkBook workBook = WorkBook.Load("Data.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
// Create a scatter chart, positioned by cell coordinates (left, top, right, bottom)
IChart chart = workSheet.CreateChart(ChartType.Scatter, 5, 5, 20, 15);
// Add a series: the first range is the X axis, the second range is the Y values
IChartSeries series = chart.AddSeries("A2:A20", "B2:B20");
series.Title = workSheet["B1"].StringValue;
// Set the title and legend, then plot and save
chart.SetTitle("Spend vs Sales");
chart.SetLegendPosition(LegendPosition.Bottom);
chart.Plot();
workBook.SaveAs("ScatterChart.xlsx");
using IronXL;
using IronXL.Drawing.Charts;
// Load a workbook that already holds your X and Y data
WorkBook workBook = WorkBook.Load("Data.xlsx");
WorkSheet workSheet = workBook.DefaultWorkSheet;
// Create a scatter chart, positioned by cell coordinates (left, top, right, bottom)
IChart chart = workSheet.CreateChart(ChartType.Scatter, 5, 5, 20, 15);
// Add a series: the first range is the X axis, the second range is the Y values
IChartSeries series = chart.AddSeries("A2:A20", "B2:B20");
series.Title = workSheet["B1"].StringValue;
// Set the title and legend, then plot and save
chart.SetTitle("Spend vs Sales");
chart.SetLegendPosition(LegendPosition.Bottom);
chart.Plot();
workBook.SaveAs("ScatterChart.xlsx");
Imports IronXL
Imports IronXL.Drawing.Charts

' Load a workbook that already holds your X and Y data
Dim workBook As WorkBook = WorkBook.Load("Data.xlsx")
Dim workSheet As WorkSheet = workBook.DefaultWorkSheet

' Create a scatter chart, positioned by cell coordinates (left, top, right, bottom)
Dim chart As IChart = workSheet.CreateChart(ChartType.Scatter, 5, 5, 20, 15)

' Add a series: the first range is the X axis, the second range is the Y values
Dim series As IChartSeries = chart.AddSeries("A2:A20", "B2:B20")
series.Title = workSheet("B1").StringValue

' Set the title and legend, then plot and save
chart.SetTitle("Spend vs Sales")
chart.SetLegendPosition(LegendPosition.Bottom)
chart.Plot()
workBook.SaveAs("ScatterChart.xlsx")
$vbLabelText   $csharpLabel

The full walkthrough, including other chart types, lives in the IronXL chart how-to guide.

Wrapping Up

Creating a scatter plot in Excel comes down to selecting two numeric columns and clicking the scatter icon on the Insert tab. From there, Recommended Charts, keyboard shortcuts, the All Charts dialog, and a quick macro each offer a faster path depending on the job, while the troubleshooting tips above clear up the snags that trip up most first attempts. Scatter diagrams present relationships between two variables more clearly than most other chart types, which is why they remain a staple of everyday analysis. For more on charts, formatting, and data prep, the Excel chart tutorials are a useful next stop, and developers who want to generate these visuals automatically can explore IronXL for .NET.

Curtis Chau
Technical Writer

Curtis Chau holds a Bachelor’s degree in Computer Science (Carleton University) and specializes in front-end development with expertise in Node.js, TypeScript, JavaScript, and React. Passionate about crafting intuitive and aesthetically pleasing user interfaces, Curtis enjoys working with modern frameworks and creating well-structured, visually appealing manuals.

...

Read More

Iron Support Team

We're online 24 hours, 5 days a week.
Chat
Email
Call Me