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

Delta Arrows bar chart, dark theme: Before and after bars joined by arcing arrows that name the change.

Delta Arrows

DarkBar

Before and after bars joined by arcing arrows that name the change.

  • Espresso#1C1512
  • Taupe#6E5F55
  • Teal#2EC4B6
  • Warm white#F5EDE6

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 "Delta Arrows" 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: a warm, dark before-and-after brief for a policy review. Each comparison is shown as a movement: a curved arrow jumps from the old value to the new one and names the change, and one pair is lifted out with a soft glow and a note.

Colors (use these exact values):
- Background: #1C1512 (deep espresso) for the whole canvas.
- Before: #6E5F55 (muted taupe). After: #2EC4B6 (bright teal).
- Arrows, change labels and primary text: #F5EDE6 (warm white).
- Secondary text #A4968B; gridlines #2E2521; baseline #5A4C44.
- Taupe is deliberately low contrast, so every bar carries its value label.

Typography (Google Fonts):
- Chivo for the title (700, 25px, warm white, a full sentence), subtitle (400, 14.5px, #A4968B), legend (13px), category labels (400, 13.5px, #A4968B; 700 warm white for the focus) and the note (600 then 400, 13.5px).
- Chivo Mono for all figures: axis labels (12px), bar value labels (500, 12px; warm white on taupe, espresso on teal, 17px below each bar top) and change labels (600, 13.5px warm white; 16px teal for the focus pair).

Layout:
- 56px side margins; title at y 56, subtitle at y 84, legend at y 104 (taupe and teal squares plus a tiny arc arrow for "Percent change").
- Plot from x 92 to 904, baseline at y 478; equal slots per category with two 40px bars 10px apart.
- A small "MIN" unit label above the y labels; source line at y 572.

Axes and grid:
- Horizontal gridlines at round values, 1px #2E2521; a 1px #5A4C44 baseline. Y labels right-aligned 12px left of the plot. No vertical grid.

Marks:
- Bar chart: grouped before/after bars with 3px top radii. From the top center of each before bar, a 1.5px warm white cubic curve arcs up to 34px above the taller bar and comes down onto the after bar's top center with a small filled arrowhead. The signed change ("−36%", true minus sign) sits centered over the arc's apex.
- Line chart: two 2.5px lines, taupe (before) and teal (after), with 4px dots; at each x, a warm white arc arrow jumps from the before point to the after point with its change label above it.

Focus pair:
- Exactly one pair (the biggest change) sits in a 12px-radius box: 1.2px teal stroke over a 7% teal fill, plus a soft glow made from a second copy of the box stroke (5px, teal at 55% opacity) blurred with a 9px Gaussian blur. The box spans from 72px above the before bar's top to 40px below the baseline, taking in the category label.
- A two-line note leaves the box's upper right with a short teal rule: the numbers first in 600 warm white ("Ashby Vale: 14.2 to 9.1 minutes,"), then the reason in 400 #A4968B.

Avoid: arrows that cross each other or a neighboring pair, more than one glow, gradients on the bars, 3D, and change labels without a sign.

When you're done, render the chart and check that every percent change is (after / before - 1) rounded correctly, the focus pair really is the largest change, the arrowheads land on the after bars, and the glow is not clipped.