Combo Chart Card

Volume and rate on one canvas - rounded bars on the left axis, a line on its own right axis, each with its own formatting. Hovering a category darkens its bar, dims the rest, pops a pulsing dot on the line, and swaps the headline; the tiles below hold the bar total and the line average.

Sessions · Conversion 3.7%

83,200

+9.4%
Sessions · total
83,200
Conversion · average
3.7%

Installation

Combo Chart Card is part of BoardUI Pro.

Dark mode ready - this component follows BoardUI semantic tokens automatically. Set up theme switching.

Pro access

Combo Chart Card is a Pro component.

Your BoardUI Pro license unlocks this component and all of its source files. Activate your license once, then install it directly into your project with the CLI.

01

Activate your license

Use the key from your Lemon Squeezy purchase email. You only need to do this once per machine.

npx boardui@latest login YOUR_LICENSE_KEY
02

Install the component

The CLI copies the source and resolves every BoardUI and npm dependency for you.

npx boardui@latest add combo-chart-card

This component is included in BoardUI Pro

Get BoardUI Pro now and install it right away.

Data

Both series read from the same rows: bar and line each name a field, a label, an optional colour and their own format - the axes are independent, so a count and a percentage sit together without one flattening the other. The period pill is a dropdown when you pass ranges; with no data props the card ships three demo periods.

Revenue · Conversion 3.7%

83,200

+9.4%
// One row per category, carrying both series' fields.const data = [ { label: "Jan", sessions: 4200, rate: 2.4 }, { label: "Feb", sessions: 4800, rate: 2.6 }, // …]; <ComboChartCard title="Sessions" data={data} bar={{ key: "sessions", label: "Sessions", format: (n) => n.toLocaleString() }} line={{ key: "rate", label: "Conversion", color: "var(--color-chart-6)", format: (n) => `${n}%`, // the right axis keeps its own formatting }} delta={0.094} ranges={[ // period dropdown { id: "year", label: "This year", data: thisYear, delta: 0.094 }, { id: "prev", label: "Last year", data: lastYear, delta: -0.028 }, ]} tiles // bar total + line average below the chart/>