100 free, MIT-licensed chart types for React, laid out from your data at four sizes: sankey, gantt, calendar heatmap, ridgeline and more, in SVG with no chart library. Pro types, widgets and templates with a token.
The stripes plot for Chartory charts.
The strips plot for Chartory charts.
The sunburst plot for Chartory charts.
The tacho plot for Chartory charts.
The ternary plot for Chartory charts.
The tile-map plot for Chartory charts.
The tree2 plot for Chartory charts.
The treemap plot for Chartory charts.
The underwater plot for Chartory charts.
The uptime plot for Chartory charts.
The vbars plot for Chartory charts.
The venn plot for Chartory charts.
The volume-profile plot for Chartory charts.
The v-stack plot for Chartory charts.
The waterfall plot for Chartory charts.
The yard plot for Chartory charts.
Tokens for the Hearth collection in light, dark, Ember and Ember Light, chart colours and motion.
Flows between peers, around a circle. Sample data: bridged volume between five chains, Base +$319M net in, Polygon −$146M net out.
Similar items grouped into named clusters. Sample data: support tickets in five clusters, billing, login and SSO, integrations, bugs and feature asks.
How each group holds on over time. Sample data: monthly cohorts April to September, revenue retention, 86% to 91% at month 2.
What fills a model's context window. Sample data: context of four requests on a 128K scale, split into system, history, tools, docs and output.
How every pair moves together. Sample data: six coins, tightest ETH · BTC 0.86, loosest TON · SOL −0.06.
Value at each stage, and how fresh it is. Sample data: open pipeline from lead ($120K) to won ($122K), fresh, aging 21+ days and stuck 45+ days.
In and out, from one zero line. Sample data: weekly inflow and outflow, W29 to W40, on a ±400K axis.
One total, split into a few parts. Sample data: monthly recurring revenue by plan, Enterprise $82K (45%), Starter $17K (9%).
Estimates with how sure they are. Sample data: on-time delivery of six carriers with confidence intervals, against a 95% SLA.
The full range per item, on one scale. Sample data: payout times for six rails, instant card 0.1 to 0.4 days, cheque 4.0 to 7.5 days.
How far each part drifted from its target. Sample data: six assets against target, US equity +3.0 pt, intl equity −4.0 pt.
Two values per item, and the gap between them. Sample data: our price against the rival's for six outdoor products, gaps from −$10 to +$7.
Every event as a thin line, by service. Sample data: requests to chat API, embeddings and agents over 24 hours, OK, slow and error.
Where the time went in one run. Sample data: one agent run of 8.4 s, plan, research and answer, coloured by model, tool, retrieval and wait.
A window per item, from start to end. Sample data: delivery windows of eight routes, R1 to R8, between 06:00 and 18:00.
Where it is heading, and how sure we are. Sample data: cash on hand, May to April, actual to October, P10–P90 band.
Who pays whom, one stripe per period. Sample data: funding rate per 8 hours with the BTC price, Jul 12 to Oct 9.
How many make it to each step. Sample data: 48.2K site visits to 0.4K annual plans, 26% of visits sign up.
How much a model finds in its top picks. Sample data: a churn model, the top 20% of accounts hold 61% of churners.
Who is busy when, lane by lane. Sample data: trucks at six docks from 06:00 to 14:00, loading, unloading, waiting and delayed.
One reading on a dial, with a limit marked. Sample data: fleet utilisation today, overload above 85%.
A few series, side by side in each period. Sample data: new paid accounts per month by plan (Starter, Team, Business), July to December.
Two dimensions, shaded by value. Sample data: card transactions by weekday and hour over 7 days, the busiest cells at 398 and 412.
Where clicks pile up on a page. Sample data: clicks on three key pages, product 16.1K, home 14.2K, checkout 8.3K.
How values spread across ranges. Sample data: response times from 0 to 900 ms, P50 250 ms, P95 475 ms.
Many series, folded into thin rows. Sample data: daily volatility of four currency pairs against its average, Aug 11 to Oct 9.
Items in a list, with room for their names. Sample data: parcels delivered at five hubs against the scheduled count, Rotterdam 1,312.
A breakdown in stacked rows. Sample data: inference spend by team and use case, support $18.4K (chat bot $11.2K, triage $7.2K).
How far you get from one point in set times. Sample data: stops around one depot in 15-minute rings, 48% under 30 min, 11 late stops.
Counts drawn as rows of icons. Sample data: orders by channel, one box = 100, web 1,840, retail 310.
Agree and disagree, statement by statement. Sample data: five statements, easy to set up 12% disagree and 74% agree.