Types of graphs do different jobs: bars compare categories, lines show change, histograms reveal spread, and scatter plots show relationships between paired numbers. Choose the graph that answers your reader’s question. A chart can use every number correctly and still hide the thing the reader needs to see.

This guide covers data visualization graphs for reports, presentations and articles. Each example uses synthetic teaching data, so the numbers explain the chart rather than claim something about a business or population. Open an example in the maker to change it.

How do you choose between types of graphs?

Choose a graph by the reader’s question, then check which relationships the available data supports.

Write that question in one sentence. “Which channel brought the most requests?” needs a comparison. “Where do response times cluster?” needs the individual response times. “Where did the budget go?” needs either spending categories or measured transfers, depending on what you mean by “go.”

Then inspect one row. Does it describe a category and its total, a date and a reading, one observation, or a transfer between two places? These structures can contain the same number of columns and still require different graphs.

Use the table to find your question. For a larger gallery of variations, see our chart examples.

Choose a chart for the question
QuestionStart withCheck first
Compare categoriesBar or columnOne measure, same unit, zero baseline
Compare a few series within groupsGrouped bars or columnsEnough room to keep the groups readable
Follow change over timeLineOrdered time points and honest spacing
Show a value holding until it changesStep lineThe value really stays constant between changes
Emphasize magnitude over timeAreaMeaningful zero and a single comparable measure
Compare totals and their partsStacked columnsUpper segments have different baselines
Split a whole into a few partsPie or donutParts are exhaustive and share one denominator
Make a share countableWaffleUnits and rounding fit the grid
See the spread of raw numbersHistogramBin width and numeric order
Show individual values in a small sampleDot plotEach dot has a stated unit
Explore two numeric variablesScatter plotA genuine numeric x scale; check renderer support
Compare values with less inkLollipopDot positions remain easy to compare
Compare before and after by categoryDumbbellTwo comparable measurements for each category
Show a lower and upper boundRangeState whether bounds are min/max or uncertainty
Connect two snapshots across groupsSlopeOnly two endpoints; name each line
Build up or reconcile a totalWaterfallState which values are changes and which are totals
Compare an actual with its goalBulletA meaningful target using the same unit
Report one headline measureBig numberUnit, period and context
Find numeric patterns in a gridHeatmapColor scale and exact values
Compare categorical statusesStatus matrixExplicit status labels and caveats
Look up exact valuesTableSorting and clear column definitions
Show parts within groupsTreemapSame unit and one valid total
Show nested parts in ringsSunburstHierarchy and a common denominator
Follow ranks across periodsBumpRanks hide absolute value gaps
Show changing composition over timeStreamgraphMoving baseline makes precise comparisons harder
Compare several distributionsRidgelineShared scale, sample size and smoothing
Follow quantities between stagesSankeyMeasured directed links and honest balancing
Figure 1 · Live — A searchable chart-choice reference. Search for your question or a chart name; on a phone, each row becomes a card.Source: Meiku Charts editorial reference; see cited visualization guidance
✎ Open in the maker

Start with the simplest form that preserves the answer. Add a second series only when the comparison needs it; add color when it identifies a group or encodes a value. The ONS chart guide uses the relationship in the data as the starting point, which is the rule we follow here.

Which graphs compare categories?

Categories are named groups, such as request channels or product lines. These types of graphs give each group one or more measurements on the same scale. Decide whether the reader needs the amount, the difference between two amounts, or an interval.

When should you use a bar graph?

A bar graph compares category values through bar lengths measured from a shared baseline starting at zero.

Horizontal bars leave room for long names. Sort them by value when the task is ranking, but preserve a meaningful order for age bands or ratings. Two bars per group can compare two series; many series quickly make the reader hunt through the legend.

Keep the zero baseline. Cutting it off exaggerates differences because the reader judges the length of the bar. Try the bar graph maker when your question is simply which group has more.

For the full construction process, follow our bar graph tutorial, from category totals to a checked, editable chart.

Tickets by channel (count)
LabelTickets
Web120
Email80
Chat60
Phone40
Figure 2 · Live — Synthetic ticket counts by channel. Horizontal bars give the category names room and put every count on the same zero baseline.Source: Synthetic teaching data; 300 invented tickets
✎ Open in the maker

When do columns read better than horizontal bars?

A column chart is a bar graph turned upright. It suits a few groups with short labels, and a short run of periods when comparing each period’s amount matters more than following the trend.

Make the bars wide enough to identify and the labels short enough to read. If category names need rotation or abbreviation, horizontal bars usually solve the problem. The column chart maker uses the same labels-and-values structure.

Tickets by channel (count)
LabelTickets
Web120
Email80
Chat60
Phone40
Figure 3 · Live — The same synthetic ticket counts as upright columns. Only the orientation changes.Source: Synthetic teaching data; 300 invented tickets
✎ Open in the maker

What does a lollipop chart change?

A lollipop chart draws a thin stem and a dot where a bar would end. The endpoint carries the value; the stem connects it to the baseline.

We use it when a small comparison feels heavy with filled bars, especially when the labels need space. It still needs a clear scale. Keep each dot large enough to see and separate overlapping series. See lollipop examples.

Tickets by channel (count)
LabelTickets
Web120
Email80
Chat60
Phone40
Figure 4 · Live — The same synthetic channel counts, drawn with dots and thin stems instead of thick bars.Source: Synthetic teaching data; 300 invented tickets
✎ Open in the maker

When does a dumbbell show the difference more clearly?

A dumbbell connects two measurements for each category. The endpoints show the values, and the connector shows their gap. It works for before and after, two groups, or two methods measured in the same unit.

Label both endpoints so direction is clear. A long connector means a large difference, but it doesn’t explain why the difference occurred. If your question needs the intervening dates, use a line instead. Our dumbbell examples show the paired layout.

Tickets before and after
LabelBeforeAfter
Web100120
Email9080
Chat4060
Phone5040
Figure 5 · Live — Synthetic channel counts before and after a change. Each row contains a paired comparison, including decreases for Email and Phone.Source: Synthetic teaching data; invented paired periods
✎ Open in the maker

When should you show a range?

A range chart shows a lower and an upper value for each category. Use it for recorded minimums and maximums, quoted intervals, or uncertainty bounds calculated by the analysis.

Say what the endpoints mean. A minimum-to-maximum interval describes observed spread; a confidence interval describes uncertainty around an estimate. Drawing both with a similar line doesn’t make them interchangeable. Our line graph examples include a range variation; label your interval precisely.

Reply-time range (minutes)
LabelMinimumMaximum
Support212
Sales315
Billing18
Returns418
Figure 6 · Live — Invented shortest and longest reply times by team. These are observed-range teaching values, not confidence intervals.Source: Synthetic teaching data; invented minimum and maximum
✎ Open in the maker

Which graphs show changes over time?

Time data has an order that carries meaning. These types of graphs preserve that sequence while emphasizing different things: every reading, just the endpoints, or the ranking at each point.

When is a line graph the right choice?

A line graph shows successive readings in order, making changes in direction easier to follow over time.

Use one line per series and label the time unit. Straight segments avoid the extra bends a smoothed line can introduce between observations.

A missing reading is a gap, not zero. Keep a row for every hour, including one with no reading, and leave its value cell empty. In a CSV paste with the header Hour,Requests, the row 10:00, keeps that hour empty and breaks the line. Omitting the row closes up the space; joining across it suggests continuity you haven’t measured.

A footbridge with a missing central section, a metaphor for leaving a missing reading visible in a line graph.
— A missing reading leaves a gap; it does not supply a zero.

For our line graph maker, use evenly spaced periods such as consecutive hours or months. If measurement dates are irregular, use a tool with a numeric or date axis that preserves their actual spacing.

Hourly requests with a missing reading
LabelRequests
08:0010
09:0020
10:00No data
11:0030
12:0040
Figure 7 · Live — Four synthetic request counts in five consecutive hourly slots. The empty 10:00 reading leaves a gap; it is not plotted as zero or joined across.Source: Synthetic teaching data; four invented readings and one missing slot
✎ Open in the maker

What does an area chart emphasize?

An area chart fills the space beneath a line. The fill gives more visual weight to magnitude, so it suits a series where the amount matters alongside its movement.

Start a standard area chart at zero. With several filled series, one area can cover another. A reader may also mistake the filled shape for a cumulative total. For close comparisons between series, plain lines are often easier to read. See area chart examples.

Monthly tickets (count)
LabelTickets
Jan240
Feb280
Mar260
Apr340
May320
Figure 8 · Live — The synthetic monthly ticket counts with area filled to zero. These are period counts, not a running cumulative total.Source: Synthetic teaching data; five invented months
✎ Open in the maker

What does a slope chart leave out?

A slope chart connects a starting value to an ending value for each group. Direction shows increase or decrease; the endpoints show how much.

Use it to compare two moments. It leaves every intervening reading out, so a smooth rise and a turbulent series can have the same slope. Use direct labels and few enough groups that the connectors remain traceable. See slope chart examples.

Tickets in January and April
LabelWebEmailChatPhone
January100904050
April120806040
Figure 9 · Live — Invented ticket counts at two points in time. Each channel is a named line joining its own endpoints.Source: Synthetic teaching data; two invented snapshots
✎ Open in the maker

When should you use a bump chart?

A bump chart tracks rank across successive periods. Each path follows a competitor or category through the ordering, so crossings show who overtook whom. Use a two-period bump chart when you have ranks at only two dates; the slope example above shows measured values instead.

Ranks conceal the size of the gap. First and second place might be almost tied or far apart; the bump chart gives them the same separation. If that difference decides the story, show the underlying values alongside it. Try the bump chart maker for a question about changing position.

Channel ranking by tickets
LabelWebEmailChat
Jan12010080
Feb11011590
Mar95110105
Apr105100115
Figure 10 · Live — Invented channel counts converted to ranks each month. First place is at the top; vertical distance shows rank, not the ticket-count gap.Source: Synthetic teaching data; invented monthly rankings
✎ Open in the maker

What should you read in a streamgraph?

A streamgraph draws several changing series as flowing layers around a shifting baseline. Read each layer’s thickness to follow its amount; read the colors to follow its identity.

The vertical position of a floating layer isn’t its value. D3’s stacking documentation describes the offsets that shift these baselines. That makes a streamgraph useful for the changing mix of a whole, but awkward for checking a particular series against a fixed level. Choose ordinary lines for that task. See the streamgraph maker.

Changing ticket mix (count)
LabelWebEmailChat
Jan402218
Feb382422
Mar322828
Apr253035
May302540
Figure 11 · Live — Invented ticket volumes by channel across five months. Layer thickness shows count; the moving baseline makes precise comparisons harder than a line chart.Source: Synthetic teaching data; invented channel-month counts
✎ Open in the maker

Which graphs show parts of a whole?

Types of graphs that show composition need a defined total. Name it and use categories that add to it without overlap. For a survey where people can choose several answers, use bars rather than slices of the respondent population.

Percentages show the mix. Add the total when readers also need to know whether the whole grew or shrank.

When does a pie or donut chart work?

A pie divides one total into slices. A donut leaves a hole in the middle but answers the same question. Use either when a few shares differ enough to identify without careful measurement.

For comparing similar shares, bars give each value a common starting point. A pie also becomes hard to read when there are many tiny slices. Use a clear legend or labels and say what the whole contains. Our pie chart maker draws the donut form used here.

Check that the values describe distinct parts of the same population and period. Percentages for several regions aren’t parts of a countrywide total simply because they share a unit. Include omitted parts in an Other slice when appropriate. Multi-answer survey percentages can count a respondent more than once, so use bars for those responses.

Share of 300 tickets
LabelTickets
Web120
Email80
Chat60
Phone40
Figure 12 · Live — The 300 synthetic tickets as parts of one whole. Meiku Charts draws its pie example as a donut.Source: Synthetic teaching data; four exhaustive channels
✎ Open in the maker

What makes a waffle chart useful?

A waffle chart divides a whole into equal squares and assigns squares to parts. It makes a share tangible without asking the reader to judge slice angles.

Say what one square stands for. If the grid represents percentages, fractional shares need rounding; don’t imply the squares are exact counts of people or objects. For a precise fraction, print the value alongside the grid. See waffle chart examples.

A 100-unit budget
LabelUnits
People60
Tools25
Space15
Figure 13 · Live — An invented 100-unit budget shown as 100 squares. Each square represents one budget unit and one percent of this particular total.Source: Synthetic teaching data; invented allocation
✎ Open in the maker

When should you stack bars or columns?

A stacked chart puts several components inside each category’s total. It answers two questions at once: how large is each total, and what makes it up?

Only the first segment shares the same starting point across categories. The middle segments move with the values beneath them, which makes comparing those components harder. Use grouped bars when their individual differences matter more than the totals. In the stacked chart examples, compare the total heights first, then inspect the components.

Ticket mix by month (count)
LabelSupportSales
Jan12040
Feb14060
Mar13070
Apr16080
Figure 14 · Live — Synthetic ticket counts split into Support and Sales. Each column shows its total; only the bottom segment shares a zero baseline.Source: Synthetic teaching data; invented team counts
✎ Open in the maker

When does a treemap fit better than slices?

A treemap nests rectangles inside parent groups. Rectangle area carries the value, and enclosure carries the hierarchy: a department can contain several projects, for example.

It puts many parts in a compact space, but similar areas are harder to compare than bar lengths, and small rectangles leave little room for labels. Use the treemap maker to show the broad composition. Use a table or bars when the reader needs to rank close values precisely.

Budget groups and items (units)
Label
Figure 15 · Live — An invented 100-unit budget with three groups and five spending items. Tile area represents an item's budget, not its importance.Source: Synthetic teaching data; invented 100-unit allocation
✎ Open in the maker
Budget input data
GroupItemBudget units
PeopleSupport35
PeopleSales25
ToolsSoftware15
ToolsEquipment10
SpaceOffice15
Figure 16 · Live — The same synthetic budget input data: each item belongs to one group.Source: Synthetic teaching data; invented 100-unit allocation
✎ Open in the maker

What does a sunburst add to the hierarchy?

A sunburst lays out a hierarchy in concentric rings. Inner segments are parents; outer segments show the children within them. Follow a segment outward to read its branch.

The ring position describes depth in the hierarchy. An outer segment has more physical area because it sits farther from the center, so don’t compare segments across rings by area alone. Name the parent groups and keep tiny branches readable. Try the sunburst maker when the path through groups is part of the question.

Budget groups and items (units)
Label
Figure 17 · Live — The same synthetic budget as concentric rings: groups inside, spending items outside. Both levels divide the same 100-unit whole.Source: Synthetic teaching data; invented 100-unit allocation
✎ Open in the maker
Budget input data
GroupItemBudget units
PeopleSupport35
PeopleSales25
ToolsSoftware15
ToolsEquipment10
SpaceOffice15
Figure 18 · Live — The same synthetic budget input data: each item belongs to one group.Source: Synthetic teaching data; invented 100-unit allocation
✎ Open in the maker

Which graphs show a distribution or a relationship?

These types of graphs use individual observations: one numeric value for a distribution, two paired values for a relationship. A distribution describes how values spread out. An average per group can’t recover that spread or the pairing once the individual observations have been discarded.

When should you use a histogram?

A histogram groups numeric observations into ordered bins and shows how many values fall inside each bin.

The horizontal axis is a number line divided into intervals. It can show a concentration of short response times and a tail of slow ones that an average hides. Bin width changes the apparent shape: broad bins smooth details away, narrow bins expose more variation.

NIST’s histogram guidance distinguishes counts from normalized density. Unequal bins require attention to area rather than just height. Our histogram maker uses equal-width bins; the histogram versus bar graph guide explains the distinction in detail.

Start with the raw measurements, one per observation, rather than a total for each label. Keep the bin boundaries in numeric order, and state the measurement unit. Try a second bin width before deciding that a small bump or gap describes a separate group.

Reply-time counts (minutes)
LabelReplies
1–44
4–78
7–103
10–131
Figure 19 · Live — Sixteen synthetic reply times in four equal-width bins of three minutes. Bins include their lower edge; only the last includes its upper edge.Source: Synthetic teaching data; 16 invented reply times
✎ Open in the maker

When is a dot plot easier to read?

A stacked dot plot shows individual numeric values on a number line. Repeated values stack above the same position, so every observation remains visible.

It works for a small sample where the reader should see clusters and exceptions without a binning decision. As the sample grows, tall stacks become crowded and a histogram becomes more practical. The dots here each stand for one observation; they aren’t category totals. Try the dot plot maker.

Individual replies (minutes)
LabelReplies
11
23
35
44
52
Figure 20 · Live — Fifteen synthetic reply times in whole minutes. Each dot is one reply; the stack over 3 contains five replies.Source: Synthetic teaching data; 15 invented reply times
✎ Open in the maker

When should you compare distributions with a ridgeline?

A ridgeline plot arranges several distribution curves in rows. An aligned row of curves helps you compare the locations of peaks and the lengths of tails across groups without the detail of individual bins. Use separate aligned histograms when the counts inside those bins are the question.

Each curve is smoothed from observations. The ggplot2 density documentation distinguishes density from count: a tall normalized peak doesn’t tell you the group has more observations. Show each group’s observation count in a label or alongside the plot. Smoothing can merge nearby peaks or expose small ones, so check the underlying data before turning a bump into a claim. Keep the same measurement scale across rows and use comparable smoothing so apparent differences come from the observations. Use the ridgeline maker to compare distributions across groups while keeping the individual observations available.

Reply-time spread (minutes)
Label
Figure 21 · Live — Ten invented reply times for each of three weekdays. Curves estimate density on a shared minute scale; ridge height is not a count of replies.Source: Synthetic teaching data; 30 invented reply times
✎ Open in the maker
Reply-time input data
WeekdayReadingMinutes
Monday12
Monday23
Monday34
Monday44
Monday55
Monday65
Monday76
Monday87
Monday98
Monday1012
Tuesday11
Tuesday22
Tuesday32
Tuesday43
Tuesday53
Tuesday64
Tuesday74
Tuesday85
Tuesday96
Tuesday108
Friday13
Friday24
Friday35
Friday46
Friday56
Friday67
Friday78
Friday89
Friday912
Friday1015
Figure 22 · Live — The same synthetic reply-time input data: every individual reading in minutes.Source: Synthetic teaching data; 30 invented reply times
✎ Open in the maker

What does a scatter plot need?

A scatter plot pairs two numeric measurements for each observation, showing association without establishing cause and effect.

One point could pair a job’s duration with its resource use. Its horizontal position is the first measurement and its vertical position the second. Preserve the pairing; sorting the columns separately creates invented observations.

NIST explicitly warns that association doesn’t establish causation. A hidden third variable can move both measurements. The example uses x values from 1 to 5 at equal intervals. For irregular x values, use a tool that preserves their actual spacing. Explore the scatter plot maker with that constraint in mind.

Read the shape before fitting a line: a curved pattern or separate clusters can be useful even when there is little straight-line association. Investigate an unusual point instead of deleting it just to tidy the chart.

Reply time vs concurrent chats
LabelReply time (minutes)
12
24
33
46
58
Figure 23 · Live — Five invented pairs: concurrent chats 1–5 on x, reply time in minutes on y. This example uses equally spaced numeric x labels because this renderer positions labels evenly; do not substitute irregular numeric x values.Source: Synthetic teaching data; five invented pairs
✎ Open in the maker

Try it with your data

Your data
LabelValue
North42
South31
East12
Live — Your data
✎ Open in the maker

Which graphs explain a total or a target?

These forms answer a narrower question than a category comparison: how the number was built, how it compares with a reference, or what the current number is.

When should you build a waterfall chart?

A waterfall shows signed contributions to a running total. A positive step adds to the balance; a negative step reduces it. The ending total explains where the steps leave you.

Use a signed waterfall for a reconciliation with additions and deductions. Our live example builds its total from positive contributions. Our maker accepts those positive contributions; for deductions, use a tool that supports signed waterfall inputs. Treat each input as a contribution rather than an independent monthly total, or the chart will add those totals together. See waterfall chart examples.

Building a 100-unit budget
LabelUnits
Base50
Grant25
Fees15
Other10
Figure 24 · Live — An invented budget built from four positive contributions, followed by its 100-unit total. This demo does not show negative deductions.Source: Synthetic teaching data; positive contributions only
✎ Open in the maker

What should a bullet chart compare?

A bullet chart places a measured value beside a reference, usually a target. The original specification by Stephen Few also describes background ranges for performance context; our example keeps the comparison to actual and target.

A target alone doesn’t establish whether a project is on track. That judgment needs the time period and expected progress by now. Label the measurement and reference in the same unit. See bullet chart examples.

Completed tickets vs goal
LabelCompletedGoal
Support7480
Sales9185
Billing9699
Figure 25 · Live — Synthetic completed tickets against each team's invented goal. The second series supplies one target per row.Source: Synthetic teaching data; invented team goals
✎ Open in the maker

When is a large number enough?

A number display makes one metric easy to find. It suits a dashboard’s headline count or current reading, when that single value is the reader’s first task.

Give it a unit, a period and a definition. “Requests this week” answers more than an isolated number. If the reader needs to know whether the reading rose or fell, supply a comparison or a trend nearby. See number display examples.

Total tickets (count)
LabelTotal
Tickets300
Figure 26 · Live — One number: the sum of the synthetic ticket counts, 300. It does not retain the channel breakdown.Source: Synthetic teaching data; channel counts summed
✎ Open in the maker

When should you use color, statuses or a table?

Some readers need the pattern across a grid. Others need to locate one row and read its exact entry. Choose for that task before replacing the cells with shapes.

When does a heatmap reveal a pattern?

A heatmap turns numeric values in a grid into color. It fits a question about busy days across teams or high and low values across many combinations.

Color makes broad clusters visible but doesn’t carry exact values as clearly as labels. Explain the scale, keep comparable grids on the same range, and avoid assuming a reader can distinguish every shade. See heatmap examples.

Tickets by team and day
LabelSupportSalesBilling
Mon12821
Tue30159
Wed182214
Thu44196
Fri273511
Figure 27 · Live — Invented ticket counts in a team-by-day grid. Darker cells carry larger counts; the displayed numbers retain the exact values.Source: Synthetic teaching data; invented team-day counts
✎ Open in the maker

When should a grid show statuses instead of quantities?

A status matrix shows states such as yes, no, partial or unknown across items and criteria. An unknown result means evidence is missing; it shouldn’t silently become no.

Text labels and notes explain states more clearly than color alone. The live table below uses status cells for the same lookup task, with room for a condition behind a partial result. See status matrix examples for the compact grid form.

An invented feature matrix
PlanExportSharingHistory
Basicyesnono
PlusyesyesPartial [This fictional plan retains only its ten latest edits.]
Teamyesyesyes
Figure 28 · Live — An invented feature comparison rendered as a live status table. Yes, No and Partial remain explicit; the Partial cell has an expandable explanation.Source: Synthetic teaching data; fictional plans and features
✎ Open in the maker

When is a live table the best choice?

A table suits exact lookup, mixed units and notes that don’t fit a chart. A reader checking one item can find its row and read the value directly.

Sort comparable values, search for a name, and keep the units in the headings. You can show a chart beside the table if the pattern also matters. The table maker keeps the structure editable, including statuses and explanations.

For a complete mixed-data example, our comparison chart guide builds a venue table, checks an access condition and compares the same costs as bars.

Exact ticket counts
ChannelTickets
Web120
Email80
Chat60
Phone40
Figure 29 · Live — The synthetic channel counts as a live table. Select Tickets to sort; exact counts remain visible alongside the labels.Source: Synthetic teaching data; 300 invented tickets
✎ Open in the maker

When does a Sankey diagram fit your data?

A Sankey diagram shows measured flows between named stages, with link widths proportional to their recorded amounts.

Each link needs a source, a destination and an amount. A budget can enter a central pot and leave through spending categories; a process can route counted items through several stages. Use a consistent unit so the widths mean the same thing throughout. The D3 Sankey documentation defines links with these source, target and value fields.

Water routed through branching irrigation channels to garden beds, a metaphor for measured flows in a Sankey diagram.
— A flow needs a source, a destination and a measured amount.

A connection isn’t automatically a flow. Two categories appearing together, a correlation between measurements, or a change between two years doesn’t tell you that anything moved between them. If the dataset doesn’t identify transfers, use a comparison or relationship chart.

For a measured flow, try the Sankey maker. Label losses, gains or unrecorded amounts when stages don’t balance; silently filling the gap invents data.

Where the budget flows (units)
Label
Figure 30 · Live — An invented 100-unit budget flowing from two funding sources through the budget to three destinations. All inflows and outflows balance.Source: Synthetic teaching data; invented balanced flows
✎ Open in the maker
Flow input data
SourceDestinationBudget units
FeesBudget70
GrantBudget30
BudgetPeople60
BudgetTools25
BudgetSpace15
Figure 31 · Live — The same synthetic flow input data: source, destination and budget units for each link.Source: Synthetic teaching data; invented balanced flows
✎ Open in the maker

What should you check before sharing a graph?

Read the chart as someone who hasn’t seen the spreadsheet. Can they tell what each mark measures, the unit, the time period and the population or total it refers to? Put those details in the title, labels or source line.

Then test the likely wrong reading. Does a missing value look like zero? Does a rank look like a measured gap? Could a percentage increase hide a shrinking total? Is the range an observed minimum and maximum or uncertainty around an estimate? Fix the label or switch the form before asking the reader to infer the answer.

How can you try a different graph on the same data?

Use Open in the maker directly below a figure to load that example’s data. The maker links inside the prose open a general starting point instead. In Chart Studio, inspect the rows under Data. To keep a copy with its labels and settings, choose Export, then Chart spec, then Download JSON. Choose Image for PNG or SVG, or Embed for a live chart. The table maker has its own Download JSON and Copy embed controls.

These are invented teaching values. The Sources at the bottom support the chart-reading guidance, not the example numbers.

Start with the small category comparison below, then open it in the chart maker. Try horizontal bars and columns, change a value, and check which labels are easiest to read. A type switch can redraw the same data, but the data still has to support the new question.

Try it with your data

Your data
LabelTickets
Web120
Email80
Chat60
Phone40
Live — Your data
✎ Open in the maker

If your numbers are already in a spreadsheet, our Google Sheets guide explains the data layout and the common fixes before you share the chart.

For a report in Docs, use our Google Docs chart guide to choose between a linked chart and a PNG.