Chart Prompts

1,337 ways to dress a line or bar chart, 669 light and 668 dark. Open any chart to see it full size and copy a prompt that gives your own chart the same look.

Every chart uses illustrative data. The prompts work with any coding agent and any charting library; they describe colors, type, spacing and marks precisely enough to reproduce each look.

← More from Emergent Mind Labs

Budget Projection line chart, dark theme: A fiscal outlook with solid history, a projection divider and dashed scenarios.

Budget Projection

DarkLine

A fiscal outlook with solid history, a projection divider and dashed scenarios.

  • Deep navy#0E1A2E
  • History white#F2F4F7
  • Baseline amber#F2A93B
  • Alternative sky#6CC4F0

Prompt for your coding agent

Paste it with your chart's code. It restyles your data to match this chart.

Restyle my chart in the "Budget Projection" style described below. Keep my data, chart type, title meaning and units; change only the presentation. Use the charting library this project already uses (plain SVG if there is none). If the library can't express a detail, draw it in a custom layer instead of dropping it. Measurements assume a 960 x 600 chart; scale them proportionally.

Mood: the long-term fiscal outlook chart from a budget office briefing, on a dark screen. History is fact in solid white; the future is dashed, colored and honestly uncertain.

Colors (use these exact values):
- Background: #0E1A2E (deep navy). Gridlines: #1F2E47. Baseline and ticks: #3A4A66.
- History line, the reference line and primary text: #F2F4F7.
- Baseline scenario: #F2A93B (amber). Alternative scenario: #6CC4F0 (sky blue).
- Secondary text, tick labels and the divider: #8A97AD.
- Band between scenarios: #F2F4F7 at 7% opacity.

Typography (Google Fonts):
- IBM Plex Sans Condensed throughout (400, 500, 600).
- Eyebrow: 12px 600 uppercase, 2.4px letter-spacing, amber. Title: 30px 600 #F2F4F7 stating the finding (for example the year a threshold is crossed, computed from the data). Subtitle: 16px 400 #8A97AD with measure, unit and period.
- Tick labels 13px; "Actual" and "Projected" 12px with 1px letter-spacing (500 muted and 600 white); annotations 12px muted; end labels 14px 600 over a 13px value line.

Layout:
- 56px left margin. Eyebrow at y 50, title at y 88, subtitle at y 116.
- Plot from x 88 to 800, y 170 to 506, leaving the right margin for end labels.
- Source note in 12px muted at the bottom left.

Axes and grid:
- Horizontal gridlines only, 1px #1F2E47, with tick labels right-aligned to the left of the plot. The reference value (100) gets a 600 white tick label.
- A 1px #3A4A66 baseline with 5px ticks at each decade.
- Reference line: 1px #F2F4F7 at 55% opacity across the full plot, labeled "100% of GDP" in 12px 500 just above its left end.

Marks:
- Line chart: history as a 2.8px solid #F2F4F7 line with round joins, ending in an open circle (r 4.5, background fill, 2.2px white stroke) labeled with the last actual value. A vertical 1px dashed (4 on, 4 off) #8A97AD divider at the last actual year rises 18px above the plot with "Actual" to its left and "Projected" to its right. Scenarios start at the last actual point as 2.6px dashed lines (7 on, 5 off, round caps): baseline amber, alternative sky blue, with the band between them filled. Filled end dots (r 4.5) and end labels (scenario name, then "<value>% in <year>") in the scenario colors. Mark the threshold crossing with a small amber dot and its year.
- Bar chart: actual periods as solid #F2F4F7 bars about 60% of the band; projected periods as outlined bars (1.5px dashed amber for the baseline) with a sky-blue tick mark at the alternative value on each, behind the same divider and reference line.

Labels and annotation:
- Short event notes in 12px muted text placed to the left of the steep segments they explain ("Financial crisis", "Pandemic").

Avoid: glows, gradients on lines, fan charts with many bands, a boxed legend, solid projected lines, and bright fills.

When you're done, render the chart and check that history and projections meet at the same point, the divider sits exactly on the last actual year, the crossing year in the title matches the data, and no annotation collides with the lines or labels.