A Line Graph with Multiple Lines That People Can Actually Read

How to build a line graph with multiple lines that stays readable: one column per series, how many lines is too many, labels instead of legends, and what to do when scales differ.

Published Oct 29, 20264 min read

A line graph with multiple lines can compare several series over the same time points. Arrange one column per series, use clear names and check whether overlapping lines are still easy to trace at the size you will publish. If the chart is crowded, split the comparison into smaller views.

Lay the data out wide, not long

The shape that charting tools expect is simple: the first column holds the time steps, and every other column is one line. So the header row reads Month, North, South, East, West, and each row below is one month with four numbers. The column headers become the series names, which means it is worth naming them the way you want them to appear on the chart, not "rev_n_q" or "Sheet1 (2)".

If your sheet is in the long format instead, with one row per month per region, it needs pivoting before it goes in. Every column also needs a value in every row; a blank in the middle of one series leaves the reader guessing whether it was zero or missing, so decide how to handle it before import. The simple paste parser treats a blank numeric cell as zero; do not use a blank to represent an unknown value. Sort time rows first, because dates are displayed as equally spaced category labels.

How many lines before it turns into spaghetti

There is no hard rule, but somewhere around four or five lines most charts stop being readable at a glance. Additional lines can make crossings and overlaps harder to follow; the result depends on the data and display size. The test is easy: pick any line in the middle of the pack and try to trace it without your finger. If you can't, simplify the chart before asking readers to do the same.

When you have eight or ten series, ask what the chart is for. If it is "how did we do compared with everyone else", you probably need one line in focus and the rest as context. If it is "how did each of these behave", you probably need several small charts rather than one crowded one.

Colour, labels and the legend problem in a line graph with multiple lines

A legend forces a round trip: look at the line, look down at the key, look back. With two lines that is fine. With more lines, matching them to the key becomes slower. Where you can, write the series name at the right-hand end of each line, in the line's colour, so the label sits exactly where the eye already is.

Colour should do one job, telling lines apart, and it does that best with clearly distinct hues of similar weight. Avoid putting two shades of the same blue next to each other, and avoid red and green as the only distinction, since a fair share of readers can't separate them.

Highlight one, grey the rest

Often the honest message is about one series. Your product against the market, this year against previous years, one store against the chain. In that case, draw the line you care about in a strong colour and a slightly heavier stroke, and make every other line a light grey. The grey lines still give the range and the general direction, but they stop competing. The title can then say what to notice, such as "Online grew while every store channel flattened".

Series on very different scales

Say one line is revenue in millions and another is conversion rate around 3%. On a shared axis the small one becomes a flat line along the bottom. The usual fix people reach for is a second y-axis on the right, but it needs careful explanation: where the two lines cross depends entirely on how each axis was scaled, so readers see relationships that are just artefacts of the chart.

Two better options. Split them into two charts stacked one above the other with the same time axis, so each gets its own honest scale. Or, if what matters is relative change, index every series to 100 at the starting point (divide each value by the first value and multiply by 100). For a positive, nonzero starting value, a line at 130 means up 30% since the start. Do not use this interpretation with a zero or negative baseline. The chart maker does not calculate the index; prepare it in the spreadsheet.

Small multiples as the alternative

Small multiples are a grid of little charts, one per series, all with the same axes. Nothing overlaps, every line is easy to follow, and because the scales match, the eye compares shapes across panels quickly. They work especially well for six to twelve series, which is exactly where a single chart breaks down. If you build them by hand, keep the y-axis identical across panels, or the comparison quietly stops being fair.

In the line graph maker you paste the wide table and each value column becomes its own line, with colours from the chosen palette and a legend under the chart. For separate charts, paste one series at a time with the same time column. Each chart auto-scales its y-axis; the tool has no shared-range control. To compare levels across panels, use an editor that lets you set identical ranges rather than simply lining up these downloads.

What this can't do yet

The line graph maker draws one line per value column from data you paste and shows a legend under the chart; it does not place series names at the end of each line, grey out individual lines, index series to 100, add a second y-axis or lay out small multiples, so those steps happen in your spreadsheet or in the downloaded SVG. The Add series control stops at six series, and each palette has six colours. Separately exported charts auto-scale their axes, with no shared-range control. There are no scatter, radar, bubble, gauge or heatmap chart types — only bar, horizontal bar, line, area, pie and donut. Each chart is made in the browser, and there is no server-side batch chart generation API.

Frequently asked questions

How should I arrange data for a line graph with several lines?

Put the time steps in the first column and give each series its own column, with the header as the series name. Each row is then one point in time with one value per line.

How many lines are too many on one line graph?

Around four or five is where most charts stop being readable at a glance. With more series, highlight one and grey the rest, or switch to small multiples.

Should I use a second y-axis when lines have different units?

Usually not. The crossing points on a dual-axis chart depend on how each axis was scaled, so they suggest relationships that are not real. Split the chart in two or index each series to 100 instead.

What does indexing a series to 100 mean?

With a positive, nonzero baseline, divide each value by the starting value and multiply by 100. An index of 120 then means 20% above the start. Prepare this calculation before pasting; zero and negative baselines need different treatment.

What are small multiples and when should I use them?

Small multiples are a grid of small charts, one per series, sharing the same axes. Use them when you have more lines than a single chart can hold without tangling, typically six or more.

Keep reading