Different Types of Graphs: A Visual Guide to Choosing the Right Chart
Choosing the right graph type is the difference between instant clarity and confused audiences. This guide covers every major graph type, when to use it, when to avoid it, and what question each one answers best.
The Decision Framework
Start with the question you are trying to answer:
| Question | Graph Type |
|---|---|
| How do values compare across categories? | Bar chart |
| How has something changed over time? | Line chart |
| What is the breakdown of a whole? | Pie, stacked bar, treemap |
| How is data distributed? | Histogram, box plot, violin plot |
| Is there a relationship between two variables? | Scatter plot |
| Where are things happening? | Map |
| How does data flow through stages? | Funnel, Sankey |
| What is the magnitude of values? | Bubble chart, proportional area |
Comparison Graphs
Bar Chart (Horizontal or Vertical)
Purpose: Compare discrete categories.
When to use:
- Comparing revenue across product lines
- Showing headcount by department
- Ranking items (top 10 customers, worst performers)
Best practices:
- Sort bars by value (not alphabetically) unless categories have natural order
- Start the y-axis at zero (always, for bar charts)
- Use horizontal bars when category labels are long
- Limit to 15 bars maximum (use "Other" to group small categories)
Variations:
- Grouped bar chart: Compare multiple series across categories
- Stacked bar chart: Show composition within each category
Dot Plot (Cleveland Dot Plot)
Purpose: Compare values when you have many categories or need precision.
When to use: When a bar chart would have too many bars, or when you want to emphasize the position (value) rather than length.
Radar Chart (Spider Chart)
Purpose: Compare multiple quantitative variables simultaneously.
When to use: Comparing profiles (product features, athlete statistics, skill assessments).
Caution: Hard to read with more than 5-7 variables. Often a parallel coordinates plot is clearer.
Time-Based Graphs
Line Chart
Purpose: Show trends and changes over time.
When to use:
- Revenue over months
- User growth over weeks
- Temperature changes over a year
- Any continuous measurement tracked sequentially
Best practices:
- Time always goes on the x-axis (left to right)
- Limit to 5-7 lines (beyond that, use small multiples)
- Annotate key events on the timeline
- Use consistent intervals on the time axis
Variations:
- Multi-line: Compare trends across series
- Area chart: Like a line chart with the space below filled (emphasizes volume)
- Sparkline: Tiny inline line chart for context within tables
Area Chart
Purpose: Show magnitude of trends over time, especially cumulative effects.
When to use:
- Showing total revenue composed of multiple product lines over time
- Visualizing cumulative growth
- Emphasizing the volume rather than just the rate of change
Stacked area chart: Shows how components contribute to a total over time. Do not use with more than 4-5 stacks (middle layers become unreadable).
Distribution Graphs
Histogram
Purpose: Show the frequency distribution of a continuous variable.
When to use:
- Understanding how response times are distributed
- Seeing the spread of salaries, test scores, or ages
- Identifying skewness, outliers, or multiple peaks
How to read: The x-axis shows value ranges (bins). The y-axis shows how many observations fall in each bin. The shape reveals the story: bell-shaped (normal), right-skewed (long tail), bimodal (two peaks suggesting two groups).
Box Plot (Box and Whisker)
Purpose: Summarize distribution with key statistics: median, quartiles, range, outliers.
When to use:
- Comparing distributions across groups (salary by department)
- Identifying outliers quickly
- Showing spread and symmetry compactly
Violin Plot
Purpose: Show distribution shape alongside box plot statistics.
When to use: When you need more detail than a box plot about the shape of the distribution (bimodal patterns, multiple peaks).
Density Plot
Purpose: Show the probability density (smooth version of a histogram).
When to use: Comparing the shape of two or more distributions overlaid.
Relationship Graphs
Scatter Plot
Purpose: Show the relationship between two continuous variables.
When to use:
- Exploring correlation (ad spend vs. revenue)
- Identifying clusters and outliers
- Checking linearity before regression
Best practices:
- Add trend line if correlation exists
- Color-code points by a third variable (category)
- Size points by a fourth variable (bubble chart)
Bubble Chart
Purpose: Show relationship between three variables (x position, y position, size).
When to use: Comparing markets (x=growth, y=profit, size=revenue), comparing products, portfolio analysis.
Heatmap
Purpose: Show intensity of a value across two categorical dimensions.
When to use:
- Correlation matrices
- Activity by day-of-week and hour
- Geographic grid data
- Feature adoption across user segments
Composition Graphs
Pie Chart
Purpose: Show parts of a whole.
When to use: ONLY when:
- You have 2-5 categories
- One category dominates (making the point obvious)
- The categories sum to 100%
When NOT to use: More than 5 categories, similar-sized slices, data that does not sum to a meaningful whole. Use a bar chart instead.
Donut Chart
Purpose: Same as pie, but with space in the center for a key number.
When to use: Same restrictions as pie chart. The center can display the total.
Treemap
Purpose: Show hierarchical part-to-whole relationships.
When to use:
- Disk space by folder
- Revenue by division then by product
- Budget allocation across many categories
Stacked Bar Chart (100%)
Purpose: Compare proportions across categories.
When to use: How does the mix of product types differ across regions? How has the composition of revenue changed over time?
Waffle Chart
Purpose: Show a percentage as filled squares in a 10x10 grid.
When to use: Making a single percentage feel tangible. "73 out of 100 employees are satisfied" shown as 73 filled squares out of 100.
Flow Graphs
Funnel Chart
Purpose: Show progressive reduction through sequential stages.
When to use: Sales pipeline (leads to closed deals), conversion funnels (visit to purchase), recruitment pipelines.
Sankey Diagram
Purpose: Show flow volumes between nodes.
When to use: Customer journey flows, budget allocation, energy flow, website navigation paths.
Waterfall Chart
Purpose: Show how sequential positive and negative values contribute to a final total.
When to use: Explaining how revenue changed from Q1 to Q2 (starting value + additions - subtractions = ending value). Budget bridges. Financial reconciliation.
Specialized Graphs
Gauge (Speedometer)
Purpose: Show current value against a target.
When to use: KPI dashboards showing progress (quota attainment, satisfaction score). Limit to 1-3 on a dashboard.
Bullet Chart
Purpose: Show a value against a target and quality ranges.
When to use: Compact alternative to gauges. Better for comparing multiple KPIs side by side.
Small Multiples
Purpose: Show the same chart type repeated for different categories.
When to use: When you have too many series for one chart. Instead of 20 lines on one chart, show 20 small line charts in a grid.
Slope Chart
Purpose: Show change between two time points for multiple categories.
When to use: Before/after comparisons. Ranking changes between two periods.
Choosing the Right Graph: Quick Reference
| Your Data | Your Question | Best Graph |
|---|---|---|
| Categories + values | Which is biggest? | Bar chart |
| Time + values | What is the trend? | Line chart |
| Categories + proportions | What is the mix? | Stacked bar or pie (2-5 items) |
| Continuous variable | What is the shape? | Histogram |
| Two continuous variables | Are they related? | Scatter plot |
| Two categories + intensity | Where are hot spots? | Heatmap |
| Sequential stages + counts | Where do people drop off? | Funnel |
| Starting and ending values | What drove the change? | Waterfall |
| Location + values | Where is it happening? | Map |
| Multiple groups + distribution | How do they compare? | Box plot |
Platforms like Skopx select the appropriate graph type automatically based on your question. Ask "How has revenue trended this year?" and you get a line chart. Ask "Compare revenue across regions" and you get a bar chart. No manual chart selection needed.
Summary
There is no universally "best" graph. The right choice depends on what you are comparing, what pattern you want to reveal, and who will read it. Start with the question, identify the comparison type (time, category, distribution, relationship, composition), and select the simplest graph that makes the answer obvious.
Saad Selim
The Skopx engineering and product team