sheengemologic ui
All components

AreaChart

Renders bounded SVG area series with honest NaN gaps and optional positive/negative stacking.@gemologic/sheen-charts · data

Playground

TrafficReads remain above writes; one write sample is missing.
ReadsWrites
Use Left and Right Arrow, Home, and End to inspect samples. Press Escape to clear the inspection.
View as table

Reads remain above writes; one write sample is missing.

Traffic
IntervalReadsWrites
1208
224Missing value
32212
<AreaChart label="Traffic" summary="Reads remain above writes; one write sample is missing." xLabel="Interval" series={trafficSeries} data={trafficData} x={{ type: "number" }} height={240} stacked  curve="linear"/>

Variant matrix

Traffic volume
TrafficReads remain above writes; one write sample is missing.
ReadsWrites
Use Left and Right Arrow, Home, and End to inspect samples. Press Escape to clear the inspection.
View as table

Reads remain above writes; one write sample is missing.

Traffic
IntervalReadsWrites
1208
224Missing value
32212
curve: linear
TrafficReads remain above writes; one write sample is missing.
ReadsWrites
Use Left and Right Arrow, Home, and End to inspect samples. Press Escape to clear the inspection.
View as table

Reads remain above writes; one write sample is missing.

Traffic
IntervalReadsWrites
1208
224Missing value
32212
curve: step
TrafficReads remain above writes; one write sample is missing.
ReadsWrites
Use Left and Right Arrow, Home, and End to inspect samples. Press Escape to clear the inspection.
View as table

Reads remain above writes; one write sample is missing.

Traffic
IntervalReadsWrites
1208
224Missing value
32212

Anatomy

Package
@gemologic/sheen-charts
Source
packages/charts/src/ContinuousSvgChart.tsx
Tokens
  • --sheen-chart-1
  • --sheen-chart-2
  • --sheen-chart-grid
  • --sheen-chart-axis
  • --sheen-chart-line-width
  • --sheen-color-fg
  • --sheen-color-fg-muted

Accessibility

Role: labeled SVG image with visible narrative and native table disclosureKeyboard: Focus the plot and use Left/Right, Home/End, and Escape to inspect samples., Use the native view-as-table disclosure for every exact sample.

Do

  • Use stacking only when totals and component contribution are meaningful.

Do not

  • Do not interpolate or fill across NaN gaps.

Generated props

NameTypeDefaultDescription
curve"linear" | "step"linearHonest linear or step-after interpolation.
stackedbooleanfalseStacks positive and negative values independently.
label *stringRequired visible and accessible chart name.
summary *stringRequired narrative interpretation.
xLabel *stringRequired domain-axis and native-table label.
series *readonly ChartSeries[]Validated series definitions with semantic colors and optional non-color line encodings.
data *ChartDataEqual-length Float64 columns; NaN terminates line and fill.
x *import("./chart-types.ts").ChartTimeAxis | import("./chart-types.ts").ChartNumberAxisTime or numeric domain formatting.
yimport("./chart-types.ts").ChartValueAxisShared value formatting and optional zero baseline.
height *numberReserved SVG height, at least 120 CSS pixels.
legendimport("./chart-types.ts").ChartLegendinlineInline, stacked, or hidden series key.
tooltipbooleantrueWhether single-tab-stop pointer and keyboard inspection is enabled.
annotationsreadonly ChartAnnotation[]Optional labeled domain positions.
emptyJSX.ElementOptional empty-state content.
loadingbooleanfalseMarks retained accepted content busy.
tableimport("./chart-types.ts").ChartTableOptionsNative-table disclosure label and bounded page size.
classstringOptional class appended to the figure.
Native Solid/HTML attributes remain available and are omitted from this authored-prop view.