Volume and rate together: bars on the start axis, a line on the end axis. Both axes share the zero line and the grid, so neither scale exaggerates; axis sides are logical and swap in RTL.
May – Oct. Quotes sent: low 42 (May), high 71 (Oct), average 55. Win rate: low 29% (Jul), high 38% (Sep), average 34%.
| Month | Quotes sent | Win rate |
|---|---|---|
| May | 42 | 31% |
| Jun | 51 | 35% |
| Jul | 47 | 29% |
| Aug | 58 | 33% |
| Sep | 63 | 38% |
| Oct | 71 | 36% |
Installation
The whole kit as one package — get updates by bumping the version. Add the styles to globals.css: @import "@vamos-ui/react/styles.css";
Usage
import { ComboChart } from "@vamos-ui/react/charts";
<ComboChart title="Quotes and win rate" data={rows} x="month" bars={["sent"]} lines={["winRate"]}
config={{ sent: { label: "Quotes sent" }, winRate: { label: "Win rate", format: "percent" } }} />config[key].axis moves any series to the other axis.
Examples
Stacked bars + line (HR)
stackBars stacks the bars; the line keeps its own axis.
Q1 2026 – Q4 2026. Engineering: low 8 (Q3 2026), high 12 (Q2 2026), average 10. Sales: low 4 (Q2 2026), high 7 (Q3 2026), average 6. Support: low 3 (Q1 2026), high 6 (Q2 2026), average 5. Avg. days to hire: low 29 d (Q4 2026), high 41 d (Q1 2026), average 35 d.
| Quarter | Engineering | Sales | Support | Avg. days to hire |
|---|---|---|---|---|
| Q1 2026 | 9 | 5 | 3 | 41 d |
| Q2 2026 | 12 | 4 | 6 | 37 d |
| Q3 2026 | 8 | 7 | 4 | 33 d |
| Q4 2026 | 11 | 6 | 5 | 29 d |
API
ComboChart
| Prop | Type | Default |
|---|---|---|
…Chart propsSee Chart frame. | ChartProps | — |
barsKeys drawn as bars (default axis start). | string[] | — |
linesKeys drawn as lines (default axis end), drawn above the bars. | string[] | — |
areasKeys drawn as tinted areas behind the bars. | string[] | — |
stackBarsStack the bars. | boolean | false |
endAxisShow the end axis. | boolean | true |
endAxisFormatEnd axis tick format. Default: the first end-axis series' format. | FormatSpec | — |
startAxisLabel / endAxisLabelAxis titles — name both scales (label + unit). | string | — |