How to Draw a Scatter Plot | Two Numeric Columns, One Chart

Drawing a scatter plot requires plotting bivariate numeric data as markers on a two-dimensional plane, with the independent variable on the X-axis and the dependent variable on the Y-axis—a task executable in seconds within Excel, Python, Tableau, or Power BI.

Whether you’re spotting a trend, hunting for outliers, or checking the strength of a relationship, the scatter plot is the go-to chart. The barrier is low: two columns of numbers and the right tool. The mistake people make is swapping the axes or grabbing non-numeric data, which turns a useful plot into visual noise. Here is the exact path drawn clean for every major platform, plus the rules that make the result worth looking at.

What Makes A Good Scatter Plot?

A scatter plot works only when both variables are numeric—sales in dollars and profit in dollars, not customer names. The X-axis carries the independent variable (what you control or start with), and the Y-axis carries the dependent variable (what changes in response). You need at least 50 to 100 paired samples for the relationship to show up reliably, though smaller datasets still plot fine.

How To Draw A Scatter Plot In Excel

Excel makes a scatter plot from two adjacent numeric columns in under a minute. The key is picking the correct chart subtype—the line-heavy defaults can disguise the data.

  1. Highlight the two columns of numeric data.
  2. Navigate to the Insert tab on the ribbon.
  3. In the Charts group, click Insert Scatter (X, Y) or Bubble Chart.
  4. Choose the Scatter subtype—the one with dots only, no lines.

A plain chart of dots appears. If Excel guessed wrong about which column is X and which is Y, right-click the chart, pick Select Data, and swap the axis assignments manually. On the Mac version, the same steps work, but the Quick Analysis tool may not appear—stick to the Insert tab.

Scatter Plot In Python With Matplotlib

Python’s matplotlib.pyplot library builds scatter plots with a single function call and total control over marker style, size, and color. The setup requires two arrays of equal length.

  1. Import the library: import matplotlib.pyplot as plt.
  2. Prepare your X and Y data as lists or arrays: x = [1, 2, 3, 4] and y = [2, 4, 5, 7].
  3. Call plt.scatter(x, y) to create the dots.
  4. Label axes and show the plot: plt.xlabel("Independent Variable"), plt.ylabel("Dependent Variable"), then plt.show().

For a richer look, Seaborn’s scatterplot() handles color-coding by category and regression lines out of the box: import seaborn as sns; sns.scatterplot(data=df, x='column', y='column'). Both libraries run on any OS—Windows, macOS, Linux—after a pip install matplotlib seaborn.

Scatter Plot In Tableau

Tableau builds scatter plots by dragging fields onto the Columns and Rows shelves—no menu digging required.

  1. Open a data source such as Sample – Superstore.
  2. Drag the first measure (e.g., Sales) to the Columns shelf.
  3. Drag the second measure (e.g., Profit) to the Rows shelf.
  4. To differentiate points, drag a dimension (e.g., Category) to Color on the Marks card.
  5. Drag another dimension (e.g., Region) to Detail on the Marks card to split the view further.

Tableau automatically creates the scatter plot the moment two measures hit the shelves. If the view shows nothing, check that both fields are numeric. Tableau Desktop runs on Windows and macOS; a license is required.

Quick Comparison: Excel vs. Python vs. Tableau

Platform Best For Key Requirement
Excel Quick ad-hoc plots, non-technical teams Two adjacent numeric columns
Python (Matplotlib) Full customization, reproducible research Two arrays of equal length; Python installed
Tableau Interactive dashboards, drill-down analytics Paid license; numeric fields
Sigma Cloud-based collaboration, browser only Browser; numeric columns
Power BI Enterprise reporting, Windows-native Two numeric fields plus optional legend
ArcGIS Insights Spatial data scatter plots ArcGIS subscription; number or rate/ratio fields
Seaborn Statistical plots with minimal code Pandas DataFrame; Python installed

Scatter Plot In Power BI

Power BI’s scatter chart expects three fields at minimum: two numeric values for axes and one categorical field for the legend. The Visualizations pane handles the rest.

  1. On the Data pane, select the two numeric columns and one categorical column (for point grouping).
  2. Click the Scatter chart icon in the Visualizations pane.
  3. Drag the categorical field to the Legend section if it isn’t there already.
  4. Under Properties > Advanced options, adjust the Number of data points to control plot density.

The scatter chart appears once the axis fields are populated. If data points overlap heavily, reduce opacity or jitter the points within Power BI’s formatting options.

Common Mistakes And How To Avoid Them

The most frequent errors in scatter plots destroy readability or mislead the viewer outright. The list below covers what to watch for and how to fix it.

Mistake Why It Matters The Fix
Axes reversed Reverses the causal story Place the independent variable on X
Missing axis labels Viewer cannot interpret the plot Add variable names and units (e.g., “Revenue ($)”)
Non-numeric data Produces an empty or nonsensical chart Only use number or rate/ratio field types
Overlapping dots hidden Hides data density Add transparency (alpha) or jitter
Unnecessary error bars Clutters a standard point plot Only use error bars when plotting averages

Final Checklist: Draw A Clean Scatter Plot Every Time

Whether you’re in Excel, Python, or a business intelligence tool, run through this sequence before you call the plot done:

  • Confirm both variables are numeric. If one column is text, the plot will fail or misrepresent.
  • Verify the independent variable is on the X-axis and the dependent variable on the Y-axis. Swapping them changes the interpretation.
  • Label both axes with the variable name and units. A plot with “X” and “Y” as labels is not interpretable.
  • Check for overlapping points. If many dots occupy the same spot, reduce marker opacity or jitter the points.
  • Include at least 50 data points if the goal is to spot trends or correlations. Smaller sets still show individual values but may not reveal a pattern.

Stick to these rules, and your scatter plot will serve its purpose: showing the relationship between two variables at a glance.

References & Sources

Please use a real email you check. If it's fake or mistyped, your message won't reach us and we can't reply — wrong addresses are rejected automatically.