Free · ECharts · Editable React source
Quartile Box
Compare medians, the middle half, and explicitly supplied whisker bounds.
This is the installable component, not a mockup. Width is a preview container setting; theme and colors use your app’s shadcn CSS variables.
Edit sample data · JSON
01 / Installation
Your code. Your project.
Use an initialized shadcn/Tailwind React project. The URL installs the component and its shared files recursively. No namespace configuration, platform account, or agent files.
Next.js, Vite & manual setup →npx shadcn@latest add https://beautifulcharts.dev/r/quartile-box.jsonPackage dependencies: echarts. Shared files are included in Source above. The installed license file covers the free source.
For a manual install, add those packages, copy every listed Source file to its displayed path, and adjust the @/ alias if your project uses a different one.
02 / Component API
Make it yours.
Types, defaults, and source below are generated from the distributed component. Numeric values must be finite; recipe-specific bounds are checked in source. Formatters change displayed labels, not the underlying measurements.
| Prop | Type | Default | Required |
|---|---|---|---|
| data | QuartileBoxDatum[] | quartileBoxData | No |
| title | string | "The middle tells a story" | No |
| subtitle | string | "Box = middle 50% · rule = median · whiskers = supplied bounds" | No |
| ariaDescription | string | — | No |
| valueFormatter | (value: number) => string | recipeNumber | No |
| color | string | recipeColors[1] | No |
| renderer | EChartsRenderer | "canvas" | No |
| optionOverrides | EChartsCoreOption | — | No |
| isLoading | boolean | — | No |
| className | string | — | No |
Exact data and series types
export type QuartileBoxDatum = { label: string; low: number; q1: number; median: number; q3: number; high: number };
export type QuartileBoxProps = { data?: QuartileBoxDatum[]; title?: string; subtitle?: string; ariaDescription?: string; valueFormatter?: (value: number) => string; color?: string; renderer?: EChartsRenderer; optionOverrides?: EChartsCoreOption; isLoading?: boolean; className?: string };shadcn theming
Your card, text, border, error, font, and chart colors—not a forced design system.
Native customization
Modify the local source or use the documented renderer-native extension points.
Accessible states
Loading, empty states, reduced motion, descriptions, and inspectable data tables.