How to make a frequency polygon
- Paste your raw numbers, or switch to “Frequency table” on the Data tab and enter classes with frequencies.
- Check the classes in the Bins tab; a width like 5 or 10 gives clean midpoints.
- Add a title and axis labels. Switch on “Show bars” in the Design tab if you also want the histogram.
- Download the graph as PNG, JPG, SVG or PDF.
How a frequency polygon is drawn by hand
- Find the midpoint of each class: (lower boundary + upper boundary) ÷ 2. For 40–50 that is 45.
- Plot a point above each midpoint at a height equal to the class frequency.
- Join the points with straight lines.
- Close the polygon by adding a point with frequency 0 half a class width beyond each end, so the shape sits on the x-axis. (This tool brings the line down to zero at the outer edges of the first and last classes.)
| Class | Midpoint | Frequency |
|---|---|---|
| 40–50 | 45 | 3 |
| 50–60 | 55 | 8 |
| 60–70 | 65 | 14 |
| 70–80 | 75 | 9 |
| 80–90 | 85 | 4 |
The points to plot are (45, 3), (55, 8), (65, 14), (75, 9) and (85, 4).
Why use a frequency polygon?
- Comparing distributions. Two or three overlapping lines are far easier to read than overlapping bars. Click “Add data set” to plot several groups on the same classes.
- Seeing the overall shape. The line makes peaks, skew and multiple modes stand out.
- Relative frequency polygons. Switch the y-axis to Percent in the Bins tab to compare groups of different sizes.
Need running totals instead? Use the ogive maker. Prefer bars? Go back to the histogram maker.
Worked example: comparing two classes
Suppose two classes take the same test. Plotted as two polygons on the same classes, Class A peaks at 60–70 and Class B at 70–80. The horizontal shift between the peaks shows Class B scored about 10 points higher, and the width of each polygon shows which class was more consistent. The same comparison with overlapping bars would be much harder to read.
Common mistakes to avoid
- Plotting points at class limits instead of midpoints. Each point sits above the midpoint of its class.
- Leaving the polygon floating. Close it by returning to zero at both ends.
- Joining points with a smooth curve. A frequency polygon uses straight segments. A smooth curve suggests a fitted model.
Do it in other software
| Software | How |
|---|---|
| Excel | Compute class midpoints and frequencies, then insert a Scatter chart with straight lines and markers. |
| Python | counts, edges = np.histogram(data, bins); plt.plot((edges[:-1] + edges[1:]) / 2, counts, marker="o") |
Related tools: Histogram Maker, Ogive Maker, Histogram from a Frequency Table, Frequency Distribution Table Maker and Relative Frequency Histogram.