Build histograms with a complete start + width + count bin contract, documented presets, and raw-value or frequency-table input.
-
Set the first class boundary, interval width, and bin count together.
-
Use Sturges, square-root, or Freedman–Diaconis with the formula shown.
-
Overlay an optional per-group normal reference curve without changing the bins.
-
Paste raw values by group or a Value + Frequency table.
-
Copy or download the exact frequency table behind the bars.
-
Paste CSV, TSV, semicolon-separated, or pipe-separated text.
-
Keep the latest draft in this browser, or save and reopen a local project.
-
Export watermark-free SVG and 1×, 2×, 4×, or 6× PNG.
-
Copy SVG, create a URL-fragment share link, or download the evidence ZIP.
-
Add a source note without sending source rows to a chart service.
Parsing, calculation, SVG layout, autosave, share-link encoding, and export run
in the current browser tab. The production modules in src/ have no dataset
upload endpoint, telemetry call, account system, or third-party chart runtime.
URL-fragment sharing is not encryption. Anyone who receives a link can read the encoded data, so use a local project file for sensitive or large datasets.
src/lab-core.js— defensive table parsing, safe SVG helpers, and export.src/stats-core.js— shared parser, summaries, quartiles, bins, stems, and renderer.src/stats-app.js— autosave, local projects, URL fragments, and evidence exports.src/wp-lab.css— the production Visual Lab interface styles.SOURCE_MANIFEST.json— SHA-256 hashes of the production-derived modules.
The files in src/ are copied from Visual Lab 0.12.1; the manifest lets
you compare a published repository with the matching release package.
Serve the repository over localhost so browser modules can load:
python3 -m http.server 8000 --bind 127.0.0.1Then open http://127.0.0.1:8000/demo/.
npm testThe calculation tests have no package dependencies.
The shared statistics engine accepts one to four groups and up to 10,000 expanded observations. It does not add violin, notched-box, stacked-histogram, or decorative jitter modes.
MIT