Skip to content
InsightCharts

Search

Search guides and components

Count poster

A poster that counts at scale. Blocks of thousands of unit icons fill most of the sheet, a second band counts reference groups with the same icon at the same size in a muted colour, and a bottom row holds three small graphics: squares sized by area with a ratio bracket, thick bars with the numbers inside, and shares as nested outlines or filled silhouettes.

Use when
Use it when the subject is a large count of people or things in 2 to 6 groups and the reader should see the crowd: pupils by stage, trees planted by species, vehicles built by model. Give hero the groups and reference one to three quantities to compare them with. Both bands use the same unit, icon and icon size, so their areas compare. State the total in the title.
Avoid when
Counts under a few hundred (use pictogram chart in a poster). Shares of one whole as the main point (use waffle chart or treemap). A ranking of many named things (use ranking poster). A flow from sources to destinations (use flow poster).

Preview

The preview scrolls inside its frame. A poster has the same colours in the site's light and dark modes. The toolbar has the poster themes and a PNG download. Expand it to see it in place, or open it full screen.

Full screen

Composition

Built from

The count poster template is assembled from 1 molecule and 5 poster primitives. Any slot also takes any other component.

Molecules

1

The sheet an infographic is composed on. It paints a full-bleed ground from a poster theme, forces one theme and colour mode on everything inside, and lays out a masthead, a grid of panels and a footer. It can save the whole sheet as one PNG.

Poster primitives

5

Compares 3 to 12 values as thick rounded bars from a zero baseline, with each value printed inside the end of its bar and the category beneath.

Shows several shares of the same whole, such as one share at five dates, as outlines nested from one corner of a square, each enclosing an area equal to its share.

Compares two to eight values as squares or circles whose areas are proportional to the values, each printed with its name and number.

Shows one or more percentages as icon silhouettes filled from the bottom to that level, with the number printed large beside each.

Shows the size of each group as a solid block of small icons, one icon per fixed number of units.

Installation

$ pnpm dlx shadcn@latest add @insightcharts/count-poster

The CLI copies the source into your project and needs the @insightcharts registry in components.json; see installation. With the package, import it by name:

import { CountPoster } from "insightcharts";

Examples

Forest, trees planted, with download

Blueprint, bicycles built, linked panels

Props

PropTypeDefaultDescription
herorequired{ data, name, value, title?, subtitle?, source?, ...unit-blocks props } | SlotThe hero band: one block of unit icons per row, drawn by unit-blocks. A full spec or element replaces it.
unitnumberUnits one icon stands for, in both bands. Default: a round number that gives the hero about 2,000 icons.
unitLabelstringWhat one icon stands for, e.g. "1,000 pupils". Printed as the key of both bands.
iconIconName | "path://...""person"Icon of both bands.
formatFormatSpec"integer"How to print the counts.
reference{ data, name, value, title?, ... } | SlotThe second band: reference groups counted with the same icon at the same size, painted in the theme's context grey (unit-blocks).
area{ data, name, value, ratio?, title?, ... } | SlotBottom left: two to four values as squares sized by area, with a bracket stating how many times the largest is the smallest (proportional-area). ratio defaults to "{ratio}x larger".
bars{ data, name, value, title?, ... } | SlotBottom middle: 3 to 8 values as thick rounded bars with the numbers inside (block-bar).
shares{ data, name, value, icon?, title?, ... } | SlotBottom right: shares of one whole. With icon each share is a silhouette filled to its level (shape-fill); without, the shares are outlines nested in one square (nested-shares).
titlerequiredstringThe poster's one fact, as a plain sentence with its number.
kickerstringSmall label above the title: the topic.
subtitlestringOne line under the title: the measure, population and period.
themePosterThemeName | string | ThemeInput"noir"Poster theme: noir, magenta, dusk, ocean, forest, blueprint, sunrise, paper, any other theme name, or a theme object.
mode"light" | "dark" | "auto" | "system""light"Colour mode of the poster and everything in it. A poster paints its own ground and does not follow the page unless you set auto. Only paper has a different dark variant.
downloadbooleanfalseShow a "Download PNG" control under the poster that saves the whole poster as one image.
maxWidthnumber | string1100Widest the poster is drawn. It is centred in wider containers.
linkedbooleanfalseMake the marks clickable. Clicking a mark in one graphic highlights the same name in every other graphic that has it, and filters the graphics that read the shared data. Click it again, or the empty ground of that graphic, to clear.
dataDataInputRows shared by every region whose config leaves out its own data. With linked, a click filters those regions.
sourcesstring | string[]Where the data comes from, shown in the footer.
notestringCaveat shown in the footer, e.g. "Illustrative data".
creditstringWho made the poster, shown at the right of the footer.
level1 | 2 | 3 | 4 | 52Heading level of the title. Panel headings are one level down.