BubbleChart

Bubble chart mapping x, y, and size dimensions; radius is area-proportional via sqrt scale.

Category: chart · WCAG 2.1-AA · chart, bubble, scatter, three-dimensional, data-viz

Props

PropTypeDefaultDescription
series{ name: string; data: { x: number; y: number; size: number }[] }[]The data series to plot.
titlestringTitle text for the component.
descriptionstringSupporting description text.
widthnumberFixed SVG width in px. ⚠ **Omit for a responsive chart** — the chart fills and tracks its container via a ResizeObserver; there is no correct pixel number in a responsive grid. A fixed width is clamped to the container (max-inline-size: 100%) so it can never overflow its card, but it also stops the chart growing. `useChartSize` is NOT needed for this — charts call it internally.
heightnumber320SVG height in px. Unlike `width`, height does NOT track the container — this is the knob you set to change the chart's aspect.
tooltipbooleanEnable hover/keyboard tooltip
classNamestringAdditional CSS class names merged onto the root element.
plainbooleanfalseMarks only — no axes, grid lines, or legend. For micro/inline charts.
glyphGlyphShape | ((d, seriesId) => GlyphShape)Point glyph shape (circle/square/diamond/triangle/cross/star) — a fixed shape or a function to encode a category by shape.

Design tokens

When to use

When not to use

Examples

Basic bubble chart

import { BubbleChart } from '@cascivo/charts'

const series = [{ name: 'Group A', data: [{x:1,y:2,size:10},{x:3,y:4,size:30}] }]
<BubbleChart series={series} title="Bubble" />

Related components

← Back to docs