Scatter Plot Generator — Chart Data Online

A scatter plot is the most direct way to show how two numeric variables move together, and building one should not require a spreadsheet, a statistics package or a plotting library. Paste your x,y pairs into the data box and the chart redraws as you type, with each marker positioned from the two numbers you supplied and axis ticks scaled automatically to your data. The input is deliberately forgiving: a pair can be written as 3,5 or 3:5 or with a tab between the numbers, and pairs can be separated by newlines, spaces or semicolons, so you can paste a list straight out of a spreadsheet or a column copied from a table. Anything that cannot be parsed as two numbers is skipped and listed back to you as unreadable rather than silently discarded. When your data follows a roughly straight pattern, the Trend line checkbox draws an ordinary least squares fit across the chart, and the table underneath reports the slope, the intercept and the R² value so you can state the relationship numerically as well as seeing it. The X axis label and Y axis label inputs set the axis captions, and the Point size slider scales the markers from 2 to 14 pixels so that a handful of points remain legible and a few thousand stay readable as a density. Everything runs client-side in the browser with no upload, so data on a client laptop never has to leave the machine, and the Download SVG button writes a standalone vector file you can drop into a report, a slide deck or a paper.

Scatter Plot Generator

0.412.554.596.512.98.616.9(1, 2.1)(2, 3.9)(3, 6.2)(4, 7.8)(5, 10.1)(6, 11.9)(7, 14.2)(8, 15.8)xy
Points plotted8
Slope1.986
Intercept0.064
R² (coefficient of determination)0.9988

The trend line is an ordinary least squares fit, and R² is the proportion of the variance in y that the line explains. R² near 1 means the points sit almost on the line; R² near 0 means the line explains little and a different relationship is probably at work. A high R² still does not establish causation.

What Is

A scatter plot places one marker per observation at the coordinate formed by two measured variables. The horizontal axis conventionally carries the independent or explanatory variable, the one you control or believe drives the relationship, and the vertical axis carries the dependent variable, the outcome you are trying to explain. That convention matters, because the choice of which variable goes where determines the meaning of the picture: a strong upward cloud plotted as dose against response tells you that more dose goes with more response, while the same data plotted in reverse says only that the response increases when the dose decreases. Reading shape is reading relationship. A tight ascending cloud is a strong positive association, a descending one is a strong negative association, a shapeless blob is little or no linear association, and recognisable curves or funnels indicate that a straight line is the wrong model.

No scatter plot on its own establishes causation, and this is the single most abused idea in the genre. Two variables can share a trend because one causes the other, because both are caused by a third, because one causes the other in only some circumstances, or purely by coincidence in a sample that happened to be drawn that way. The trend line offered here is an ordinary least squares fit, which finds the single straight line y equals slope times x plus intercept that minimises the total vertical squared distance between the line and the points. The slope is the average change in y per unit change in x, and the intercept is the fitted value of y when x is zero, which is only meaningful if zero is actually inside the range of your x data. R², the coefficient of determination, is the proportion of the total variance in y that the line accounts for: it equals one minus the residual sum of squares divided by the total sum of squares around the mean.

An R² of 0.99 means the line explains ninety-nine per cent of the observed spread in y, so the remaining one per cent is what you have not modelled. An R² near zero means the line explains almost nothing and a different form of relationship, or simply noise, is the better description. Crucially, R² is always non-negative and always rises when you add predictors, so a large R² is evidence of a strong linear association and never by itself evidence of a causal mechanism.

How to Use

  1. Type or paste your data into the large text area, one x,y pair per line. Pairs may also be separated by spaces or semicolons, and the two numbers may be split by a comma, a colon or a tab.
  2. Check the red Skipped as unreadable message under the box. Anything that could not be parsed as two finite numbers is named there, so a typo never disappears quietly.
  3. Type your variable names into the X axis label and Y axis label inputs so the chart identifies the explanatory and dependent variables instead of showing bare x and y.
  4. Leave the Trend line checkbox ticked to fit an ordinary least squares line across the cloud, or untick it to see the raw distribution with no model imposed on it.
  5. Drag the Point size slider between 2 and 14 to suit your density. Small markers suit dense datasets where overlap carries the information; large markers suit a handful of points.
  6. Read the table under the chart for Points plotted, then Slope, Intercept and R². Hover any marker to see its exact coordinate, which is useful when points sit close together.
  7. If every x value is identical the fit cannot be computed and the statistics rows disappear, because no straight line can explain a variable that never varies.
  8. Click Download SVG to save a standalone vector copy of the chart with your axis labels baked in, ready to embed in a document.

Examples

Input: The 8-point sample dataset shipped in the tool (1, 2.1) through (8, 15.8)

Process:

Ordinary least squares: slope = (nΣxy − ΣxΣy) / (nΣxx − (Σx)²) = (8x407.4 − 36x72) / (8x204 − 36²); R² = 1 − SSres / SStot

Result: 8 points plotted, slope 1.986, intercept 0.064, R² 0.9988 — the points sit almost exactly on the line

Input: A noisier 6-point series: 1,4 2,7 3,5 4,9 5,6 6,11

Process:

slope = (6x165 − 21x42) / (6x91 − 21²) = 1.029; SStot = 34, SSres = 15.486, so R² = 1 − 15.486/34

Result: 6 points plotted, slope 1.029, intercept 3.4, R² 0.5445 — a real trend, but most of the spread is left over

Input: Four points whose x never changes: 5,10 5,12 5,11 5,9

Process:

nΣxx − (Σx)² = 4x100 − 20² = 0, so the denominator is zero and no line can be fitted

Result: 4 points plotted, no trend line drawn, slope/intercept/R² rows hidden — the explanatory variable never varied

Input: Mixed entry with a typo: 1,2 oops 3,5.5 4,4 5,9

Process:

The token 'oops' has no second number, so it is reported as unreadable and the remaining four pairs are fitted normally

Result: 4 points plotted, unreadable: oops, slope 1.471, intercept 0.343, R² 0.7234

Related Searches

People also search for: scatter plot, scatter plot generator, make a scatter plot, correlation, trend line, line of best fit.

scatter plotscatter plot generatormake a scatter plotcorrelationtrend lineline of best fitleast squares regressionr squaredcoefficient of determinationcorrelation coefficientdata visualisationstatistical chartx and y variablesregression linechart data onlineno install chartinteractive scatter chartexport chart svg

Frequently Asked Questions

What does R² actually mean, and what is a good value?

R² is the proportion of the total variance in y that the fitted line accounts for, computed as one minus the residual sum of squares divided by the total sum of squares around the mean. An R² of 0.95 means the line explains ninety-five per cent of the observed spread in y and leaves five per cent unexplained. There is no universal threshold: a physics simulation may legitimately sit at 0.999 while noisy social data at 0.3 is still a meaningful finding. Judge it against how much residual scatter the subject matter should produce.

Does a high R² prove that one variable causes the other?

No, and this is the most common misreading of a scatter plot. A tight line with an R² of 0.99 is entirely compatible with a shared third variable driving both, with causation running in the opposite direction, or with causation that only holds under conditions your sample never tested. Correlation is a necessary but nowhere near sufficient condition for causation. Establishing cause requires a design argument, such as random assignment or a credible natural experiment, not a fitted line through a cloud of dots.

What do the slope and intercept mean in plain terms?

The slope is the average change in y associated with a one unit change in x, so a slope of 1.986 means each additional unit of x goes with roughly two extra units of y on average across your data. The intercept is where the fitted line crosses y equals zero, so an intercept of 0.064 means the model predicts y near zero when x is zero. Only trust the intercept if x equals zero actually falls inside your observed range of x; outside it, the line is an extrapolation and the intercept is an artefact of the model rather than an observation.

Why do my slope, intercept and R² rows sometimes disappear?

Two situations produce no fit. First, you need at least two distinct points; a single data point cannot define a line. Second, the x values must vary. If every x is identical the denominator of the least squares formula is zero, and mathematically no slope can be chosen that passes meaningfully through points with no horizontal spread. In that case the chart still draws and still reports the number of points plotted, which is exactly the diagnostic you want, because it tells you the variable you meant to plot never actually changed.

What input formats does the data box accept?

Several. Within a pair you can separate x and y with a comma, a colon or a tab, and between pairs you can use newlines, spaces or semicolons, since any run of whitespace or semicolons counts as a pair boundary. That means a single line like 1 2, 3 4; 5 6 pastes correctly. Negative numbers, decimals and scientific notation all work, but a pair with only one number, or a token containing letters, is rejected and listed back under the unreadable message rather than being coerced into a misleading zero.

Why are my exported charts different from the ones I designed elsewhere?

The Download SVG button writes a self-contained vector file containing the marker circles, the trend line where enabled, and your axis label captions. It does not reproduce grid lines, tick numbers, colours or fonts from other tools, because the exported file is deliberately minimal and portable. It is built to be dropped into a report, a slide or a publication figure and to scale without blurring, which is why the axis captions are baked in as real text rather than left behind on screen.

Is my data uploaded anywhere?

No. Parsing, plotting and the least squares fit all happen client-side in your browser, and nothing is sent to a server or stored after you close the tab. That makes the tool safe for incomplete, confidential or unpublished experimental data, and it also means the page keeps working on an offline machine once it has loaded.

Related Tools

Pie Chart Maker

Create stunning pie charts instantly with our free online Pie Chart Maker. Enter your data labels and values to generate fully customizable pie charts with vibrant colors, percentage labels, and a legend. Ideal for displaying proportions, market shares, survey results, survey demographics, budget allocations, or any part-to-whole relationships. The tool renders crisp SVG graphics that scale perfectly to any size — embed in presentations, export for reports, or share directly. All processing happens in your browser for complete privacy.

Bar Graph Generator

Generate professional bar graphs instantly with our free online Bar Graph Generator. Compare categorical data using vertical or horizontal bars with customizable colors, spacing, and labels. Perfect for sales comparisons, survey results, population statistics, performance metrics, and any side-by-side data comparison. The tool produces clean SVG charts that embed seamlessly into reports, dashboards, or presentations. All data stays in your browser — nothing is uploaded to any server.

Line Chart Creator

Create elegant line charts instantly with our free online Line Chart Creator. Plot data points and connect them with lines to reveal trends, patterns, and changes over time. Support for multiple data series, smooth curves, markers, and filled areas makes this tool ideal for financial tracking, scientific data, weather patterns, website analytics, and performance monitoring. SVG rendering ensures your charts look sharp at any size on screen or in print.

Histogram Generator

Generate histograms instantly with our free online Histogram Generator. Visualize the frequency distribution of your continuous data by grouping values into bins. Ideal for statistical analysis, quality control, test scores, income distributions, measurement data, and any dataset where understanding the shape of the distribution matters. The tool automatically calculates optimal bin ranges using Sturges' rule or lets you set custom bin widths for full control.

Bubble Chart Maker

Create insightful bubble charts instantly with our free online Bubble Chart Maker. Visualize three dimensions of data using x-position, y-position, and bubble size to reveal relationships and patterns. Ideal for market analysis, portfolio comparisons, demographic studies, scientific research, and any scenario where you need to compare entities across multiple metrics. SVG rendering ensures crisp, scalable output for presentations and reports.

Area Chart Builder

Build beautiful area charts instantly with our free online Area Chart Builder. Visualize cumulative data and part-to-whole relationships over time using stacked or overlapping area fills. Perfect for revenue breakdowns, population composition, resource allocation, market share evolution, and any time-series data where both individual and total trends matter. SVG rendering delivers crisp, scalable charts for dashboards and reports.

Popular Tools

EMI Calculator

Planning to take a home loan, car loan, or personal loan and wondering what your monthly payment will look like? Our...

BMI Calculator

Ever stepped on a scale and wondered what that number actually means for your health? Our BMI calculator takes the gu...

Body Fat Calculator

Have you ever felt like the scale does not tell the whole story? You can weigh the same as someone else but look comp...

CAGR Calculator

When you invest in stocks, mutual funds, or any market-linked asset, one number tells you the real story of how your...

Unit Converter

From cooking to construction, from science to shopping, unit conversion is one of those things you need all the time...

Age Calculator

Figuring out someone's exact age isn't as simple as subtracting birth year from current year. Leap years, different m...

JSON Formatter

Format, beautify, and validate JSON data instantly with our free online tool. Paste raw JSON to get a properly indent...

QR Code Generator

Need a professional QR code for your website, business card, event, product packaging, or marketing campaign? Our fre...

Salary Calculator

Understanding your true take-home pay is essential for budgeting, planning, and making smart career decisions, yet mo...

Tip Calculator

Dining out, getting a haircut, taking a taxi, or receiving any kind of personal service often comes with the question...

Word Counter

Need an accurate word count for your essay, article, or document? This word counter gives you instant, precise counts...

Color Code Converter

Color Code Converter is a free online tool that instantly converts color values between different formats used in web...