BI and Visualization
Chart choice, misleading encodings, dashboard design and adoption, and aggregation traps in BI tools.
9 questions
JuniorTheoryVery commonWhich chart type fits which relationship — trend, comparison, distribution, correlation, or composition?
Which chart type fits which relationship — trend, comparison, distribution, correlation, or composition?
Match the chart to the relationship: a line for a trend over time, bars for comparison across categories, a histogram or box plot for a distribution, a scatter for correlation between two numeric fields, and a stacked or 100% bar for part-to-whole composition.
Common mistakes
- ✗Connecting unordered categories with a line, implying continuity that isn't there
- ✗Choosing a chart for looks or novelty instead of the data relationship
- ✗Putting too many series on one chart so no single relationship reads clearly
Follow-up questions
- →Why does a line chart imply continuity that a bar chart does not?
- →When would small multiples beat cramming several series onto one chart?
JuniorTheoryVery commonWhy does a pie chart with nine slices fail to communicate, and what do you replace it with?
Why does a pie chart with nine slices fail to communicate, and what do you replace it with?
A pie encodes value as angle and area, which the eye judges far worse than length on a shared axis. With nine near-equal wedges, ranking them is guesswork. Replace it with a sorted bar chart — value maps to length, so every category reads and ranks at a glance.
Common mistakes
- ✗Believing the eye compares angle and area as accurately as length
- ✗Adding more slices, colors, or 3D instead of switching chart type
- ✗Keeping a pie for ranking when the question is which category is largest
Follow-up questions
- →When is a pie chart actually acceptable — how many slices at most?
- →Why is length on a common axis the most accurate visual encoding?
JuniorTheoryCommonHow can a dual-axis chart manufacture a correlation that isn't there, and what do you use instead?
How can a dual-axis chart manufacture a correlation that isn't there, and what do you use instead?
A dual-axis chart plots two series on independent y-scales, and either scale can be stretched or shifted until the lines track — so unrelated series look correlated. The overlap is an artifact of the chosen scales, not the data. Prefer a scatter plot instead.
Common mistakes
- ✗Reading two tracking lines as evidence of a real correlation
- ✗Thinking matched units, not the independent scales, are the issue
- ✗Trusting the overlap because each axis is labeled
Follow-up questions
- →How does a scatter plot expose the same relationship more honestly?
- →When is a dual-axis chart defensible despite these risks?
JuniorTheoryCommonWhen does truncating a chart's y-axis mislead, and when is starting above zero legitimate?
When does truncating a chart's y-axis mislead, and when is starting above zero legitimate?
Bars encode value by length from zero, so cutting the baseline turns a 2% gap into a cliff — that is why a truncated bar chart misleads, and bars must start at zero. Truncation is fine for a line chart, where position, not length, carries the meaning.
Common mistakes
- ✗Thinking bars and lines follow the same baseline rule
- ✗Believing a bar encodes value by its top position rather than its length
- ✗Assuming a printed axis label cancels the visual exaggeration
Follow-up questions
- →Why can a line chart legitimately start above zero when a bar cannot?
- →How would you annotate a truncated line axis so it isn't misread?
MiddleDesignCommonA dashboard shows the month's overall conversion rate by averaging each day's conversion rate across the thirty days, rather than dividing total conversions by total sessions. Daily traffic swings widely — weekends are light, campaign days are heavy. Explain why the displayed figure is wrong, which direction it tends to be biased, and what determines how far off it is from the true rate. Then state the correct way to aggregate a rate over a period.
A dashboard shows the month's overall conversion rate by averaging each day's conversion rate across the thirty days, rather than dividing total conversions by total sessions. Daily traffic swings widely — weekends are light, campaign days are heavy. Explain why the displayed figure is wrong, which direction it tends to be biased, and what determines how far off it is from the true rate. Then state the correct way to aggregate a rate over a period.
Averaging daily rates weights every day equally, but a period rate must weight each day by its sessions — so the mean of ratios ≠ total conversions ÷ total sessions. It over-weights low-traffic days; the error's size and sign track the volume–rate correlation. Fix — sum conversions ÷ sum sessions.
Common mistakes
- ✗Assuming the mean of daily ratios equals total conversions over total sessions
- ✗Weighting every day equally when days have very different session counts
- ✗Thinking the bias is fixed rather than driven by volume-rate correlation
Follow-up questions
- →Under what condition do the two aggregation methods coincide exactly?
- →How does this weighting issue relate to the aggregation effect known as Simpson's paradox?
MiddleTheoryCommonWhen should a chart show uncertainty with error bars, a confidence band, or just the point number?
When should a chart show uncertainty with error bars, a confidence band, or just the point number?
Show uncertainty whenever a reader might act on a difference within noise. Use error bars for a few discrete estimates, a shaded band for a continuous series like a time trend, and the bare number only when the interval is negligible. Always label the interval.
Common mistakes
- ✗Reporting a point estimate with no interval when a reader will act on a within-noise gap
- ✗Using discrete error bars on a continuous series where a band fits
- ✗Drawing an interval without saying whether it's an SE, CI, or range
Follow-up questions
- →What's the difference between a standard-error bar and a 95% confidence interval?
- →Why can overlapping 95% error bars still be a significant difference?
MiddleTheoryOccasionalNobody opens the dashboard you built. What are the real reasons, and how would you drive adoption?
Nobody opens the dashboard you built. What are the real reasons, and how would you drive adoption?
Usually it answers no real question, loads slowly, or its numbers disagree with another report — so trust erodes. Drive adoption by anchoring on the decision it supports, cutting to that, making it fast, and reconciling definitions with the source of truth.
Common mistakes
- ✗Treating low adoption as a comms problem when the dashboard answers no real question
- ✗Adding more metrics and filters instead of cutting to the decision
- ✗Ignoring load speed and number mismatches that quietly destroy trust
Follow-up questions
- →How would you find out which decision the dashboard is meant to support?
- →What would you do first when two reports show different numbers?
MiddleDesignOccasionalYou are designing the single executive dashboard for a two-sided marketplace with buyers, sellers, and transactions. Leadership will glance at it for about two minutes each morning. Decide what belongs above the fold and what you would deliberately cut. Explain how you would choose the handful of top-line metrics, how you would order them so the story reads top-to-bottom (outcome first, then the drivers behind it), and how you would keep operational detail available without letting it clutter the executive view. What goes above the fold, and what do you remove?
You are designing the single executive dashboard for a two-sided marketplace with buyers, sellers, and transactions. Leadership will glance at it for about two minutes each morning. Decide what belongs above the fold and what you would deliberately cut. Explain how you would choose the handful of top-line metrics, how you would order them so the story reads top-to-bottom (outcome first, then the drivers behind it), and how you would keep operational detail available without letting it clutter the executive view. What goes above the fold, and what do you remove?
Above the fold put a few outcome and health metrics — GMV, active buyers and sellers, take rate — each with a trend and a target, ordered so the eye reads outcome first, then drivers. Cut vanity counts and operational tables; move detail to linked drill-downs. One screen, one question.
Common mistakes
- ✗Cramming every available metric onto the exec view instead of a chosen few
- ✗Leading with granular operational tables rather than outcome metrics
- ✗Arranging tiles with no narrative order from outcome to driver
Follow-up questions
- →How would you decide which metric is the single north-star tile?
- →Where would per-seller detail live so it's reachable but not on top?
MiddleDebuggingRareA dashboard filter changes the totals but not the '% of total' column — fix the aggregation-scope bug.
A dashboard filter changes the totals but not the '% of total' column — fix the aggregation-scope bug.
The denominator is an unfiltered subquery — (SELECT SUM(amount) FROM sales) ignores the WHERE the numerator honors — so a filter shifts each numerator but not the grand total, and the column stops summing to 100%. Fix with SUM(SUM(amount)) OVER (), evaluated after WHERE.
Common mistakes
- ✗Assuming a subquery inherits the outer query's
WHEREfilter - ✗Blaming rounding when the denominator scope is wrong
- ✗Adding columns to
GROUP BYinstead of scoping the total
Follow-up questions
- →Why does
SUM(SUM(amount)) OVER ()respect the filter when the subquery doesn't? - →How would you make the denominator the per-region total instead of the grand total?