Box Plot Maker
Make box plots from numbers or grouped CSV, with clear quartiles and data exports.
This tool processes its input contents in your browser instead of sending them to a processing service. Page, asset and fixed usage-measurement requests are described on the Privacy page.
Compare numeric distributions with explicit type-7 quartiles, observed whisker endpoints and a traceable outlier audit.
How to use it
- 1Paste a number list or open a CSV and select its numeric column.
- 2Optionally select a group column to compare up to eight exact group names.
- 3Create the box plot and review quartiles, whiskers and possible outliers.
- 4Download a local chart, complete observation CSV or analysis JSON.
Example
- Input
- 1, 2, 3, 4, 5, 20
- Output
- Q1 2.25; median 3.5; Q3 4.75; whiskers 1–5; 20 flagged.
The flag does not remove a value or prove it is wrong. All six records remain available.
What happens to your data
Numeric observations and group names remain in this tab. SVG/PNG and complete source-record exports are created locally; optional workflow measurements exclude datasets and filenames.
Last updated November 2026
A box plot shows a dataset's middle half, median and spread, with possible outliers kept visible instead of silently removed. Paste a number list for one dataset, or open CSV and choose a numeric column plus an optional group column to compare up to eight groups on the same scale. The chart is calculated in your browser and comes with a table of the values behind it.
Keep the result as SVG or PNG for a report, summary CSV for a comparison table, or observation CSV / JSON when you need every original source record. This page uses one named quartile convention so a difference from another application can be explained rather than hidden.
How it works
For each group, values are sorted and quartiles use the type-7 interpolation convention: position = (n−1)p in a zero-based ordered list. Q1 uses p=0.25, the median p=0.5 and Q3 p=0.75. The interquartile range is IQR = Q3−Q1. The lower fence is Q1−1.5×IQR and the upper fence Q3+1.5×IQR. Whiskers end at the smallest and largest actual observations inside or exactly on these fences. A whisker is therefore an observed value, not the fence itself. Values strictly outside the fences are flagged as possible outliers.
An outlier flag is a descriptive rule, not proof that a measurement is wrong, fraudulent, normally distributed or safe to discard. Every accepted value remains in the analysis and observation exports. At most the first 100 flagged observations per group are drawn as amber dots, in source order. Overlapping equal-valued points may look like one dot. The table and downloads retain the full count and all records. Group boxes have equal visual height; they do not scale by sample size. All groups share the full observed numeric range, including outliers.
With one observation, all quartiles and whiskers coincide. If IQR is zero, any value unequal to that quartile lies outside the zero-width fences; the rule still applies. If every value in the whole chart is equal, the display adds a small surrounding axis range so the central line is visible without changing the computed statistics. Type-7 interpolation can differ from Tukey hinges, median-of-halves rules and spreadsheet box-chart defaults. This tool does not claim to duplicate every application's quartile settings.
Lists accept decimal-point numbers or e notation separated by commas or whitespace. In list mode, 1,234 means two observations, 1 and 234; enter 1234 without a grouping mark for one thousand two hundred thirty-four. Blank comma-separated entries are rejected. Nonzero magnitudes must be from 1e−100 to 1e100, with at most 200 characters per token. Expressions, units, NaN, Infinity and decimal spellings that would lose normalized input digits at browser precision are rejected. Binary64 calculations remain approximate; accepting 0.1 does not make its stored binary representation exact.
Text and files are limited to 1 MiB; at most 10,000 accepted observations across eight groups are supported. CSV requires unique nonblank headers, consistent field counts and an explicitly chosen comma, semicolon or tab separator. Its shared parser also caps 200 columns, 10,000 records including the header and 200,000 cells. Choose one numeric column and a different optional group column. Group names must be nonblank, contain no control characters and have at most 80 Unicode characters. Names are matched exactly, including surrounding spaces, and groups keep first-seen order. A missing numeric cell either rejects the calculation with its source record number or is omitted under your explicit policy. Invalid nonblank numbers are always rejected. Omitted records are counted.
SVG uses escaped text, fixed drawing instructions and bounded finite coordinates, with no script or external resource. Chart labels may shorten long group names; full names remain in the table and exports. PNG is 2000 pixels wide, with height determined by the number of groups. Summary CSV retains statistics; observation CSV retains every group's source record, value and outlier flag. Formula-like group names are prefixed with an apostrophe in CSV for spreadsheet safety; JSON preserves their original text. JSON deliberately includes the accepted data, so review it before sharing. Inputs stay in tab memory and are not uploaded or put in the URL. Editing clears stale charts and exports, and Clear removes current data. Optional anonymous workflow measurement contains fixed task/outcome labels, never values, group names or filenames.
Worked example: Keep the unusual observation visible
- Input
- 1, 2, 3, 4, 5, 20
- Result
- Q1 2.25; median 3.5; Q3 4.75; IQR 2.5; fences −1.5 to 8.5; whiskers 1 to 5; 20 flagged as a possible outlier.
All six observations remain in the result. The method is type-7 interpolation with inclusive 1.5×IQR whiskers.
Common use cases
- Compare distributions of several labelled samples on one consistent scale.
- Prepare a box-and-whisker chart with a checkable table for a report.
- Trace possible outliers to their original CSV record without deleting them.
- Explain why two applications disagree when they use different quartile conventions.
Frequently asked questions
Which quartile method does this box plot use?+
Type-7 linear interpolation at position (n−1)p in the sorted data. It is explicitly named in the chart and report. Other software may use Tukey hinges or median-of-halves and produce different quartiles.
Are the whiskers the same as the fences?+
No. Fences are Q1−1.5×IQR and Q3+1.5×IQR. Whiskers end at actual observations within or exactly on those fences. Values strictly outside are flagged as possible outliers.
Does the tool remove possible outliers?+
No. Every accepted observation remains in calculations and exports. The chart draws up to the first 100 possible outliers per group; observation CSV and JSON include all of them.
How do I compare several groups?+
Use CSV with a header row, select the numeric column and a different group column. Up to eight exact group names and 10,000 observations are accepted. Groups use one common numeric axis.
Why can an IQR of zero still produce outliers?+
When Q1=Q3, both fences equal that value. Under the chosen rule any different observation is outside the fences. This is a consequence of the rule, not a finding that the observation is erroneous.
Related tools
Histogram Maker
Make a histogram from numbers or a CSV column. Export charts and audited bin counts.
Standard Deviation Calculator
Analyze a list or CSV column with sample/population spread, quartiles, outlier flags and exports.
Weighted Average Calculator
Calculate a weighted mean from value–weight pairs, with normalized shares and CSV reports.
CSV Data Profile
Inspect CSV column counts, empties, distinct values and duplicate rows locally; export a JSON profile.