Skip to content

Box Plot

5 IQR and hollow rings for the outliers past them, on the viz-kit chart.

$149 once · every Pro piece

Customize

Point at a column or step with the arrow keys: the other sets step back, a small accent dot marks the median and the panel reads max, Q3, median, Q1 and min. Boxes grow out of their medians on staggered springs and morph when data changes. Options: a violin of each set's density behind a slim box or on its own, jittered raw values, a mean ring, gradient or textured boxes, a band of normal, an opt-in dashed median line across the other sets, grid or textured backgrounds, panel or corner tooltips, and loading and empty states.

Install

npx shadcn@latest add @obsyde/box-plot

Needs your licence key · Get Pro

Usage

Import it from where the CLI puts it, or copy the files below by hand.

import { BoxPlot } from '@/components/obsyde/ember/box-plot/BoxPlot';

export function Example() {
  return (
    <BoxPlot />
  );
}

Files

What you get with Pro: plain React, TypeScript and CSS, with no dependencies.

  • ember/box-plot/BoxPlot.tsxcomponent
  • ember/box-plot/box-plot.cssstyles
  • ember/box-plot/BoxPlotDemo.tsxdemo
  • ember/viz-kit/viz-kit.cssshared
  • ember/viz-kit/Tooltip.tsxshared
  • ember/viz-kit/focus.tsshared
  • ember/viz-kit/patterns.tsxshared
  • ember/viz-kit/roll.tsshared
  • ember/shared/rolling-number.cssshared
  • ember/shared/spring.tsshared
  • ember/shared/accent.tsshared
  • ember/viz-kit/scale.tsshared
  • ember/viz-kit/motion.tsshared
  • ember/viz-kit/chart.tsxshared
  • ember/shared/ember.cssshared
  • ember/viz-kit/touch.tsshared
  • ember/viz-kit/keyboard.tsshared
  • ember/viz-kit/size.tsshared
  • ember/viz-kit/States.tsxshared
  • ember/viz-kit/shape.tsshared
  • ember/viz-kit/Grid.tsxshared
  • ember/viz-kit/demo.tsxshared
  • ember/viz-kit/demo.cssshared
  • ember/viz-kit/Axis.tsxshared
  • ember/viz-kit/annotations.tsxshared

API

PropTypeDefault
accentAccent'ember' | 'volt' | 'arc''ember'
seriesSetsnumber6
samplesValues per setnumber40
shapeShape'box' | 'both' | 'violin''box'
pointsRaw pointsbooleanfalse
meanMeanbooleanfalse
fillFill'solid' | 'gradient' | 'diagonal-up' | 'dots' | 'crosshatch''solid'
compareCompare medianbooleanfalse
bandReference bandbooleanfalse
tooltipTooltip'panel' | 'corner' | 'none''panel'
backgroundBackground'grid' | 'dots' | 'hatch' | 'none''grid'
statusStatus'ready' | 'loading' | 'empty''ready'
heightHeightnumber280
seedSeednumber9