Compose, coordinate, and render dashboards โ collections of linked CanvasXpress visualizations โ from a single declarative JSON spec. See the repository README for the library API.
Click to filter. Two datasets (24 orders, 12 reps) linked on
Region with markingMode:"filter": select bars in one
panel and the others narrow to the matching rows โ the signature BI
cross-filter gesture, no code. A Reset cross-filter control clears it.
The same markingMode:"filter" gesture on scientific data:
16 patients linked to their expression samples by patient id. Select
responders in the tumor-response scatter and the heatmap and PD-L1
boxplot filter to just those patients' samples โ and the reverse.
The same linked data as the cross-filter demo, with
markingMode:"highlight": clicking a bar outlines the
related rep rows while the rest stay visible โ compare it to Filter and Ghost.
The same linked data with markingMode:"ghost": clicking a bar
fades back the unrelated rep rows so the selection stands out โ the
fourth linked-selection mode alongside Focus, Highlight and Filter.
Two panels follow live streams (kind:"live"): each
keeps the last 60 seconds and slides forward as readings arrive, one
redraw per frame. A 24-hour snapshot below gives them context.
Signed in, it streams from the server; elsewhere the browser
simulates the same messages.
The data model without JSON: calculated fields computed once on a source (the Filters panel lists them), a product summary shaped by a group-by run in the browser, orders and customers linked by customer, and a join for revenue by segment.
A 60-patient oncology cohort from three sources: expression
joined to clinical on patient_id, lab visits
related by patient (cross-source marking), a Filters panel
with saved schemes, an R data function ranking genes against
survival, and a per-patient KaplanโMeier curve.
A single OptionsWall composite over real IBM data (candlestick core
flanked by put/call walls). An Expiry slider swaps the chain
across 14 expiries and an IV/Premium toggle switches the flank metric โ
both mode:"config" controls driving updateConfig.
Live from ccle.sqlite: pick a gene โ violin distribution
by disease, genesรcell-lines heatmap, CNV-vs-RNA correlation (X/Y
selectors), and a mutations lollipop. Reproduces the retired
ccleServices.pl widget.
Live from tcga.sqlite: pick a gene โ its expression across
the 33 TCGA cancer types (violin + boxplot) and its somatic mutations
mapped over the gene body.
Live from gtex.sqlite: pick a gene โ its expression across
~54 GTEx tissues as a violin + boxplot.
Live from gencode.sqlite: pick a gene โ a genome browser
of its transcript exon models plus the GWAS Catalog SNPs in the
region.
Live from wp.sqlite: pick a human pathway โ its member
genes ranked by hub-ness (how many pathways each belongs to), plus a
member-gene table.
Manufacturing quality board: four ring meters (three averages โ yield, defect rate, on-time โ plus a total inspection count) over 500 inspection records, a 500-point yield run chart per line, and a 500-bar defect-rate chart. Line and Shift controls filter every panel.
โ๏ธ Open in Builder60-sample immuno-oncology study: two boxplots with individual samples overlaid (IL-6 by group, TNF-ฮฑ by response), an IL-6 vs TNF-ฮฑ scatter, and a 24-gene inflammation heatmap. Treatment-group and response filter controls drive every panel.
โ๏ธ Open in BuilderScientific board over six RNA-seq datasets (>1,000 records each): a clustered expression heatmap, a differential-expression volcano, MA and two-contrast scatters, a 1,600-cell single-cell UMAP, a sample-count ring meter, a response-by-stage stacked bar, and a Kaplan-Meier survival curve.
โ๏ธ Open in BuilderBackend-free showcase: three linked panels (Bar, Pie, Line) plus a broadcast-aware data table. Click anything โ selection coordinates across the board.
โ๏ธ Open in BuilderBackend-free KPI board: a Region filter control, three ring-card meters that summarize raw records into headline metrics, a grouped bar chart, and a 24-month trend line.
โ๏ธ Open in BuilderHealth-economics board over 600 patient records across five indications: cost per patient, cost per QALY and cohort size (filtered by indication), a cost-effectiveness plane, the ICER vs standard of care, and a 12-month budget-impact trend.
โ๏ธ Open in BuilderReal database connection: revenue by region read live from a SQLite DB
(examples/data/sales.db) over /api/data into a
bar and a share pie, with caching and a 3s refresh.
Parameterized dashboard over a real SQLite database: a Region dropdown
and a debounced product Search re-query /api/data?source=salesProducts
server-side, and clicking a โRevenue by regionโ bar cross-filters every panel.
Genomics: clustered heatmap, oncoprint, and KaplanโMeier survival, packaged from distilled CSV tables + a recipe into one spec. Clustering and KM math run in the browser.
The product story behind the reproducible bench: raw run โ plain-language description โ recipe โ self-regenerating figures.