Bar Graph Examples: 20+ Real-World Charts to Learn From
A curated gallery of 20+ real-world bar chart examples across five domains, each analyzed for what it does well and where it could improve.
Bar charts show up everywhere: board decks, journal articles, classroom handouts, front-page journalism. The same format can be brilliant or completely misleading, and it usually comes down to a handful of decisions. This collection is organized by domain because context shapes those decisions. A business ranking chart follows different conventions than a climate anomaly chart, and both differ from a survey results chart.
A bar graph is a chart that uses rectangular bars to encode values: taller or longer bar, bigger number. That simplicity is why it's one of the most widely used formats in data visualization, from business dashboards to published research. "Bar graph" and "bar chart" mean the same thing.
Each example comes with a description of what the chart is doing, what it does well, and what could be better. It's not a grading exercise. The point is to make the thinking visible, so you understand why a choice works rather than just copying a style. If you want to try any of these yourself, the free bar graph maker at BarGraphCreator doesn't require an account, and the how to make a bar graph guide has the step-by-step.
Business and Finance
Business charts have one job: make the comparison fast. They live in dashboards, sales reports, and slide decks where nobody's stopping to do math. For sales-specific formatting, the bar charts for sales reports guide goes deeper. Investor presentations have their own set of rules, covered in the investor deck bar chart guide.
Grouped vertical bar chart. Illustrative data only.
Example 01 · Business & Finance
Quarterly Revenue by Region
Grouped vertical bars work well here because you're tracking two things at once: how each region performed within each quarter, and how both regions trended over the year. Time runs left to right naturally, and the side-by-side bars answer the regional comparison without any extra work.
Does wellYou get two comparisons in one chart without it feeling cluttered. North vs. South is instant, and the trend across quarters is easy to follow.
Could improveA reference line at the annual target would make every bar mean something beyond just "more or less than last quarter."
Department Spending ($000s)
Marketing
Budget
$820
Actual
$960
Operations
Budget
$700
Actual
$670
R&D
Budget
$550
Actual
$580
Budget
Actual
Illustrative data only
Example 02 · Business & Finance
Monthly Budget vs. Actual Spend
Horizontal works here because department names are long and rotated x-axis labels are a pain to read. The paired bars do something nice: you don't need to study the legend. A longer "actual" bar is an overrun. A shorter one is underspend. Done.
Does wellThe pairing is self-explanatory, which is the whole point. Labels stay horizontal and readable.
Could improveColor is doing all the work between budget and actual. Add a pattern fill or a second visual cue so it holds up for colorblind readers.
Annual Revenue by Product (Sorted Descending)
Product Alpha
$9.5M
Product Beta
$8.2M
Product Gamma
$7.3M
Product Delta
$6.2M
Product Epsilon
$5.1M
Illustrative data only
Example 03 · Business & Finance
Top Products by Revenue
When you want the ranking to be obvious without any work, this is the format. Sort descending, best-seller at the top. Horizontal bars keep consistent widths so the length comparison holds up row to row.
Does wellRank is obvious at a glance. One color, no distractions, the data does the talking.
Could improveAdd the actual number next to each bar. Tracing back to the axis is annoying and completely avoidable.
Sales by Category: This Year vs. Last Year
Hardware
Last year
$5.8M
This year
$7.2M
Software
Last year
$4.5M
This year
$6.4M
Services
Last year
$3.8M
This year
$4.1M
Last year
This year
Illustrative data only
Example 04 · Business & Finance
Year-over-Year Sales by Category
Two bars per category, this year and last year, sitting right next to each other. Growth or decline is obvious without any math. Muting the prior-year bar is a good call: it keeps focus on what's current while keeping the comparison intact.
Does wellThe before-and-after is readable within each group. Weighting the color toward the current year makes it clear which number is the one that matters.
Could improveIf readers care more about how much things changed percentage-wise than what the totals are, a dedicated change chart would say it more clearly.
Quarterly Revenue Growth Rate (%)
Q1
Q2
Q3
Q4
Decline
Growth
Illustrative data only
Example 05 · Business & Finance
Revenue Growth Rate by Quarter
Standard bars look strange with negative growth: the bar just gets shorter and it's not obvious why. A diverging bar chart centered on zero fixes that. Declines extend left, growth extends right, and it's clear at a glance which quarters went which way.
Does wellPositive and negative are visually opposite, which is how they should be. Centering on zero instead of the minimum is the right call.
Could improveWithout good labels, this can confuse people. Make sure the legend explains which direction is growth, not just which color is which.
Science and Research
Science charts have to work at both ends at once: clear enough for general audiences and rigorous enough to hold up under expert scrutiny. That's a harder balance than most business charts need to strike. The four examples here cover climate, public health, conservation, and clinical trials.
Temperature Anomaly by Decade (relative to 1950-1980 baseline)
1940s
1950s
1960s
1970s
1980s
1990s
2000s
2010s
Below baseline
Above baseline
Illustrative data only. Does not represent actual NOAA or NASA records.
Example 06 · Science & Research
Global Temperature Anomalies by Decade
This is a familiar chart if you follow climate news. Blue bars extend down for cooler decades, red bars go up for warmer ones, all measured against a reference baseline. NASA and NOAA have both used versions of it. The trend toward positive anomalies in recent decades is hard to argue with visually.
Does wellThe color convention (blue = cooler, red = warmer) clicks instantly. The shift from left to right across the decades tells the story without needing a caption.
Could improveThe reference period needs to be labeled clearly. Different agencies measure anomalies against different baselines, and a reader can't tell which is which without it.
Population Vaccinated (%) by Country, Sorted Descending
Country A
88%
Country B
79%
Country C
68%
Country D
54%
Country E
41%
Country F
29%
▶ 70% immunity threshold (illustrative)
Illustrative data only
Example 07 · Science & Research
Vaccination Coverage by Country
During the COVID vaccination rollout, this type of chart was everywhere. Sorted by coverage rate, you could see in one glance which countries were on track and which weren't. The benchmark line showing the threshold is the detail worth noting: it turns a ranking chart into a policy statement.
Does wellSorting by rate instead of alphabetically is the right call. Country names are long, horizontal handles that, and the threshold line earns its keep.
Could improveThe definition of "fully vaccinated" wasn't the same everywhere during that period. A footnote clarifying the methodology prevents a chart that looks comparable from being misleading.
Population Change by Species (% over 10 years)
Species A
Species B
Species C
Species D
Species E
Decline
Gain
Illustrative data only
Example 08 · Science & Research
Species Population Change
Conservation groups need to show wins and losses in the same chart, and this format handles that well. Sort by magnitude and the most endangered species lands at one end, the biggest recovery story at the other. You see the full picture fast.
Does wellBoth directions are visible at once. Sorting by magnitude means the most urgent cases are at the extremes where they should be.
Could improvePercentage change is tricky here. A 50% gain from 20 animals tells a very different story than a 50% gain from 200,000. Annotate the extreme values with actual counts.
Outcome Rate by Trial Group
Outcome: Symptom Reduction
Treatment
78%
Placebo
42%
Control
38%
Outcome: Adverse Events
Treatment
12%
Placebo
9%
Control
8%
Treatment
Placebo
Control
Illustrative data only
Example 09 · Science & Research
Clinical Trial Outcomes by Group
In clinical trial reporting, the grouped structure maps to the experimental structure: one group of bars per outcome, one bar per trial arm. It's intuitive if you're familiar with the terminology. If you're not, the legend needs to do more work.
Does wellThe chart basically draws the experiment. Anyone who works in clinical research will read it without thinking.
Could improveThis is a significant gap in a science context. Without error bars or confidence intervals, you can't tell if the differences between arms are real or just noise.
Education
Education data tends to layer a lot of comparisons at once: grade level, subject, demographic group, time period. These four examples show how different bar chart formats handle that complexity without falling apart.
Standardized Test Scores by Grade and Subject
Grade 4
Math
61%
Reading
68%
Grade 6
Math
57%
Reading
65%
Grade 8
Math
52%
Reading
70%
Math
Reading
Illustrative data only
Example 10 · Education
Standardized Test Scores by Grade
Grouped bars make sense here because you're comparing across two dimensions at once: grade level and subject. Color-coding by subject stays consistent across every group, so you're not relearning the legend as you go. Grades run left to right, which matches how people think about school.
Does wellYou can ask "how does reading compare to math in grade 8?" and "how did grade 8 reading trend over time?" with the same chart.
Could improveAdd a reference line at the district or national average. Raw scores with no benchmark are just numbers. The reference line is what turns a score into a verdict.
Fall Enrollment by Field of Study (Sorted Descending)
Business & Mgmt
8,820
Health Sciences
7,400
Engineering
6,300
Computer Science
5,500
Social Sciences
4,800
Illustrative data only
Example 11 · Education
College Enrollment by Major
Department names like "Business & Management" and "Health Sciences" are too long for a vertical axis. Horizontal is the only sensible choice. Sorted by enrollment, it's a quick read: biggest programs at the top. One color, no drama.
Does wellLabels are readable, rank is clear. It does exactly what it's supposed to do.
Could improveA trend arrow or small secondary bar per row would show which programs are growing. That's the more interesting question for academic planning.
Reading Proficiency Distribution by Grade (%)
Grade 3
Grade 5
Grade 8
Grade 11
Below grade level
At grade level
Advanced
Illustrative data only
Example 12 · Education
Reading Proficiency Distribution
A stacked bar chart works here because you want to see both the breakdown and the total in one place. Each grade shows where students land: below, at, or above grade level. You get the composition and the whole at the same time.
Does wellPart-to-whole is readable, and consistent segment order means the outermost segments are reliably comparable across grades.
Could improveComparing the middle segment across grades is harder than it looks because its position shifts based on what's before it. A diverging stacked version centered on "at grade level" fixes that.
Student-Teacher Ratio by State
State A
24:1
State B
22:1
State C
16:1
State D
14:1
State E
12:1
▶ National average: 16:1 (illustrative)
Illustrative data only
Example 13 · Education
Student-Teacher Ratio by State
The reference line is what makes this chart useful rather than just descriptive. Without it, you see rankings. With it, every bar becomes a policy statement. Color coding above and below the average adds a second way to read the comparison, which helps when bar length differences are small.
Does wellOne line turns a list into an analysis. Length and color reinforcing each other means it works even if the color distinction doesn't land.
Could improveAlphabetical makes this good for "find my state" and bad for "find the problem states." Sort by ratio for analysis, alphabetically for a reference table.
Journalism and Data Journalism
The Pudding and the New York Times Upshot have set a high bar for what a chart should be able to do on its own. FiveThirtyEight, which ran from 2008 until ABC News shut it down in March 2025, built an equally influential body of data journalism work during its run. The best charts from all three show that a well-designed visualization carries the story without the surrounding article. Datawrapper made that level of quality accessible to journalists who don't code, which is a big reason you see it everywhere now. If you're building charts for a public audience, the publication-quality bar chart guide covers what that standard actually requires.
Vote Share by District (Party A left, Party B right)
District 1
District 2
District 3
District 4
District 5
Party A
Party B
Illustrative data only
Example 14 · Journalism
Vote Share by District
This format mirrors the competition visually, which is why it works so well for election data. FiveThirtyEight used it extensively during its run, and the New York Times Upshot still uses it regularly. Left side is one party, right side is the other, shared center axis. You know who won each district without reading a single number.
Does wellThe chart form matches the data: two sides, one winner per row. It's as direct as it gets.
Could improveWorks great for two candidates. Add a third and the mirrored logic falls apart entirely. You'd need a different format.
Median Household Income by Education Level
Less than HS
$28K
HS Diploma
$41K
Some College
$50K
Bachelor's
$72K
Graduate Degree
$98K
Illustrative data only. Does not represent Census Bureau data.
Example 15 · Journalism
Median Income by Education Level
This is one of those charts where the pattern is so consistent you barely need the axis labels. Higher education, higher income, every time. It shows up in policy reports and journalism because the income gradient is so steady across all five bars that the chart basically makes the argument by itself.
Does wellThe trend is unmistakable. One color is the right call; anything more would distract from a relationship that needs no decoration.
Could improveMedians can be misleading here. A software engineer and a retail worker might both have "some college" but their incomes aren't close. An inset showing income spread would be honest about that variation.
Annual Speech Word Count Over Time
1950s
4,200
1960s
4,800
1970s
5,500
1980s
6,100
1990s
7,200
2000s
6,500
2010s
5,800
Illustrative data only
Example 16 · Journalism
Annual Speech Word Count Over Time
The Pudding has built entire essay-length pieces around charts like this, tracking speech word count, vocabulary diversity, and other measurable features of political communication. Using bars instead of a line keeps each individual data point visible. You can still see the trend, but the outliers don't disappear.
Does wellYou see both the trend and the outliers, which a line chart would smooth away. Annotating the notable ones turns a chart into a narrative.
Could improveAt some point the bars become hair-thin slivers. A rolling average line on top helps readers see the trend without giving up the year-by-year detail.
Weekly Screen Time by Platform and Age Group (hours)
Ages 18-24
Ages 25-34
Ages 35-44
Ages 45-54
Social Media
Video
News
Illustrative data only
Example 17 · Journalism
Weekly Screen Time by Platform
Stacked horizontal bars let you answer two questions at once: how much total screen time does each demographic group log, and how is that time split across platforms? Total bar length handles the first. Segment widths handle the second. It's a lot of information in a small space.
Does wellTwo data stories in one view. Long demographic labels sit cleanly on the left without any rotation issues.
Could improveA 100% normalized version asks a different question: not "how much total time," but "how is the mix shifting." Sometimes that's actually what you care about.
Survey and Social Data
Survey data is practically made for bar charts. It doesn't matter if it's a five-question product form or a thousand-person opinion poll: simpler usually works better. The bar graph for survey results guide goes deeper on the formatting decisions that come up specifically with survey data.
News Source Trust Ratings (% of respondents who trust the source)
Source A
72%
Source B
64%
Source C
55%
Source D
46%
Source E
38%
Source F
29%
Illustrative data only. n=1,000 (hypothetical)
Example 18 · Survey & Social
News Source Trust Ratings
Ask people which news sources they trust, tally it as a percentage, sort descending, and you've got this chart. It doesn't get much simpler. The inline value labels are a nice touch because they cut the axis-tracing entirely.
Does wellRank is clear, color is neutral. Picking a red or blue palette for a news trust chart would be a disaster.
Could improveTrust data lives and dies by question wording and sample size. Both belong in a footnote. A headline number without that context is close to meaningless.
Remote Work Attitudes: Before vs. After (% Agree)
Prefer remote full-time
Before
29%
After
58%
Want office most days
Before
68%
After
35%
Hybrid preferred
Before
44%
After
71%
Before
After
Illustrative data only
Example 19 · Survey & Social
Remote Work Attitudes Before and After
Before-and-after is one of the clearest uses of grouped bars. Two bars, two time periods, one category. You can see which attitudes shifted and by how much, and which ones barely moved.
Does wellYou don't need to explain this chart to anyone. Making "after" the prominent color tells readers which answer matters. The "before" is context, not the point.
Could improveThis gets messy with a full five-point scale. A diverging stacked design handles "strongly agree through strongly disagree" more cleanly than five pairs of grouped bars.
Nonprofit Donor Age Distribution (%)
Under 30
8%
30-44
18%
45-54
28%
55-64
26%
65-74
14%
75 and over
6%
▶ Peak cohort highlighted
Illustrative data only
Example 20 · Survey & Social
Nonprofit Donor Age Distribution
Age distributions have a built-in order: youngest to oldest, left to right. No sorting decisions needed. The peak cohort stands out clearly, especially if you highlight those bars with an accent color. That second signal beyond bar height helps readers who might miss a small height difference.
Does wellThe ordering takes care of itself. Height and color both point to the peak cohort, which is belt-and-suspenders in a good way.
Could improveWithout a population comparison line, you're just looking at a donor age profile with no benchmark. A line showing the broader population would tell you whether the skew is meaningful.
Bar Chart Design Principles: What Good Data Visualization Gets Right
Looking across all 20 examples, some patterns show up consistently in the charts that work and others in the ones that don't. Two books shaped most of what the field now considers best practice: Edward Tufte's The Visual Display of Quantitative Information (Graphics Press, 2001) and Stephen Few's Show Me the Numbers (Analytics Press, 2012). The six principles below pull from both. They're not hard rules, but violating them usually makes a chart harder to read.
Why do some bar charts mislead readers?
Most misleading bar charts do one of two things: distort how big the differences actually are, or make the reader do work the chart should be doing for them. A y-axis that starts at 80% instead of zero makes a 5-point gap look dramatic. Random category order in a ranking chart makes rank invisible. Both are common, and both are completely avoidable.
Principle
What It Means
Why It Matters
Start at zero
A bar's length is the entire visual argument. Start the axis anywhere above zero and you've changed the argument.
A truncated axis makes small differences appear large, distorting the visual ratio between bars.
Sort when order is arbitrary
If the category order doesn't mean anything on its own, let the values decide. Sorted descending, rank answers itself.
Unsorted bars force the reader to search for rank. Sorted bars answer the ranking question before the reader asks it.
Maximize data-ink ratio
Every ink mark should represent data. Remove gridlines, heavy borders, and decorative fills that add no information. Tufte's term chartjunk covers all non-data decoration: 3D effects, heavy gridlines, and decorative fills.
Chartjunk increases cognitive load without adding meaning. Less non-data ink makes the actual data more visible.
Use color purposefully
Color should encode a meaningful variable, not decorate or separate bars that share one color category.
Gratuitous color adds decoding work. Two or three colors are almost always enough for a bar chart.
Prefer horizontal for long labels
Rotate to horizontal bars when category names exceed about six characters.
Rotated x-axis labels reduce readability and often overlap. Horizontal bars move labels to the left margin where they read naturally.
Label directly when possible
Place value labels on or beside bars rather than relying solely on axis reference.
Tracing a bar to an axis requires eye movement. Inline labels remove that step entirely.
The charts that break these principles account for most of the misleading data visualizations you'll see in business decks and media coverage. Truncated axes, arbitrary sorting, and 3D effects are the usual suspects. The common bar chart mistakes guide goes through each one.
Frequently Asked Questions
What makes a bar graph effective?
The best bar graphs make the comparison obvious before the reader does any math. That usually means a zero baseline, bars sorted by value when there's no inherent order, enough color contrast for colorblind users, and a title that actually says what the chart shows. Keep it simple. A chart that answers one question well is almost always more useful than one trying to answer three.
How many bars can a bar chart have before it becomes too hard to read?
There's no hard rule, but past 12-15 bars a vertical chart starts to feel like a comb. Horizontal layouts handle more categories better because the chart just grows downward. When you're dealing with dozens of categories, pick the top 10 or 15 and group everything else into an "Other" bar. You keep the useful comparisons without turning the chart into a wall of data.
When should a horizontal bar chart be used instead of a vertical one?
Go horizontal when labels are long (anything over about six characters gets awkward rotated), when you have more than 10-12 categories, or when ranking is the main point. Stick with vertical for time series because months, quarters, and years naturally read left to right. You can mix both orientations in the same report; just make sure each choice is driven by the data.
Should bar charts always start at zero?
Yes, and there's no exception for "it's just a small range." If a bar chart comparing quarterly sales starts at $800K, two bars at $820K and $850K look like a 15% difference when the actual gap is 3.6%. The reader sees the visual ratio, not the underlying math. The one exception is diverging bar charts, where zero sits in the middle as a meaningful reference point rather than the bottom of the scale.
What are the most common bar chart mistakes?
The usual suspects: truncated y-axis, 3D effects that make bar heights impossible to compare accurately, color-only encoding that leaves colorblind users guessing, missing axis units, vague titles like "Revenue Chart" instead of something that actually tells you what happened, and unsorted categories when rank is the whole point. The common bar chart mistakes guide covers all of these in detail.
Tufte, Edward. The Visual Display of Quantitative Information. Graphics Press, 2001. edwardtufte.com
Few, Stephen. Perceptual Edge, Visual Business Intelligence resources. perceptualedge.com
The Pudding. Data-driven visual essays. pudding.cool
FiveThirtyEight (defunct). Data journalism and statistical analysis publication, 2008-2025. Shut down by ABC News in March 2025; archived content made inaccessible May 2026. wikipedia.org/wiki/FiveThirtyEight