Data visualisation
Choosing charts, designing dashboards and critiquing visualisations.
Download all 64
- Adapt a chart for mobile screens
Adapts a desktop chart for phone screens by reorienting, cutting categories, moving labels, simplifying axes and replacing hover with tap or text. Use for charts in apps, newsletters and articles.
- Animate a chart
Plans and codes an animated chart for video or social, such as a bar chart race, with pacing, interpolation, stable labels, a strong final frame and a static fallback.
- Audit an existing dashboard
Audits a dashboard for decision usefulness, metric definitions, clutter, misleading visuals and staleness, ending in a ranked redesign shortlist. Use when a dashboard is ignored or distrusted.
- Build a burndown or burn-up chart
Builds a burndown or burn-up chart from task data with scope changes visible, an ideal line and a forecast range instead of one date. Use for sprints, releases or backlogs.
- Build a D3 chart
Writes a self-contained D3.js chart from data and a chart spec, with scales, axes, responsive sizing, transitions, accessible markup and tooltips that also work by keyboard. Use for custom web charts.
- Build a static HTML dashboard from a CSV
Builds a self-contained HTML dashboard from a CSV with a script, a chart per question, filters and accessible colours, and checks every number against the data. Use for a quick, shareable dashboard.
- Build an interactive data app
Writes a small interactive data app in Streamlit, Dash or Shiny from a dataset and the questions it must answer, with caching, filters, charts, data checks and deployment notes. Use to share analysis.
- Build an interactive web map
Writes an interactive Leaflet or MapLibre GL map with a choropleth or markers, legend, popups, clustering, attribution and mobile behaviour. Use to put data on a web page.
- Build a Looker Studio report
Plans a Looker Studio report with data sources, credentials, blends, calculated fields, pages, controls and performance settings, ready to build step by step. Use before building a shared dashboard.
- Build a Metabase dashboard
Plans a Metabase dashboard with shared models and metrics, SQL questions, filters wired to every card, caching, permissions and safe sharing. Use when building on Metabase.
- Build a Power BI report page
Lays out a Power BI report page from its questions, with visuals, slicers, edit interactions, drill-through, tooltip pages, a theme and a phone layout. Use when building a page.
- Build a React chart component
Writes a typed React chart component with Recharts or Chart.js, with responsive sizing, loading, empty and error states, formatted tooltips, accessibility and tests.
- Build a Tableau dashboard
Turns a brief or sketch into Tableau build steps: sheets per question, containers and sizing, filter actions, parameters, device layouts and performance checks.
- Chart design rules
Rules for any chart the assistant designs or codes, covering one message, an action title, honest axes, direct labels, accessible colour and a source note. Load whenever a chart or plot is made.
- Choose a BI tool
Compares BI tools such as Power BI, Tableau, Looker Studio and Metabase for a team on data sources, skills, sharing, governance and cost, ending in a shortlist and trial plan.
- Choose accessible chart colours
Chooses accessible categorical, sequential or diverging chart palettes with hex codes, colour-vision and contrast checks and highlight rules, fitted to brand colours. Use when colouring charts.
- Choose a chart type
Recommends the chart that best carries a specific message for a given data shape, with encodings, the alternatives considered and the anti-patterns to avoid. Use before building a chart.
- Choose a charting library
Recommends a charting library for a project (Chart.js, ECharts, Recharts, Plotly, D3, Vega-Lite, Observable Plot, matplotlib and others) from chart needs, data size, stack, interactivity and licence.
- Convert a chart between libraries
Ports a chart between tools or libraries (Excel, matplotlib, plotly, ggplot2, Vega-Lite) keeping encodings, order, scales and style, with a parity checklist.
- Create a chart style guide
Creates a house style guide for charts with fonts, sizes, palettes, chart defaults, titles, number formats and source notes, plus theme code. Use so every team's charts look and read the same.
- Critique a chart
Critiques a chart for clarity, honesty (axes, scales, cherry-picked ranges) and accessibility, and proposes a concrete redesign. Use before a chart goes into a deck, report or dashboard.
- Dashboard build track
Builds a dashboard in gated steps from decisions and users to metric definitions, data checks, a wireframe, a build spec and a QA and adoption review. Use when a dashboard must be trusted and used.
- Data visualisation designer
Data visualisation designer who starts from the message and the reader, picks honest encodings, strips clutter and annotates what matters. Use for any chart, dashboard or data graphic.
- Debug plotting code
Fixes matplotlib, seaborn, ggplot2 or plotly code that errors or renders wrongly (cut labels, wrong order, overlapping ticks, broken legends) with the smallest change.
- Describe a chart for accessibility
Writes short alt text, a structured long description and a data table for a chart so screen-reader users get the same insight as sighted readers. Use when publishing charts on the web or in documents.
- Design chart interactions
Specifies interactions for an interactive chart or dashboard view (tooltips, highlighting, filters, zoom, drill-down, linked views) with states, touch and keyboard behaviour. Use before building.
- Design a customer-facing dashboard
Designs in-app analytics for a product's own customers: metrics they care about, comparisons, empty and partial-data states, permissions, exports and help text.
- Design a KPI dashboard
Designs a KPI dashboard from the decisions it must support, covering audience, questions, metric definitions, one chart per question, filters and layout. Use before building it in a BI tool.
- Design a readable data table
Designs a readable data table for a report or slide, covering what to include, ordering, number formats, alignment, highlighting and footnotes. Use when your tables get skipped or misread.
- Design a heatmap
Designs a heatmap such as a calendar, correlation matrix, cohort grid or hour-by-day pattern, choosing row order, colour scale, normalisation and labels. Use for patterns across two dimensions.
- Design KPI cards
Designs a dashboard's row of KPI cards with headline value, comparison, sparkline, status rules by direction of good, and number formats. Use for a dashboard's top row.
- Design a map visualisation
Designs a map for the data at hand (choropleth, dot, proportional symbol, hex bin or flow) with normalisation, classification, colour, projection and pitfalls. Use before putting data on a map.
- Design a quadrant chart
Builds a 2x2 quadrant chart from data (impact vs effort, growth vs share) with defensible thresholds, action labels, point labelling and caveats on borderline items.
- Design a Sankey diagram
Designs a Sankey or alluvial diagram for flows such as budgets, energy, user journeys or status changes, checking flows balance, limiting nodes and ordering them. Use when showing where quantities go.
- Design a scatter plot
Designs a scatter or bubble chart for the relationship between two measures, handling overplotting, trend lines, log axes and outliers without implying causation.
- Design a scrollytelling data story
Plans a scroll-driven data story for the web with narrative beats, the chart state at each step, transitions, a mobile layout and an accessible static fallback. Use for long-form interactive pieces.
- Design small multiples
Turns a cluttered many-series chart into small multiples with the right split, shared or free scales, panel order, highlighting and labels. Use when a spaghetti chart hides the pattern.
- Design a waterfall chart
Designs a waterfall (bridge) chart that walks from one total to another through drivers, checking the steps add up, ordering and labelling them. Use for profit, budget or KPI bridges.
- Draw an org chart
Turns a staff list into a valid Mermaid org chart and outline, handling dotted-line reports, vacancies and large teams, and lists the data problems found. Use for team structure.
- Draw a process diagram
Draws a process as a valid Mermaid flowchart, swimlane or sequence diagram with decisions, owners and exceptions, and lists the gaps in the description. Use to document how a process works today.
- Export a chart for print and web
Sets chart export settings per destination (slides, web, print, journal): vector or raster, DPI and pixel size, fonts and colour. Use when exported charts look blurry or wrong.
- Interpret a chart
Explains in plain words what a chart shows, what it does not show, how it might mislead and what to ask about it. Use when you are handed a chart in the news, a report or a meeting.
- Lay out a multi-panel figure
Lays out a multi-panel figure in code with a grid, shared axes and legend, panel letters and sizing for the final page or slide. Use when several charts must work as one figure.
- Practise reading charts with a quiz
Builds data literacy with a round-by-round quiz on reading charts, from axes and scales to misleading designs, using described or uploaded charts and explaining every answer.
- Recreate a chart from an image
Rebuilds a chart from a screenshot or photo as plotting code with an approximated data table, flagging every estimated value and its precision. Use when the data behind a chart is lost or unavailable.
- Replace a dual-axis chart
Shows two measures in different units without a misleading dual axis, using aligned panels, indexing or a connected scatter. Use when someone asks for a second y-axis.
- Speed up a slow dashboard
Diagnoses a slow BI dashboard (Power BI, Tableau, Looker Studio, Metabase) and ranks fixes across data volume, model, calculations and page design, with how to measure each.
- Tell a data story
Turns analysis findings into a data story with one message, a sequence of charts with action titles and annotations, and the narrative linking them. Use when presenting to non-analysts.
- Turn numbers in text into a chart
Extracts the numbers from a passage of prose into a clean, sourced table, flags values that are not comparable, and recommends the chart that carries the message. Use with reports, articles or emails.
- Visualise actual against target
Designs charts comparing actuals with targets, budgets or forecasts (bullet charts, variance bars, target lines) with clear colours and status rules. Use for scorecards and monthly reviews.
- Visualise a before-and-after change
Designs a chart comparing two points in time or two conditions across many items (slopegraph, dumbbell or change bars) with ordering, highlighting and honest scales. Use for before-after stories.
- Visualise a conversion funnel
Designs a funnel chart showing step counts, step and overall conversion, segments and change over time, without distorted tapered shapes. Use for signup or checkout funnels.
- Visualise a distribution
Picks and specifies the chart for one or several distributions (histogram, box, violin, beeswarm, ECDF) with bin widths, scales and outlier handling. Use to show spread, not only averages.
- Visualise an event timeline
Lays out a timeline of dated events and periods with lanes, true time spacing, readable labels and uncertain dates, as a spec or code. Use for project, history or incident timelines.
- Visualise a hierarchy
Visualises nested categories as a treemap, icicle, sunburst or indented tree with depth limits, sizing and labels, and says when a table is better. Use for budgets or catalogues.
- Visualise model evaluation
Produces evaluation plots for a classification or regression model (PR and ROC curves, confusion matrix, calibration, residuals) with code and plain readings.
- Visualise a network graph
Designs a readable network visualisation of relationships (people, systems, citations) with filtering, layout, node sizing, colour and labels, or a matrix when it would be a hairball.
- Visualise open-text responses
Shows themes from open-text survey or feedback answers as coded theme charts with denominators and representative quotes instead of word clouds. Use when presenting comments.
- Visualise parts of a whole
Picks and specifies a composition chart (sorted bars, stacked or 100% bars, pie, waffle, treemap) for shares of a total, including how the mix changes over time. Use for share-of-total questions.
- Visualise a ranking
Designs a ranked comparison (sorted bars, lollipop or dot plot) and a bump chart when ranks change over time, handling ties, long tails, small bases and label length. Use for top-N and league tables.
- Visualise a time series
Specifies a trend chart for one or many time series, choosing line or bars, indexing, log scale, seasonality handling, gaps and event annotations. Use when showing how a measure changed over time.
- Visualise uncertainty in estimates
Shows uncertainty in estimates such as poll results, model coefficients or group means with intervals, gradients or quantile dots and wording that lay readers interpret correctly.
- Write plotting code
Writes publication-quality plotting code from data and intent, with labelled axes, accessible colours and an annotation on the key point. Use for matplotlib, seaborn, plotly, ggplot2 or Vega-Lite.
- Write Tableau calculations
Writes Tableau calculated fields, LOD expressions and table calculations from plain-language definitions, with filter-order notes and test values. Use when building or fixing a Tableau workbook.