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

Bid Ask line chart, dark theme: A navy FX terminal with stepped bid and ask hairlines, tinted spread and pip ruler.

Bid Ask

DarkLine

A navy FX terminal with stepped bid and ask hairlines, tinted spread and pip ruler.

  • Terminal navy#0A1224
  • Bid cyan#3CCFE6
  • Ask salmon#FF8C7A
  • Event amber#F2C14E

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 "Bid Ask" 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 professional FX trading terminal at the desk. Dark navy, precise hairlines, monospaced prices and a pip-level ruler; nothing decorative that a trader would not use.

Colors (use these exact values):
- Background: #0A1224 with a subtle vertical gradient from #0D1830 at the top. Readout panel: #101B33 with a 1px #22304F border.
- Bid / first series: #3CCFE6 (cyan). Ask / second series: #FF8C7A (salmon). Spread fill between them: #8FA2D6 at 28% opacity.
- Primary text: #E4EAF6. Secondary text: #7F8BA6. Gridlines: #18243F. Axis and ruler lines: #3A4A6E (major ticks #6E7FA6). Event accent: #F2C14E (amber) on a #2A2410 tag. Live dot: #3DDC97.

Typography (Google Fonts):
- Titillium Web for the title (29px 600, #E4EAF6, stating the finding) and subtitle (15px 400, muted).
- Fira Code for every number and label: status line 12px 500 with 1.5px letter-spacing ("LIVE · KRN/VAL · SPOT" after a 4px green dot); legend 11.5px 600 uppercase in series colors; time and price labels 11px; readout label 10.5px 500 with 2px letter-spacing; readout value 30px 600; footer 11px.

Layout:
- 56px left margin. Status line, title, subtitle, then a legend row (20px strokes for BID and ASK, a 20 x 12 tinted block for SPREAD).
- Spread readout panel at top right (152 x 74, 6px radius): "SPREAD" label, current spread large with "pips" small beside it, and the session high in amber at the top right corner.
- Plot ends about 180px from the right edge to leave room for the pip ruler and price boxes.

Axes and grid:
- Horizontal 1px #18243F gridlines every 10 pips; vertical dotted (1 on 3) hour lines; a 1px #2A3858 baseline with hour labels in Fira Code.
- Pip ruler on the right: a vertical 1px line with ticks for every pip (3px), every 5 pips (6px) and every 10 pips (10px, lighter) with 4-decimal labels. Note "1 tick = 1 pip" under it.
- Mark scheduled events with a 1px amber vertical line dashed 3 on 3 at 80% opacity and a small amber-outlined tag ("DATA 13:30").

Marks:
- Line chart: bid and ask as 1.2px stepped hairlines (horizontal then vertical, like a quote feed) with a soft 2.2px-blur glow copy of each at 35% opacity underneath, and the spread polygon between them tinted.
- Current prices sit in stacked 112 x 26 boxes on the ruler, ask (salmon) above bid (cyan), with navy text: a small side letter, the big figure in 12px, the two pip digits large (16px 700) and the fractional pip as a 10px superscript. 1px leaders connect each box to its line end.
- Bar chart: thin 1px-gap bars in cyan with salmon for the comparison series (or cyan up and salmon down), square corners, on the same navy grid, with the latest value in a colored box on the right ruler and the readout panel showing the headline number.

Avoid: thick lines, rounded friendly UI, smoothing that hides the steps, light backgrounds, proportional fonts for prices, a second y scale.

When you're done, render the chart and check that ask is always at or above bid, the readout values match the data, the price boxes line up with their line ends, and hairlines stay crisp.