@sophistry/charts 0.0.0-stage → 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +32 -2
- package/dist/3d/bar-chart3d.d.ts +56 -0
- package/dist/3d/bar-chart3d.d.ts.map +1 -0
- package/dist/3d/definitions.d.ts +38 -0
- package/dist/3d/definitions.d.ts.map +1 -0
- package/dist/3d/definitions.js +14 -0
- package/dist/3d/forward.d.ts +65 -0
- package/dist/3d/forward.d.ts.map +1 -0
- package/dist/3d/index.d.ts +31 -0
- package/dist/3d/index.d.ts.map +1 -0
- package/dist/3d/index.js +1 -0
- package/dist/3d/quiver3d.d.ts +53 -0
- package/dist/3d/quiver3d.d.ts.map +1 -0
- package/dist/3d/scatter3d.d.ts +45 -0
- package/dist/3d/scatter3d.d.ts.map +1 -0
- package/dist/3d/stem3d.d.ts +46 -0
- package/dist/3d/stem3d.d.ts.map +1 -0
- package/dist/3d/surface-grid3d.d.ts +34 -0
- package/dist/3d/surface-grid3d.d.ts.map +1 -0
- package/dist/3d/tri-surface3d.d.ts +46 -0
- package/dist/3d/tri-surface3d.d.ts.map +1 -0
- package/dist/3d/voxels3d.d.ts +26 -0
- package/dist/3d/voxels3d.d.ts.map +1 -0
- package/dist/3d/wireframe3d.d.ts +31 -0
- package/dist/3d/wireframe3d.d.ts.map +1 -0
- package/dist/band.d.ts +21 -0
- package/dist/band.d.ts.map +1 -0
- package/dist/bars/bar-chart.d.ts +144 -0
- package/dist/bars/bar-chart.d.ts.map +1 -0
- package/dist/bars/bar-labels.d.ts +117 -0
- package/dist/bars/bar-labels.d.ts.map +1 -0
- package/dist/bars/bars.d.ts +224 -0
- package/dist/bars/bars.d.ts.map +1 -0
- package/dist/bars/bullet.d.ts +158 -0
- package/dist/bars/bullet.d.ts.map +1 -0
- package/dist/bars/candlestick.d.ts +98 -0
- package/dist/bars/candlestick.d.ts.map +1 -0
- package/dist/bars/funnel.d.ts +91 -0
- package/dist/bars/funnel.d.ts.map +1 -0
- package/dist/bars/histogram.d.ts +109 -0
- package/dist/bars/histogram.d.ts.map +1 -0
- package/dist/bars/index.d.ts +23 -0
- package/dist/bars/index.d.ts.map +1 -0
- package/dist/bars/race.d.ts +29 -0
- package/dist/bars/race.d.ts.map +1 -0
- package/dist/bars/rules.d.ts +122 -0
- package/dist/bars/rules.d.ts.map +1 -0
- package/dist/bars/shared.d.ts +42 -0
- package/dist/bars/shared.d.ts.map +1 -0
- package/dist/bars/transforms.d.ts +250 -0
- package/dist/bars/transforms.d.ts.map +1 -0
- package/dist/bars/waterfall.d.ts +107 -0
- package/dist/bars/waterfall.d.ts.map +1 -0
- package/dist/batch.d.ts +143 -0
- package/dist/batch.d.ts.map +1 -0
- package/dist/channels-_Xf-p6Lx.js +56 -0
- package/dist/chart.d.ts +88 -0
- package/dist/chart.d.ts.map +1 -0
- package/dist/color-norm.d.ts +91 -0
- package/dist/color-norm.d.ts.map +1 -0
- package/dist/context.d.ts +112 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/curves/density.d.ts +126 -0
- package/dist/curves/density.d.ts.map +1 -0
- package/dist/curves/ecdf.d.ts +73 -0
- package/dist/curves/ecdf.d.ts.map +1 -0
- package/dist/curves/fill-between.d.ts +101 -0
- package/dist/curves/fill-between.d.ts.map +1 -0
- package/dist/curves/index.d.ts +16 -0
- package/dist/curves/index.d.ts.map +1 -0
- package/dist/curves/line-plot.d.ts +105 -0
- package/dist/curves/line-plot.d.ts.map +1 -0
- package/dist/curves/regression.d.ts +125 -0
- package/dist/curves/regression.d.ts.map +1 -0
- package/dist/curves/shared.d.ts +53 -0
- package/dist/curves/shared.d.ts.map +1 -0
- package/dist/curves/stack-plot.d.ts +141 -0
- package/dist/curves/stack-plot.d.ts.map +1 -0
- package/dist/curves/stairs.d.ts +171 -0
- package/dist/curves/stairs.d.ts.map +1 -0
- package/dist/data/channels.d.ts +171 -0
- package/dist/data/channels.d.ts.map +1 -0
- package/dist/end-space.d.ts +82 -0
- package/dist/end-space.d.ts.map +1 -0
- package/dist/entries/definitions.d.ts +21 -0
- package/dist/entries/definitions.d.ts.map +1 -0
- package/dist/entries/definitions.js +6 -0
- package/dist/frame/band-axis.d.ts +43 -0
- package/dist/frame/band-axis.d.ts.map +1 -0
- package/dist/frame/coords.d.ts +112 -0
- package/dist/frame/coords.d.ts.map +1 -0
- package/dist/frame/fit.d.ts +171 -0
- package/dist/frame/fit.d.ts.map +1 -0
- package/dist/frame/format.d.ts +41 -0
- package/dist/frame/format.d.ts.map +1 -0
- package/dist/frame/guide-metrics.d.ts +37 -0
- package/dist/frame/guide-metrics.d.ts.map +1 -0
- package/dist/frame/guides.d.ts +68 -0
- package/dist/frame/guides.d.ts.map +1 -0
- package/dist/frame/keys.d.ts +97 -0
- package/dist/frame/keys.d.ts.map +1 -0
- package/dist/frame/layout.d.ts +146 -0
- package/dist/frame/layout.d.ts.map +1 -0
- package/dist/frame/registry.d.ts +32 -0
- package/dist/frame/registry.d.ts.map +1 -0
- package/dist/frame/reports.d.ts +54 -0
- package/dist/frame/reports.d.ts.map +1 -0
- package/dist/frame/secondary-axes.d.ts +74 -0
- package/dist/frame/secondary-axes.d.ts.map +1 -0
- package/dist/frame/secondary.d.ts +57 -0
- package/dist/frame/secondary.d.ts.map +1 -0
- package/dist/frame/tooltip-overlay.d.ts +65 -0
- package/dist/frame/tooltip-overlay.d.ts.map +1 -0
- package/dist/frame/types.d.ts +659 -0
- package/dist/frame/types.d.ts.map +1 -0
- package/dist/grids/barbs.d.ts +52 -0
- package/dist/grids/barbs.d.ts.map +1 -0
- package/dist/grids/cell-rects.d.ts +38 -0
- package/dist/grids/cell-rects.d.ts.map +1 -0
- package/dist/grids/cells.d.ts +131 -0
- package/dist/grids/cells.d.ts.map +1 -0
- package/dist/grids/contour-f.d.ts +81 -0
- package/dist/grids/contour-f.d.ts.map +1 -0
- package/dist/grids/contour-shared.d.ts +54 -0
- package/dist/grids/contour-shared.d.ts.map +1 -0
- package/dist/grids/contour.d.ts +85 -0
- package/dist/grids/contour.d.ts.map +1 -0
- package/dist/grids/dendrogram.d.ts +105 -0
- package/dist/grids/dendrogram.d.ts.map +1 -0
- package/dist/grids/heatmap.d.ts +164 -0
- package/dist/grids/heatmap.d.ts.map +1 -0
- package/dist/grids/hex-bin.d.ts +94 -0
- package/dist/grids/hex-bin.d.ts.map +1 -0
- package/dist/grids/hist2d.d.ts +108 -0
- package/dist/grids/hist2d.d.ts.map +1 -0
- package/dist/grids/imshow.d.ts +85 -0
- package/dist/grids/imshow.d.ts.map +1 -0
- package/dist/grids/index.d.ts +27 -0
- package/dist/grids/index.d.ts.map +1 -0
- package/dist/grids/pcolormesh.d.ts +91 -0
- package/dist/grids/pcolormesh.d.ts.map +1 -0
- package/dist/grids/ramp-cells.d.ts +67 -0
- package/dist/grids/ramp-cells.d.ts.map +1 -0
- package/dist/grids/tri-contour.d.ts +121 -0
- package/dist/grids/tri-contour.d.ts.map +1 -0
- package/dist/grids/tri-shared.d.ts +62 -0
- package/dist/grids/tri-shared.d.ts.map +1 -0
- package/dist/grids/tripcolor.d.ts +74 -0
- package/dist/grids/tripcolor.d.ts.map +1 -0
- package/dist/guides/colorbar.d.ts +111 -0
- package/dist/guides/colorbar.d.ts.map +1 -0
- package/dist/guides/index.d.ts +12 -0
- package/dist/guides/index.d.ts.map +1 -0
- package/dist/guides/legend.d.ts +119 -0
- package/dist/guides/legend.d.ts.map +1 -0
- package/dist/guides/nodes.d.ts +14 -0
- package/dist/guides/nodes.d.ts.map +1 -0
- package/dist/guides/size-legend.d.ts +234 -0
- package/dist/guides/size-legend.d.ts.map +1 -0
- package/dist/hierarchy/breadcrumbs.d.ts +134 -0
- package/dist/hierarchy/breadcrumbs.d.ts.map +1 -0
- package/dist/hierarchy/circle-pack.d.ts +73 -0
- package/dist/hierarchy/circle-pack.d.ts.map +1 -0
- package/dist/hierarchy/drill.d.ts +246 -0
- package/dist/hierarchy/drill.d.ts.map +1 -0
- package/dist/hierarchy/frame.d.ts +68 -0
- package/dist/hierarchy/frame.d.ts.map +1 -0
- package/dist/hierarchy/icicle.d.ts +77 -0
- package/dist/hierarchy/icicle.d.ts.map +1 -0
- package/dist/hierarchy/index.d.ts +21 -0
- package/dist/hierarchy/index.d.ts.map +1 -0
- package/dist/hierarchy/labels.d.ts +25 -0
- package/dist/hierarchy/labels.d.ts.map +1 -0
- package/dist/hierarchy/mosaic.d.ts +131 -0
- package/dist/hierarchy/mosaic.d.ts.map +1 -0
- package/dist/hierarchy/own-tooltip.d.ts +13 -0
- package/dist/hierarchy/own-tooltip.d.ts.map +1 -0
- package/dist/hierarchy/props.d.ts +14 -0
- package/dist/hierarchy/props.d.ts.map +1 -0
- package/dist/hierarchy/sankey.d.ts +133 -0
- package/dist/hierarchy/sankey.d.ts.map +1 -0
- package/dist/hierarchy/shared.d.ts +248 -0
- package/dist/hierarchy/shared.d.ts.map +1 -0
- package/dist/hierarchy/sunburst.d.ts +75 -0
- package/dist/hierarchy/sunburst.d.ts.map +1 -0
- package/dist/hierarchy/tree.d.ts +125 -0
- package/dist/hierarchy/tree.d.ts.map +1 -0
- package/dist/hierarchy/treemap.d.ts +77 -0
- package/dist/hierarchy/treemap.d.ts.map +1 -0
- package/dist/index.d.ts +30 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +5 -0
- package/dist/item-tooltip.d.ts +34 -0
- package/dist/item-tooltip.d.ts.map +1 -0
- package/dist/join.d.ts +224 -0
- package/dist/join.d.ts.map +1 -0
- package/dist/math/3d/bar3d.d.ts +28 -0
- package/dist/math/3d/bar3d.d.ts.map +1 -0
- package/dist/math/3d/quiver3d.d.ts +27 -0
- package/dist/math/3d/quiver3d.d.ts.map +1 -0
- package/dist/math/3d/scatter3d.d.ts +16 -0
- package/dist/math/3d/scatter3d.d.ts.map +1 -0
- package/dist/math/3d/stem3d.d.ts +23 -0
- package/dist/math/3d/stem3d.d.ts.map +1 -0
- package/dist/math/3d/surfaceGrid3d.d.ts +34 -0
- package/dist/math/3d/surfaceGrid3d.d.ts.map +1 -0
- package/dist/math/3d/trisurface.d.ts +12 -0
- package/dist/math/3d/trisurface.d.ts.map +1 -0
- package/dist/math/3d/voxels.d.ts +18 -0
- package/dist/math/3d/voxels.d.ts.map +1 -0
- package/dist/math/aggregate.d.ts +69 -0
- package/dist/math/aggregate.d.ts.map +1 -0
- package/dist/math/bar.d.ts +32 -0
- package/dist/math/bar.d.ts.map +1 -0
- package/dist/math/barLabels.d.ts +84 -0
- package/dist/math/barLabels.d.ts.map +1 -0
- package/dist/math/barbs.d.ts +37 -0
- package/dist/math/barbs.d.ts.map +1 -0
- package/dist/math/boxplot.d.ts +37 -0
- package/dist/math/boxplot.d.ts.map +1 -0
- package/dist/math/breadcrumbs.d.ts +129 -0
- package/dist/math/breadcrumbs.d.ts.map +1 -0
- package/dist/math/bubble.d.ts +39 -0
- package/dist/math/bubble.d.ts.map +1 -0
- package/dist/math/bullet.d.ts +111 -0
- package/dist/math/bullet.d.ts.map +1 -0
- package/dist/math/chord.d.ts +104 -0
- package/dist/math/chord.d.ts.map +1 -0
- package/dist/math/cluster.d.ts +89 -0
- package/dist/math/cluster.d.ts.map +1 -0
- package/dist/math/contour.d.ts +49 -0
- package/dist/math/contour.d.ts.map +1 -0
- package/dist/math/contourf.d.ts +51 -0
- package/dist/math/contourf.d.ts.map +1 -0
- package/dist/math/dodge.d.ts +37 -0
- package/dist/math/dodge.d.ts.map +1 -0
- package/dist/math/ecdf.d.ts +42 -0
- package/dist/math/ecdf.d.ts.map +1 -0
- package/dist/math/errorbar.d.ts +28 -0
- package/dist/math/errorbar.d.ts.map +1 -0
- package/dist/math/eventplot.d.ts +27 -0
- package/dist/math/eventplot.d.ts.map +1 -0
- package/dist/math/facet.d.ts +91 -0
- package/dist/math/facet.d.ts.map +1 -0
- package/dist/math/fillBetween.d.ts +29 -0
- package/dist/math/fillBetween.d.ts.map +1 -0
- package/dist/math/gauge.d.ts +72 -0
- package/dist/math/gauge.d.ts.map +1 -0
- package/dist/math/hexbin.d.ts +21 -0
- package/dist/math/hexbin.d.ts.map +1 -0
- package/dist/math/hierarchy.d.ts +180 -0
- package/dist/math/hierarchy.d.ts.map +1 -0
- package/dist/math/hierarchyJoin.d.ts +60 -0
- package/dist/math/hierarchyJoin.d.ts.map +1 -0
- package/dist/math/histogram.d.ts +37 -0
- package/dist/math/histogram.d.ts.map +1 -0
- package/dist/math/histogram2d.d.ts +45 -0
- package/dist/math/histogram2d.d.ts.map +1 -0
- package/dist/math/imshow.d.ts +27 -0
- package/dist/math/imshow.d.ts.map +1 -0
- package/dist/math/index.d.ts +140 -0
- package/dist/math/index.d.ts.map +1 -0
- package/dist/math/index.js +3 -0
- package/dist/math/jitter.d.ts +17 -0
- package/dist/math/jitter.d.ts.map +1 -0
- package/dist/math/join.d.ts +136 -0
- package/dist/math/join.d.ts.map +1 -0
- package/dist/math/keyframes.d.ts +128 -0
- package/dist/math/keyframes.d.ts.map +1 -0
- package/dist/math/legend.d.ts +121 -0
- package/dist/math/legend.d.ts.map +1 -0
- package/dist/math/line.d.ts +54 -0
- package/dist/math/line.d.ts.map +1 -0
- package/dist/math/morph.d.ts +82 -0
- package/dist/math/morph.d.ts.map +1 -0
- package/dist/math/mosaic.d.ts +120 -0
- package/dist/math/mosaic.d.ts.map +1 -0
- package/dist/math/ordinal.d.ts +80 -0
- package/dist/math/ordinal.d.ts.map +1 -0
- package/dist/math/parallel.d.ts +39 -0
- package/dist/math/parallel.d.ts.map +1 -0
- package/dist/math/pcolormesh.d.ts +23 -0
- package/dist/math/pcolormesh.d.ts.map +1 -0
- package/dist/math/pie.d.ts +106 -0
- package/dist/math/pie.d.ts.map +1 -0
- package/dist/math/polarArea.d.ts +35 -0
- package/dist/math/polarArea.d.ts.map +1 -0
- package/dist/math/radar.d.ts +111 -0
- package/dist/math/radar.d.ts.map +1 -0
- package/dist/math/range.d.ts +99 -0
- package/dist/math/range.d.ts.map +1 -0
- package/dist/math/regression.d.ts +110 -0
- package/dist/math/regression.d.ts.map +1 -0
- package/dist/math/reveal.d.ts +64 -0
- package/dist/math/reveal.d.ts.map +1 -0
- package/dist/math/sankey.d.ts +155 -0
- package/dist/math/sankey.d.ts.map +1 -0
- package/dist/math/scatter.d.ts +15 -0
- package/dist/math/scatter.d.ts.map +1 -0
- package/dist/math/shared/binning.d.ts +24 -0
- package/dist/math/shared/binning.d.ts.map +1 -0
- package/dist/math/shared/gridCells.d.ts +42 -0
- package/dist/math/shared/gridCells.d.ts.map +1 -0
- package/dist/math/shared/gridExtent.d.ts +6 -0
- package/dist/math/shared/gridExtent.d.ts.map +1 -0
- package/dist/math/shared/pairs.d.ts +3 -0
- package/dist/math/shared/pairs.d.ts.map +1 -0
- package/dist/math/shared/polar.d.ts +24 -0
- package/dist/math/shared/polar.d.ts.map +1 -0
- package/dist/math/stack.d.ts +70 -0
- package/dist/math/stack.d.ts.map +1 -0
- package/dist/math/stackplot.d.ts +36 -0
- package/dist/math/stackplot.d.ts.map +1 -0
- package/dist/math/stairs.d.ts +18 -0
- package/dist/math/stairs.d.ts.map +1 -0
- package/dist/math/stem.d.ts +22 -0
- package/dist/math/stem.d.ts.map +1 -0
- package/dist/math/symbol.d.ts +26 -0
- package/dist/math/symbol.d.ts.map +1 -0
- package/dist/math/tree.d.ts +118 -0
- package/dist/math/tree.d.ts.map +1 -0
- package/dist/math/tricontour.d.ts +77 -0
- package/dist/math/tricontour.d.ts.map +1 -0
- package/dist/math/violin.d.ts +100 -0
- package/dist/math/violin.d.ts.map +1 -0
- package/dist/math/waffle.d.ts +49 -0
- package/dist/math/waffle.d.ts.map +1 -0
- package/dist/math/waterfall.d.ts +29 -0
- package/dist/math/waterfall.d.ts.map +1 -0
- package/dist/math-CSHNpGej.js +3648 -0
- package/dist/mix.d.ts +25 -0
- package/dist/mix.d.ts.map +1 -0
- package/dist/multiview/brush.d.ts +166 -0
- package/dist/multiview/brush.d.ts.map +1 -0
- package/dist/multiview/chart-group.d.ts +266 -0
- package/dist/multiview/chart-group.d.ts.map +1 -0
- package/dist/multiview/chart-link.d.ts +189 -0
- package/dist/multiview/chart-link.d.ts.map +1 -0
- package/dist/multiview/chart-zoom.d.ts +145 -0
- package/dist/multiview/chart-zoom.d.ts.map +1 -0
- package/dist/multiview/facet.d.ts +239 -0
- package/dist/multiview/facet.d.ts.map +1 -0
- package/dist/multiview/group-guides.d.ts +100 -0
- package/dist/multiview/group-guides.d.ts.map +1 -0
- package/dist/multiview/index.d.ts +18 -0
- package/dist/multiview/index.d.ts.map +1 -0
- package/dist/multiview/joint-plot.d.ts +115 -0
- package/dist/multiview/joint-plot.d.ts.map +1 -0
- package/dist/multiview/pair-plot.d.ts +154 -0
- package/dist/multiview/pair-plot.d.ts.map +1 -0
- package/dist/multiview/panels.d.ts +23 -0
- package/dist/multiview/panels.d.ts.map +1 -0
- package/dist/multiview/parallel-coordinates.d.ts +110 -0
- package/dist/multiview/parallel-coordinates.d.ts.map +1 -0
- package/dist/points/event-plot.d.ts +68 -0
- package/dist/points/event-plot.d.ts.map +1 -0
- package/dist/points/index.d.ts +20 -0
- package/dist/points/index.d.ts.map +1 -0
- package/dist/points/labels.d.ts +71 -0
- package/dist/points/labels.d.ts.map +1 -0
- package/dist/points/links.d.ts +124 -0
- package/dist/points/links.d.ts.map +1 -0
- package/dist/points/rects.d.ts +81 -0
- package/dist/points/rects.d.ts.map +1 -0
- package/dist/points/rug.d.ts +73 -0
- package/dist/points/rug.d.ts.map +1 -0
- package/dist/points/scatter.d.ts +170 -0
- package/dist/points/scatter.d.ts.map +1 -0
- package/dist/points/segment-marks.d.ts +40 -0
- package/dist/points/segment-marks.d.ts.map +1 -0
- package/dist/points/shared.d.ts +35 -0
- package/dist/points/shared.d.ts.map +1 -0
- package/dist/points/stem.d.ts +76 -0
- package/dist/points/stem.d.ts.map +1 -0
- package/dist/points/strip.d.ts +146 -0
- package/dist/points/strip.d.ts.map +1 -0
- package/dist/points/symbol-marker.d.ts +34 -0
- package/dist/points/symbol-marker.d.ts.map +1 -0
- package/dist/points/ticks.d.ts +103 -0
- package/dist/points/ticks.d.ts.map +1 -0
- package/dist/props.d.ts +127 -0
- package/dist/props.d.ts.map +1 -0
- package/dist/radial/chord.d.ts +149 -0
- package/dist/radial/chord.d.ts.map +1 -0
- package/dist/radial/gauge.d.ts +127 -0
- package/dist/radial/gauge.d.ts.map +1 -0
- package/dist/radial/index.d.ts +16 -0
- package/dist/radial/index.d.ts.map +1 -0
- package/dist/radial/pie-chart.d.ts +144 -0
- package/dist/radial/pie-chart.d.ts.map +1 -0
- package/dist/radial/polar-area-chart.d.ts +136 -0
- package/dist/radial/polar-area-chart.d.ts.map +1 -0
- package/dist/radial/radar-chart.d.ts +177 -0
- package/dist/radial/radar-chart.d.ts.map +1 -0
- package/dist/radial/radial-bar-chart.d.ts +117 -0
- package/dist/radial/radial-bar-chart.d.ts.map +1 -0
- package/dist/radial/shared.d.ts +79 -0
- package/dist/radial/shared.d.ts.map +1 -0
- package/dist/radial/waffle.d.ts +131 -0
- package/dist/radial/waffle.d.ts.map +1 -0
- package/dist/raster.d.ts +44 -0
- package/dist/raster.d.ts.map +1 -0
- package/dist/series.d.ts +72 -0
- package/dist/series.d.ts.map +1 -0
- package/dist/src-CwGo1bes.js +19221 -0
- package/dist/stagger.d.ts +55 -0
- package/dist/stagger.d.ts.map +1 -0
- package/dist/statistics/box-plot.d.ts +152 -0
- package/dist/statistics/box-plot.d.ts.map +1 -0
- package/dist/statistics/error-bar.d.ts +149 -0
- package/dist/statistics/error-bar.d.ts.map +1 -0
- package/dist/statistics/groups.d.ts +141 -0
- package/dist/statistics/groups.d.ts.map +1 -0
- package/dist/statistics/index.d.ts +8 -0
- package/dist/statistics/index.d.ts.map +1 -0
- package/dist/statistics/violin-plot.d.ts +144 -0
- package/dist/statistics/violin-plot.d.ts.map +1 -0
- package/dist/text-width.d.ts +10 -0
- package/dist/text-width.d.ts.map +1 -0
- package/dist/tooltip.d.ts +277 -0
- package/dist/tooltip.d.ts.map +1 -0
- package/dist/util.d.ts +34 -0
- package/dist/util.d.ts.map +1 -0
- package/dist/voxels-9lJ2TZS4.js +235 -0
- package/dist/wireframe3d-D157GZAq.js +345 -0
- package/package.json +86 -3
|
@@ -0,0 +1,110 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Regression and intervals: least-squares polynomial fits with a confidence
|
|
3
|
+
* band for the fitted mean, LOESS smoothing (optionally robust, with a band),
|
|
4
|
+
* and the t-based confidence interval of a sample mean.
|
|
5
|
+
*/
|
|
6
|
+
/** @category Math */
|
|
7
|
+
export interface RegressionPoint {
|
|
8
|
+
x: number;
|
|
9
|
+
/** The fitted value. */
|
|
10
|
+
y: number;
|
|
11
|
+
/** Lower end of the confidence band for the fitted mean (`y` when there is no band). */
|
|
12
|
+
low: number;
|
|
13
|
+
/** Upper end of the band. */
|
|
14
|
+
high: number;
|
|
15
|
+
}
|
|
16
|
+
/** @category Math */
|
|
17
|
+
export interface RegressionOptions {
|
|
18
|
+
/** Polynomial degree: 1 is a straight line, 2 a parabola, ... @default 1 */
|
|
19
|
+
degree?: number;
|
|
20
|
+
/** Confidence level of the band around the fitted mean, 0..1; 0 draws no band. @default 0.95 */
|
|
21
|
+
level?: number;
|
|
22
|
+
/** How many evenly spaced x positions to evaluate the fit at. @default 50 */
|
|
23
|
+
samples?: number;
|
|
24
|
+
/** The x span to evaluate over. Defaults to the data's x extent. */
|
|
25
|
+
domain?: [number, number];
|
|
26
|
+
}
|
|
27
|
+
/**
|
|
28
|
+
* A least-squares polynomial fit of `ys` on `xs`, with the confidence band
|
|
29
|
+
* of the fitted mean `ŷ ± t(level, n − p) · s · √(x₀ᵀ (XᵀX)⁻¹ x₀)`. Pairs
|
|
30
|
+
* with a non-finite member are dropped; with no more points than
|
|
31
|
+
* coefficients the result is `[]`.
|
|
32
|
+
*
|
|
33
|
+
* @param ys - Responses, paired with `xs` by index.
|
|
34
|
+
* @returns Points ascending in x.
|
|
35
|
+
* @category Math & helpers
|
|
36
|
+
*/
|
|
37
|
+
export declare function regression(xs: readonly number[], ys: readonly number[], options?: RegressionOptions): RegressionPoint[];
|
|
38
|
+
/** @category Math */
|
|
39
|
+
export interface LoessOptions {
|
|
40
|
+
/** Fraction of the points each local fit uses, 0..1. @default 0.3 */
|
|
41
|
+
bandwidth?: number;
|
|
42
|
+
/** How many evenly spaced x positions to evaluate at. @default 50 */
|
|
43
|
+
samples?: number;
|
|
44
|
+
/**
|
|
45
|
+
* Robustness iterations: each re-weights points by their residual (bisquare)
|
|
46
|
+
* and refits, so outliers stop pulling the smooth; 2 is the usual choice.
|
|
47
|
+
* @default 0
|
|
48
|
+
*/
|
|
49
|
+
iterations?: number;
|
|
50
|
+
}
|
|
51
|
+
/** @category Math */
|
|
52
|
+
export interface LoessBandOptions extends LoessOptions {
|
|
53
|
+
/** Confidence level of the band around the smooth, 0..1; 0 draws no band. @default 0.95 */
|
|
54
|
+
level?: number;
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* LOESS: a locally weighted linear fit at each sample over the nearest
|
|
58
|
+
* `bandwidth` fraction of the points (tricube weights), optionally robust to
|
|
59
|
+
* outliers. {@link loessBand} adds a confidence band.
|
|
60
|
+
*
|
|
61
|
+
* @param ys - Responses, paired with `xs` by index; non-finite pairs dropped.
|
|
62
|
+
* @returns Points ascending in x across the data's extent; `[]` with fewer than 2 points.
|
|
63
|
+
* @category Math & helpers
|
|
64
|
+
*/
|
|
65
|
+
export declare function loess(xs: readonly number[], ys: readonly number[], options?: LoessOptions): {
|
|
66
|
+
x: number;
|
|
67
|
+
y: number;
|
|
68
|
+
}[];
|
|
69
|
+
/**
|
|
70
|
+
* {@link loess} with a confidence band for the smooth:
|
|
71
|
+
* `ŷ ± t(level, δ₁) · σ̂ · ‖l(x₀)‖`, with `σ̂² = RSS / δ₁` and
|
|
72
|
+
* `δ₁ = tr((I − L)ᵀ(I − L))` over the smoother matrix `L`. Robustness
|
|
73
|
+
* weights are folded in, so ignored outliers don't widen the band.
|
|
74
|
+
*
|
|
75
|
+
* @param ys - Responses, paired with `xs` by index; non-finite pairs dropped.
|
|
76
|
+
* @returns Points ascending in x across the data's extent; `[]` with fewer
|
|
77
|
+
* than 2 points. With 3 points or fewer, or an interpolating smoother, no
|
|
78
|
+
* band (`low === high === y`).
|
|
79
|
+
* @category Math & helpers
|
|
80
|
+
*/
|
|
81
|
+
export declare function loessBand(xs: readonly number[], ys: readonly number[], options?: LoessBandOptions): RegressionPoint[];
|
|
82
|
+
/** @category Math */
|
|
83
|
+
export interface MeanInterval {
|
|
84
|
+
mean: number;
|
|
85
|
+
low: number;
|
|
86
|
+
high: number;
|
|
87
|
+
/** How many finite values the interval is over. */
|
|
88
|
+
n: number;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* The mean of `values` with an interval: `"ci"` the t-based confidence
|
|
92
|
+
* interval at `level`, `"se"` ± one standard error, `"sd"` ± one sample
|
|
93
|
+
* standard deviation. Non-finite values are dropped; with none every field
|
|
94
|
+
* is `NaN` and `n` is 0.
|
|
95
|
+
*
|
|
96
|
+
* @param interval - Defaults to `"ci"`.
|
|
97
|
+
* @param level - Confidence level for `"ci"`, 0..1. Defaults to 0.95.
|
|
98
|
+
* @category Math & helpers
|
|
99
|
+
*/
|
|
100
|
+
export declare function meanInterval(values: readonly number[], interval?: "ci" | "se" | "sd", level?: number): MeanInterval;
|
|
101
|
+
/**
|
|
102
|
+
* The `p` quantile of Student's t distribution with `df` degrees of
|
|
103
|
+
* freedom: exact for 1 and 2, a Cornish–Fisher expansion (within ~0.1%)
|
|
104
|
+
* above.
|
|
105
|
+
*
|
|
106
|
+
* @returns The quantile; `NaN` outside the domain.
|
|
107
|
+
* @category Math & helpers
|
|
108
|
+
*/
|
|
109
|
+
export declare function studentT(p: number, df: number): number;
|
|
110
|
+
//# sourceMappingURL=regression.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"regression.d.ts","sourceRoot":"","sources":["../../src/math/regression.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,qBAAqB;AACrB,MAAM,WAAW,eAAe;IAC/B,CAAC,EAAE,MAAM,CAAC;IACV,wBAAwB;IACxB,CAAC,EAAE,MAAM,CAAC;IACV,wFAAwF;IACxF,GAAG,EAAE,MAAM,CAAC;IACZ,6BAA6B;IAC7B,IAAI,EAAE,MAAM,CAAC;CACb;AAED,qBAAqB;AACrB,MAAM,WAAW,iBAAiB;IACjC,4EAA4E;IAC5E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,gGAAgG;IAChG,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,6EAA6E;IAC7E,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oEAAoE;IACpE,MAAM,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC1B;AAKD;;;;;;;;;GASG;AACH,wBAAgB,UAAU,CACzB,EAAE,EAAE,SAAS,MAAM,EAAE,EACrB,EAAE,EAAE,SAAS,MAAM,EAAE,EACrB,OAAO,GAAE,iBAAsB,GAC7B,eAAe,EAAE,CAkDnB;AAED,qBAAqB;AACrB,MAAM,WAAW,YAAY;IAC5B,qEAAqE;IACrE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qEAAqE;IACrE,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAqB;AACrB,MAAM,WAAW,gBAAiB,SAAQ,YAAY;IACrD,2FAA2F;IAC3F,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;;;;;;;GAQG;AACH,wBAAgB,KAAK,CACpB,EAAE,EAAE,SAAS,MAAM,EAAE,EACrB,EAAE,EAAE,SAAS,MAAM,EAAE,EACrB,OAAO,GAAE,YAAiB,GACxB;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,CAAC,EAAE,MAAM,CAAA;CAAE,EAAE,CAK5B;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,SAAS,CACxB,EAAE,EAAE,SAAS,MAAM,EAAE,EACrB,EAAE,EAAE,SAAS,MAAM,EAAE,EACrB,OAAO,GAAE,gBAAqB,GAC5B,eAAe,EAAE,CAuEnB;AA4CD,qBAAqB;AACrB,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,EAAE,MAAM,CAAC;IACb,mDAAmD;IACnD,CAAC,EAAE,MAAM,CAAC;CACV;AAED;;;;;;;;;GASG;AACH,wBAAgB,YAAY,CAC3B,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,QAAQ,GAAE,IAAI,GAAG,IAAI,GAAG,IAAW,EACnC,KAAK,SAAgB,GACnB,YAAY,CAgBd;AAED;;;;;;;GAOG;AACH,wBAAgB,QAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAWtD"}
|
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Reveals that follow the independent variable: geometry cut off at an x
|
|
3
|
+
* that sweeps left to right at a constant rate as `progress` runs 0 → 1, so
|
|
4
|
+
* reveal progress reads as progress along x. Works on points in scene units.
|
|
5
|
+
*/
|
|
6
|
+
import type { Bounds, Point } from "@sophistry/core/geometry";
|
|
7
|
+
/**
|
|
8
|
+
* The `[min, max]` x of every point in `polylines`, or undefined when there
|
|
9
|
+
* are none (or none finite).
|
|
10
|
+
*
|
|
11
|
+
* @category Math & helpers
|
|
12
|
+
*/
|
|
13
|
+
export declare function xExtent(polylines: readonly (readonly Point[])[]): [number, number] | undefined;
|
|
14
|
+
/**
|
|
15
|
+
* The parts of an open polyline at or left of `cutoff`; a line doubling back
|
|
16
|
+
* over the cut comes out in several pieces.
|
|
17
|
+
*
|
|
18
|
+
* @returns The kept pieces; pieces of fewer than two points are dropped.
|
|
19
|
+
* @category Math & helpers
|
|
20
|
+
*/
|
|
21
|
+
export declare function clipPolylineToX(points: readonly Point[], cutoff: number): Point[][];
|
|
22
|
+
/**
|
|
23
|
+
* A closed ring cut to the half-plane `x <= cutoff`, so a filled area
|
|
24
|
+
* reveals with a straight front. A ring given closed comes back closed.
|
|
25
|
+
*
|
|
26
|
+
* @returns The cut ring, or `[]` when nothing is left of the cut.
|
|
27
|
+
* @category Math & helpers
|
|
28
|
+
*/
|
|
29
|
+
export declare function clipRingToX(ring: readonly Point[], cutoff: number): Point[];
|
|
30
|
+
/**
|
|
31
|
+
* Where the cut stands at `progress`: linear across `extent`. Ease the
|
|
32
|
+
* track driving `progress` for an eased reveal.
|
|
33
|
+
*
|
|
34
|
+
* @category Math & helpers
|
|
35
|
+
*/
|
|
36
|
+
export declare function revealCutoff(progress: number, extent: readonly [number, number]): number;
|
|
37
|
+
/**
|
|
38
|
+
* Open polylines revealed left to right over their joint x extent, all cut
|
|
39
|
+
* at the same x so lines drawn together advance together.
|
|
40
|
+
*
|
|
41
|
+
* @param progress - 0..1.
|
|
42
|
+
* @category Math & helpers
|
|
43
|
+
*/
|
|
44
|
+
export declare function revealPolylinesAlongX(polylines: readonly (readonly Point[])[], progress: number): Point[][];
|
|
45
|
+
/**
|
|
46
|
+
* Closed rings (filled areas) revealed left to right over their joint x extent.
|
|
47
|
+
*
|
|
48
|
+
* @param progress - 0..1.
|
|
49
|
+
* @returns The visible rings; a ring entirely right of the cut is dropped.
|
|
50
|
+
* @category Math & helpers
|
|
51
|
+
*/
|
|
52
|
+
export declare function revealRingsAlongX(rings: readonly (readonly Point[])[], progress: number): Point[][];
|
|
53
|
+
/**
|
|
54
|
+
* The clip box revealing filled regions left to right: everything left of
|
|
55
|
+
* the reached x, with room around so only the front cuts. Unlike a cut, it
|
|
56
|
+
* leaves the geometry whole (no stroked edge along the front).
|
|
57
|
+
*
|
|
58
|
+
* @param polylines - The geometry being revealed, in scene units.
|
|
59
|
+
* @param progress - 0..1.
|
|
60
|
+
* @returns A box for `<Group clip>`, or undefined at `progress >= 1` or with no geometry.
|
|
61
|
+
* @category Math & helpers
|
|
62
|
+
*/
|
|
63
|
+
export declare function revealClipAlongX(polylines: readonly (readonly Point[])[], progress: number): Bounds | undefined;
|
|
64
|
+
//# sourceMappingURL=reveal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"reveal.d.ts","sourceRoot":"","sources":["../../src/math/reveal.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAE9D;;;;;GAKG;AACH,wBAAgB,OAAO,CACtB,SAAS,EAAE,SAAS,CAAC,SAAS,KAAK,EAAE,CAAC,EAAE,GACtC,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,SAAS,CAW9B;AAQD;;;;;;GAMG;AACH,wBAAgB,eAAe,CAC9B,MAAM,EAAE,SAAS,KAAK,EAAE,EACxB,MAAM,EAAE,MAAM,GACZ,KAAK,EAAE,EAAE,CAwBX;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CAAC,IAAI,EAAE,SAAS,KAAK,EAAE,EAAE,MAAM,EAAE,MAAM,GAAG,KAAK,EAAE,CAmB3E;AAED;;;;;GAKG;AACH,wBAAgB,YAAY,CAC3B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC,GAC/B,MAAM,CAER;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CACpC,SAAS,EAAE,SAAS,CAAC,SAAS,KAAK,EAAE,CAAC,EAAE,EACxC,QAAQ,EAAE,MAAM,GACd,KAAK,EAAE,EAAE,CAOX;AAED;;;;;;GAMG;AACH,wBAAgB,iBAAiB,CAChC,KAAK,EAAE,SAAS,CAAC,SAAS,KAAK,EAAE,CAAC,EAAE,EACpC,QAAQ,EAAE,MAAM,GACd,KAAK,EAAE,EAAE,CASX;AAED;;;;;;;;;GASG;AACH,wBAAgB,gBAAgB,CAC/B,SAAS,EAAE,SAAS,CAAC,SAAS,KAAK,EAAE,CAAC,EAAE,EACxC,QAAQ,EAAE,MAAM,GACd,MAAM,GAAG,SAAS,CAqBpB"}
|
|
@@ -0,0 +1,155 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Sankey layout: nodes in columns, links as ribbons as wide as their value.
|
|
3
|
+
* Coordinates are in a `[0, width] × [0, height]` box with **y pointing
|
|
4
|
+
* down**: `y0` is a node's top edge. A y-up renderer maps `y` to `top - y`.
|
|
5
|
+
*/
|
|
6
|
+
import type { Point } from "@sophistry/core/geometry";
|
|
7
|
+
/**
|
|
8
|
+
* A node id: whatever the links name their endpoints with.
|
|
9
|
+
*
|
|
10
|
+
* @category Math & helpers
|
|
11
|
+
*/
|
|
12
|
+
export type SankeyId = string | number;
|
|
13
|
+
/**
|
|
14
|
+
* One link of the input graph.
|
|
15
|
+
*
|
|
16
|
+
* @category Math & helpers
|
|
17
|
+
*/
|
|
18
|
+
export interface SankeyLinkInput {
|
|
19
|
+
source: SankeyId;
|
|
20
|
+
target: SankeyId;
|
|
21
|
+
/** The flow's size; non-finite and negative values count as 0. */
|
|
22
|
+
value: number;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* How nodes are assigned to columns: `"justify"` by longest path from a
|
|
26
|
+
* source with sinks in the last column; `"left"` by longest path from a
|
|
27
|
+
* source; `"right"` by longest path to a sink; `"center"` like `"left"` but
|
|
28
|
+
* each source one column before its nearest target.
|
|
29
|
+
*
|
|
30
|
+
* @category Math & helpers
|
|
31
|
+
*/
|
|
32
|
+
export type SankeyAlign = "justify" | "left" | "right" | "center";
|
|
33
|
+
/**
|
|
34
|
+
* Options for {@link sankeyLayout}.
|
|
35
|
+
*
|
|
36
|
+
* @category Math & helpers
|
|
37
|
+
*/
|
|
38
|
+
export interface SankeyOptions {
|
|
39
|
+
/**
|
|
40
|
+
* Node ids in stacking and colour order; ids named only by links are appended. Defaults to the
|
|
41
|
+
* link endpoints in first-seen order.
|
|
42
|
+
*/
|
|
43
|
+
nodes?: readonly SankeyId[];
|
|
44
|
+
/** Width of the layout box. @default 1 */
|
|
45
|
+
width?: number;
|
|
46
|
+
/** Height of the layout box. @default 1 */
|
|
47
|
+
height?: number;
|
|
48
|
+
/** Width of each node bar. Defaults to 2.4% of `width`. */
|
|
49
|
+
nodeWidth?: number;
|
|
50
|
+
/**
|
|
51
|
+
* Vertical gap between nodes in a column, shrunk if a tall column can't fit it. Defaults to 8%
|
|
52
|
+
* of `height`.
|
|
53
|
+
*/
|
|
54
|
+
nodePadding?: number;
|
|
55
|
+
/** Column assignment; see {@link SankeyAlign}. @default "justify" */
|
|
56
|
+
align?: SankeyAlign;
|
|
57
|
+
/** Relaxation passes pulling connected nodes level; 0 keeps the initial stacking. @default 6 */
|
|
58
|
+
iterations?: number;
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* One laid-out node. `y0 < y1` (y points down).
|
|
62
|
+
*
|
|
63
|
+
* @category Math & helpers
|
|
64
|
+
*/
|
|
65
|
+
export interface SankeyNode {
|
|
66
|
+
id: SankeyId;
|
|
67
|
+
/** Position in the node order (first-seen, or `options.nodes`). */
|
|
68
|
+
index: number;
|
|
69
|
+
/** `max(Σ incoming, Σ outgoing)`. */
|
|
70
|
+
value: number;
|
|
71
|
+
/** The column the node is drawn in, after `align`; 0 is the leftmost. */
|
|
72
|
+
depth: number;
|
|
73
|
+
x0: number;
|
|
74
|
+
x1: number;
|
|
75
|
+
y0: number;
|
|
76
|
+
y1: number;
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* One laid-out link. `y0`/`y1` are the ribbon's centreline at its source and
|
|
80
|
+
* target ends; its edges are `width / 2` either side.
|
|
81
|
+
*
|
|
82
|
+
* @category Math & helpers
|
|
83
|
+
*/
|
|
84
|
+
export interface SankeyLink {
|
|
85
|
+
/** Index of the source node in {@link SankeyLayout.nodes}. */
|
|
86
|
+
source: number;
|
|
87
|
+
/** Index of the target node in {@link SankeyLayout.nodes}. */
|
|
88
|
+
target: number;
|
|
89
|
+
/** The value used (non-finite and negative inputs read as 0). */
|
|
90
|
+
value: number;
|
|
91
|
+
/** Centreline y where the link leaves its source. */
|
|
92
|
+
y0: number;
|
|
93
|
+
/** Centreline y where the link enters its target. */
|
|
94
|
+
y1: number;
|
|
95
|
+
/** `value × ky`: the ribbon's thickness. */
|
|
96
|
+
width: number;
|
|
97
|
+
/** Position of the link in the input. */
|
|
98
|
+
index: number;
|
|
99
|
+
}
|
|
100
|
+
/**
|
|
101
|
+
* The result of {@link sankeyLayout}.
|
|
102
|
+
*
|
|
103
|
+
* @category Math & helpers
|
|
104
|
+
*/
|
|
105
|
+
export interface SankeyLayout {
|
|
106
|
+
nodes: SankeyNode[];
|
|
107
|
+
/** In input order. */
|
|
108
|
+
links: SankeyLink[];
|
|
109
|
+
/** Number of columns. */
|
|
110
|
+
columns: number;
|
|
111
|
+
/** The vertical scale: layout units per unit of value. */
|
|
112
|
+
ky: number;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* Lays out a Sankey diagram: each node gets a column and a height
|
|
116
|
+
* proportional to its value (`max(Σ in, Σ out)`), each link its attachment
|
|
117
|
+
* points. Relaxation passes pull nodes toward their neighbours, and links are
|
|
118
|
+
* ordered at each node so ribbons don't cross there. Deterministic.
|
|
119
|
+
*
|
|
120
|
+
* @returns Nodes and links in a `[0, width] × [0, height]` box, y down.
|
|
121
|
+
* @throws {Error} If the graph has a cycle (a self-loop included).
|
|
122
|
+
* @throws {Error} If `options.nodes` is given and a link names an id not in it.
|
|
123
|
+
* @category Math & helpers
|
|
124
|
+
*/
|
|
125
|
+
export declare function sankeyLayout(links: readonly SankeyLinkInput[], options?: SankeyOptions): SankeyLayout;
|
|
126
|
+
/**
|
|
127
|
+
* Options for {@link sankeyRibbon}.
|
|
128
|
+
*
|
|
129
|
+
* @category Math & helpers
|
|
130
|
+
*/
|
|
131
|
+
export interface SankeyRibbonOptions {
|
|
132
|
+
/** Points sampled along each edge. @default 24 */
|
|
133
|
+
samples?: number;
|
|
134
|
+
/**
|
|
135
|
+
* How much of the ribbon to keep from the source end, 0..1, for a
|
|
136
|
+
* left-to-right reveal; the cut is vertical.
|
|
137
|
+
* @default 1
|
|
138
|
+
*/
|
|
139
|
+
t?: number;
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* The outline of one link's ribbon as an open polygon: a cubic Bézier with
|
|
143
|
+
* horizontal end tangents along the top edge, the same curve `width` lower
|
|
144
|
+
* traced back. Coordinates are in the inputs' space.
|
|
145
|
+
*
|
|
146
|
+
* @param x0 - Where the ribbon leaves its source (the source node's `x1`).
|
|
147
|
+
* @param y0 - Centreline y at the source end (the link's `y0`).
|
|
148
|
+
* @param x1 - Where the ribbon enters its target (the target node's `x0`).
|
|
149
|
+
* @param y1 - Centreline y at the target end (the link's `y1`).
|
|
150
|
+
* @param width - The ribbon's thickness (the link's `width`).
|
|
151
|
+
* @returns `2 × samples` points, top edge forward then bottom edge back; empty when `t` is 0.
|
|
152
|
+
* @category Math & helpers
|
|
153
|
+
*/
|
|
154
|
+
export declare function sankeyRibbon(x0: number, y0: number, x1: number, y1: number, width: number, options?: SankeyRibbonOptions): Point[];
|
|
155
|
+
//# sourceMappingURL=sankey.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sankey.d.ts","sourceRoot":"","sources":["../../src/math/sankey.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGtD;;;;GAIG;AACH,MAAM,MAAM,QAAQ,GAAG,MAAM,GAAG,MAAM,CAAC;AAEvC;;;;GAIG;AACH,MAAM,WAAW,eAAe;IAC/B,MAAM,EAAE,QAAQ,CAAC;IACjB,MAAM,EAAE,QAAQ,CAAC;IACjB,kEAAkE;IAClE,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;;;;;;GAOG;AACH,MAAM,MAAM,WAAW,GAAG,SAAS,GAAG,MAAM,GAAG,OAAO,GAAG,QAAQ,CAAC;AAElE;;;;GAIG;AACH,MAAM,WAAW,aAAa;IAC7B;;;OAGG;IACH,KAAK,CAAC,EAAE,SAAS,QAAQ,EAAE,CAAC;IAC5B,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2DAA2D;IAC3D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,qEAAqE;IACrE,KAAK,CAAC,EAAE,WAAW,CAAC;IACpB,gGAAgG;IAChG,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IAC1B,EAAE,EAAE,QAAQ,CAAC;IACb,mEAAmE;IACnE,KAAK,EAAE,MAAM,CAAC;IACd,qCAAqC;IACrC,KAAK,EAAE,MAAM,CAAC;IACd,yEAAyE;IACzE,KAAK,EAAE,MAAM,CAAC;IACd,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;CACX;AAED;;;;;GAKG;AACH,MAAM,WAAW,UAAU;IAC1B,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf,8DAA8D;IAC9D,MAAM,EAAE,MAAM,CAAC;IACf,iEAAiE;IACjE,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,EAAE,EAAE,MAAM,CAAC;IACX,qDAAqD;IACrD,EAAE,EAAE,MAAM,CAAC;IACX,4CAA4C;IAC5C,KAAK,EAAE,MAAM,CAAC;IACd,yCAAyC;IACzC,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY;IAC5B,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,sBAAsB;IACtB,KAAK,EAAE,UAAU,EAAE,CAAC;IACpB,yBAAyB;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,0DAA0D;IAC1D,EAAE,EAAE,MAAM,CAAC;CACX;AAQD;;;;;;;;;;GAUG;AACH,wBAAgB,YAAY,CAC3B,KAAK,EAAE,SAAS,eAAe,EAAE,EACjC,OAAO,GAAE,aAAkB,GACzB,YAAY,CAiOd;AAyFD;;;;GAIG;AACH,MAAM,WAAW,mBAAmB;IACnC,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;;OAIG;IACH,CAAC,CAAC,EAAE,MAAM,CAAC;CACX;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,YAAY,CAC3B,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,EAAE,EAAE,MAAM,EACV,KAAK,EAAE,MAAM,EACb,OAAO,GAAE,mBAAwB,GAC/B,KAAK,EAAE,CAkBT"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/** `scatter(x, y)` — one marker per finite `(x, y)` pair. */
|
|
2
|
+
/** @category Math */
|
|
3
|
+
export interface ScatterPoint {
|
|
4
|
+
/** Index into the input `xs`/`ys`, keeping `sizes`/`colors` aligned past dropped pairs. */
|
|
5
|
+
index: number;
|
|
6
|
+
x: number;
|
|
7
|
+
y: number;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* The finite `(x, y)` pairs, paired by index, each keeping its index.
|
|
11
|
+
*
|
|
12
|
+
* @category Math & helpers
|
|
13
|
+
*/
|
|
14
|
+
export declare function scatterPoints(xs: readonly number[], ys: readonly number[]): ScatterPoint[];
|
|
15
|
+
//# sourceMappingURL=scatter.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scatter.d.ts","sourceRoot":"","sources":["../../src/math/scatter.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAI7D,qBAAqB;AACrB,MAAM,WAAW,YAAY;IAC5B,2FAA2F;IAC3F,KAAK,EAAE,MAAM,CAAC;IACd,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACV;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAC5B,EAAE,EAAE,SAAS,MAAM,EAAE,EACrB,EAAE,EAAE,SAAS,MAAM,EAAE,GACnB,YAAY,EAAE,CAUhB"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Equal-width bin math shared by `histogramBins` (1D) and `histogram2d` (2D):
|
|
3
|
+
* both bin a continuous range into `n` buckets with the same right-inclusive
|
|
4
|
+
* last bin and the same degenerate-range widening.
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* How many bins to use and where the last edge lands: an explicit `count`
|
|
8
|
+
* wins; else a positive `step` is the bin width (`max` extended to a whole
|
|
9
|
+
* step, with float tolerance so `[0, 0.3, 0.1]` is 3 bins); else
|
|
10
|
+
* `fallbackCount` bins span `[min, max]`.
|
|
11
|
+
*
|
|
12
|
+
* @returns The bin count and the (possibly extended) upper bound.
|
|
13
|
+
*/
|
|
14
|
+
export declare function resolveBinning(min: number, max: number, count: number | undefined, step: number | undefined, fallbackCount: number): {
|
|
15
|
+
n: number;
|
|
16
|
+
max: number;
|
|
17
|
+
};
|
|
18
|
+
/** Widens a degenerate `[min, max]` (`min === max`) symmetrically to a small nonzero span. */
|
|
19
|
+
export declare function widenDegenerate(min: number, max: number): [number, number];
|
|
20
|
+
/** Bin index for `value` within `[min, max]` split into `bins` equal buckets, the last bin right-inclusive. */
|
|
21
|
+
export declare function binIndex(value: number, min: number, max: number, bins: number): number;
|
|
22
|
+
/** `n + 1` evenly spaced edges from `min` to `max`, split into `n` bins. */
|
|
23
|
+
export declare function binEdges(min: number, max: number, n: number): number[];
|
|
24
|
+
//# sourceMappingURL=binning.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"binning.d.ts","sourceRoot":"","sources":["../../../src/math/shared/binning.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC7B,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,aAAa,EAAE,MAAM,GACnB;IAAE,CAAC,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAS5B;AAED,8FAA8F;AAC9F,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAE1E;AAED,+GAA+G;AAC/G,wBAAgB,QAAQ,CACvB,KAAK,EAAE,MAAM,EACb,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,GACV,MAAM,CAWR;AAOD,4EAA4E;AAC5E,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAItE"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Grid-cell assembly shared by `imshow` and `pcolormesh`: a value grid laid
|
|
3
|
+
* onto data-space rectangles from a caller-supplied `rectFor`, ragged rows
|
|
4
|
+
* tolerated, `min`/`max` over finite values (`[0, 1]` when none).
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* One grid cell: its `(row, column)` and its data-space rectangle.
|
|
8
|
+
*
|
|
9
|
+
* @category Math & helpers
|
|
10
|
+
*/
|
|
11
|
+
export interface GridCell {
|
|
12
|
+
row: number;
|
|
13
|
+
column: number;
|
|
14
|
+
x0: number;
|
|
15
|
+
x1: number;
|
|
16
|
+
y0: number;
|
|
17
|
+
y1: number;
|
|
18
|
+
value: number;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* The full gridded result.
|
|
22
|
+
*
|
|
23
|
+
* @category Math & helpers
|
|
24
|
+
*/
|
|
25
|
+
export interface GridResult {
|
|
26
|
+
cells: GridCell[];
|
|
27
|
+
/** Smallest finite value in the grid, or 0 if there were none. */
|
|
28
|
+
min: number;
|
|
29
|
+
/** Largest finite value in the grid, or 1 if there were none. */
|
|
30
|
+
max: number;
|
|
31
|
+
nrows: number;
|
|
32
|
+
ncols: number;
|
|
33
|
+
}
|
|
34
|
+
/** Longest row length across `Z` (ragged rows have fewer cells). */
|
|
35
|
+
export declare function gridNcols(Z: readonly (readonly number[])[]): number;
|
|
36
|
+
/** One `GridCell` per entry of `Z`, positioned by `rectFor(row, col)`, and the finite `min`/`max` (`[0, 1]` when none). */
|
|
37
|
+
export declare function buildGridCells(Z: readonly (readonly number[])[], rectFor: (row: number, col: number) => Pick<GridCell, "x0" | "x1" | "y0" | "y1">): {
|
|
38
|
+
cells: GridCell[];
|
|
39
|
+
min: number;
|
|
40
|
+
max: number;
|
|
41
|
+
};
|
|
42
|
+
//# sourceMappingURL=gridCells.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gridCells.d.ts","sourceRoot":"","sources":["../../../src/math/shared/gridCells.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;GAIG;AACH,MAAM,WAAW,QAAQ;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,MAAM,EAAE,MAAM,CAAC;IACf,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,MAAM,CAAC;CACd;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU;IAC1B,KAAK,EAAE,QAAQ,EAAE,CAAC;IAClB,kEAAkE;IAClE,GAAG,EAAE,MAAM,CAAC;IACZ,iEAAiE;IACjE,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACd;AAED,oEAAoE;AACpE,wBAAgB,SAAS,CAAC,CAAC,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,GAAG,MAAM,CAInE;AAED,2HAA2H;AAC3H,wBAAgB,cAAc,CAC7B,CAAC,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,EACjC,OAAO,EAAE,CACR,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,KACP,IAAI,CAAC,QAAQ,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC,GAC5C;IAAE,KAAK,EAAE,QAAQ,EAAE,CAAC;IAAC,GAAG,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,CAuBjD"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/** Level resolution shared by contour lines and filled contours: explicit values, or a count spaced over the data's finite extent. */
|
|
2
|
+
/** Smallest/largest finite value in a 2D grid, or `null` if it has none. */
|
|
3
|
+
export declare function dataExtent(z: readonly (readonly number[])[]): [number, number] | null;
|
|
4
|
+
/** Resolves `levels` (explicit values as is, or a count spaced by `evenFn`) against `z`'s extent; `[]` for a constant or all-non-finite field. */
|
|
5
|
+
export declare function resolveLevels(levels: readonly number[] | number, z: readonly (readonly number[])[], evenFn: (min: number, max: number, count: number) => number[]): number[];
|
|
6
|
+
//# sourceMappingURL=gridExtent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"gridExtent.d.ts","sourceRoot":"","sources":["../../../src/math/shared/gridExtent.ts"],"names":[],"mappings":"AAAA,sIAAsI;AAEtI,4EAA4E;AAC5E,wBAAgB,UAAU,CACzB,CAAC,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,GAC/B,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAWzB;AAED,kJAAkJ;AAClJ,wBAAgB,aAAa,CAC5B,MAAM,EAAE,SAAS,MAAM,EAAE,GAAG,MAAM,EAClC,CAAC,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,EACjC,MAAM,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,MAAM,EAAE,GAC3D,MAAM,EAAE,CAKV"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pairs.d.ts","sourceRoot":"","sources":["../../../src/math/shared/pairs.ts"],"names":[],"mappings":"AAAA,6HAA6H;AAC7H,wBAAgB,SAAS,CACxB,EAAE,EAAE,SAAS,OAAO,EAAE,EACtB,EAAE,EAAE,SAAS,OAAO,EAAE,GACpB,MAAM,CAER"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
/** The `startAngle`/`clockwise` sweep options shared by the polar charts. */
|
|
2
|
+
export { TAU } from "@sophistry/core/internal";
|
|
3
|
+
/** @category Math */
|
|
4
|
+
export interface PolarSweepOptions {
|
|
5
|
+
/**
|
|
6
|
+
* Radians from +x (counter-clockwise, y up) where the first slice, wedge or axis begins. The
|
|
7
|
+
* default is 12 o'clock.
|
|
8
|
+
* @default Math.PI / 2
|
|
9
|
+
*/
|
|
10
|
+
startAngle?: number;
|
|
11
|
+
/** Sweep direction. @default true */
|
|
12
|
+
clockwise?: boolean;
|
|
13
|
+
}
|
|
14
|
+
export interface ResolvedPolarSweep {
|
|
15
|
+
startAngle: number;
|
|
16
|
+
/** `-1` for clockwise, `1` for counter-clockwise — multiply into an angular step. */
|
|
17
|
+
direction: 1 | -1;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Resolves `{ startAngle, clockwise }` to `{ startAngle, direction }`, filling
|
|
21
|
+
* in the shared defaults (12 o'clock, clockwise).
|
|
22
|
+
*/
|
|
23
|
+
export declare function resolvePolarSweep(options: PolarSweepOptions | undefined): ResolvedPolarSweep;
|
|
24
|
+
//# sourceMappingURL=polar.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"polar.d.ts","sourceRoot":"","sources":["../../../src/math/shared/polar.ts"],"names":[],"mappings":"AAAA,6EAA6E;AAE7E,OAAO,EAAE,GAAG,EAAE,MAAM,0BAA0B,CAAC;AAE/C,qBAAqB;AACrB,MAAM,WAAW,iBAAiB;IACjC;;;;OAIG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,qCAAqC;IACrC,SAAS,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,kBAAkB;IAClC,UAAU,EAAE,MAAM,CAAC;IACnB,qFAAqF;IACrF,SAAS,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;CAClB;AAKD;;;GAGG;AACH,wBAAgB,iBAAiB,CAChC,OAAO,EAAE,iBAAiB,GAAG,SAAS,GACpC,kBAAkB,CAKpB"}
|
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Stacking: values sharing a position laid end to end as segments (stacked
|
|
3
|
+
* bars and areas, streamgraphs, normalized and diverging stacks). Input is
|
|
4
|
+
* one column per position, each a list of `{ series, value }` items stacked
|
|
5
|
+
* in series order, then placed by the {@link StackOffset}.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* How a stack is placed: `"zero"` on the baseline; `"normalize"` each
|
|
9
|
+
* column scaled to 0..1; `"center"` each column centred on zero;
|
|
10
|
+
* `"wiggle"` shifted to minimise slope change between columns (a
|
|
11
|
+
* streamgraph), centred overall.
|
|
12
|
+
*
|
|
13
|
+
* @category Math & helpers
|
|
14
|
+
*/
|
|
15
|
+
export type StackOffset = "zero" | "normalize" | "center" | "wiggle";
|
|
16
|
+
/**
|
|
17
|
+
* Which series sits at the bottom: `"appearance"` (given or first-seen
|
|
18
|
+
* order), `"reverse"`, `"sum"` (largest on top), `"insideOut"` (the
|
|
19
|
+
* streamgraph order: earliest peaks in the middle), or an array of series
|
|
20
|
+
* indices bottom to top (unlisted series follow).
|
|
21
|
+
*
|
|
22
|
+
* @category Math & helpers
|
|
23
|
+
*/
|
|
24
|
+
export type StackOrder = "appearance" | "reverse" | "sum" | "insideOut" | readonly number[];
|
|
25
|
+
/** @category Math */
|
|
26
|
+
export interface StackColumnsOptions {
|
|
27
|
+
/** @default "zero" */
|
|
28
|
+
offset?: StackOffset;
|
|
29
|
+
/** @default "appearance" */
|
|
30
|
+
order?: StackOrder;
|
|
31
|
+
/**
|
|
32
|
+
* Stack negatives down from the baseline and positives up, as two stacks.
|
|
33
|
+
* Off, values accumulate in one running total, so a negative dips back down.
|
|
34
|
+
* @default true
|
|
35
|
+
*/
|
|
36
|
+
diverging?: boolean;
|
|
37
|
+
/** Where the stack starts under `"zero"`; other offsets ignore it. @default 0 */
|
|
38
|
+
baseline?: number;
|
|
39
|
+
}
|
|
40
|
+
/** @category Math */
|
|
41
|
+
export interface StackItem {
|
|
42
|
+
/** The item's series, 0-based; several items of one series in a column stack one after another. */
|
|
43
|
+
series: number;
|
|
44
|
+
/** Its value; a non-finite value takes no room. */
|
|
45
|
+
value: number;
|
|
46
|
+
}
|
|
47
|
+
/** @category Math */
|
|
48
|
+
export interface StackColumnsResult {
|
|
49
|
+
/** `[y1, y2]` per item, parallel to the input: segment start (towards the baseline) and end; `[NaN, NaN]` when non-finite. */
|
|
50
|
+
spans: [number, number][][];
|
|
51
|
+
/** Series indices, bottom of the stack to top. */
|
|
52
|
+
order: number[];
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Stacks every column's items in series order, then places each column by
|
|
56
|
+
* `offset`.
|
|
57
|
+
*
|
|
58
|
+
* @param columns - One item list per position, in axis order (only `"wiggle"` reads the order).
|
|
59
|
+
* @param seriesCount - How many series there are; items name theirs by index.
|
|
60
|
+
* @category Math & helpers
|
|
61
|
+
*/
|
|
62
|
+
export declare function stackColumns(columns: readonly (readonly StackItem[])[], seriesCount: number, options?: StackColumnsOptions): StackColumnsResult;
|
|
63
|
+
/**
|
|
64
|
+
* Series indices bottom to top for `order`; see {@link StackOrder}.
|
|
65
|
+
*
|
|
66
|
+
* @returns Every series index once, bottom of the stack first.
|
|
67
|
+
* @category Math & helpers
|
|
68
|
+
*/
|
|
69
|
+
export declare function stackOrder(columns: readonly (readonly StackItem[])[], seriesCount: number, order: StackOrder): number[];
|
|
70
|
+
//# sourceMappingURL=stack.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stack.d.ts","sourceRoot":"","sources":["../../src/math/stack.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAKH;;;;;;;GAOG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,WAAW,GAAG,QAAQ,GAAG,QAAQ,CAAC;AAErE;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,GACnB,YAAY,GACZ,SAAS,GACT,KAAK,GACL,WAAW,GACX,SAAS,MAAM,EAAE,CAAC;AAErB,qBAAqB;AACrB,MAAM,WAAW,mBAAmB;IACnC,sBAAsB;IACtB,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,4BAA4B;IAC5B,KAAK,CAAC,EAAE,UAAU,CAAC;IACnB;;;;OAIG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,iFAAiF;IACjF,QAAQ,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,qBAAqB;AACrB,MAAM,WAAW,SAAS;IACzB,mGAAmG;IACnG,MAAM,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,KAAK,EAAE,MAAM,CAAC;CACd;AAED,qBAAqB;AACrB,MAAM,WAAW,kBAAkB;IAClC,8HAA8H;IAC9H,KAAK,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,CAAC;IAC5B,kDAAkD;IAClD,KAAK,EAAE,MAAM,EAAE,CAAC;CAChB;AAED;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAC3B,OAAO,EAAE,SAAS,CAAC,SAAS,SAAS,EAAE,CAAC,EAAE,EAC1C,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,mBAAwB,GAC/B,kBAAkB,CA+DpB;AAED;;;;;GAKG;AACH,wBAAgB,UAAU,CACzB,OAAO,EAAE,SAAS,CAAC,SAAS,SAAS,EAAE,CAAC,EAAE,EAC1C,WAAW,EAAE,MAAM,EACnB,KAAK,EAAE,UAAU,GACf,MAAM,EAAE,CA4DV"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/** Stacked areas: parallel series stacked on a shared baseline, each band the region between consecutive running totals. */
|
|
2
|
+
import type { Point } from "@sophistry/core/geometry";
|
|
3
|
+
import type { StackOffset, StackOrder } from "./stack";
|
|
4
|
+
/** @category Math */
|
|
5
|
+
export interface StackedBand {
|
|
6
|
+
/** The running total *below* this series, per `x` — the band's lower edge. */
|
|
7
|
+
bottom: number[];
|
|
8
|
+
/** `bottom + series`, per `x` — the band's upper edge. */
|
|
9
|
+
top: number[];
|
|
10
|
+
/** `top`/`bottom` mapped through `fillBetweenRings`, in data coordinates. */
|
|
11
|
+
rings: Point[][];
|
|
12
|
+
}
|
|
13
|
+
/** @category Math */
|
|
14
|
+
export interface StackPlotOptions {
|
|
15
|
+
/** The running total the first series stacks atop, under the `"zero"` offset. @default 0 */
|
|
16
|
+
baseline?: number;
|
|
17
|
+
/** Where each x's stack is placed; see {@link StackOffset}. @default "zero" */
|
|
18
|
+
offset?: StackOffset;
|
|
19
|
+
/**
|
|
20
|
+
* Which series sits at the bottom; see {@link StackOrder}. Bands are still
|
|
21
|
+
* returned in the order given.
|
|
22
|
+
* @default "appearance"
|
|
23
|
+
*/
|
|
24
|
+
order?: StackOrder;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Stacks `series` (each parallel to `xs`) on `baseline`; band `i`'s `rings`
|
|
28
|
+
* shade the slice that series adds. Other offsets then rescale or shift each
|
|
29
|
+
* x's stack; `"wiggle"` treats `xs` as evenly spaced.
|
|
30
|
+
*
|
|
31
|
+
* @param series - One array per band; missing or non-finite entries count as 0, negatives subtract.
|
|
32
|
+
* @returns One {@link StackedBand} per series, in the order given.
|
|
33
|
+
* @category Math & helpers
|
|
34
|
+
*/
|
|
35
|
+
export declare function stackedBands(xs: readonly number[], series: readonly (readonly number[])[], options?: StackPlotOptions): StackedBand[];
|
|
36
|
+
//# sourceMappingURL=stackplot.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stackplot.d.ts","sourceRoot":"","sources":["../../src/math/stackplot.ts"],"names":[],"mappings":"AAAA,4HAA4H;AAE5H,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGtD,OAAO,KAAK,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAGvD,qBAAqB;AACrB,MAAM,WAAW,WAAW;IAC3B,8EAA8E;IAC9E,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,0DAA0D;IAC1D,GAAG,EAAE,MAAM,EAAE,CAAC;IACd,6EAA6E;IAC7E,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC;CACjB;AAED,qBAAqB;AACrB,MAAM,WAAW,gBAAgB;IAChC,4FAA4F;IAC5F,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,+EAA+E;IAC/E,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB;;;;OAIG;IACH,KAAK,CAAC,EAAE,UAAU,CAAC;CACnB;AAED;;;;;;;;GAQG;AACH,wBAAgB,YAAY,CAC3B,EAAE,EAAE,SAAS,MAAM,EAAE,EACrB,MAAM,EAAE,SAAS,CAAC,SAAS,MAAM,EAAE,CAAC,EAAE,EACtC,OAAO,GAAE,gBAAqB,GAC5B,WAAW,EAAE,CAef"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
/** Stairs: a step function held constant across each `[edges[i], edges[i+1]]`. */
|
|
2
|
+
import type { Point } from "@sophistry/core/geometry";
|
|
3
|
+
/**
|
|
4
|
+
* The step-function polyline.
|
|
5
|
+
*
|
|
6
|
+
* @category Math & helpers
|
|
7
|
+
*/
|
|
8
|
+
export type StairsPolyline = Point[];
|
|
9
|
+
/**
|
|
10
|
+
* The step-function polyline for `values` held over `edges`.
|
|
11
|
+
*
|
|
12
|
+
* @param edges - Step boundaries, one more than `values`; defaults to `0..values.length`.
|
|
13
|
+
* @returns The polyline in data coordinates, two points per value.
|
|
14
|
+
* @throws If `edges` is given and its length is not `values.length + 1`.
|
|
15
|
+
* @category Math & helpers
|
|
16
|
+
*/
|
|
17
|
+
export declare function stairsPolyline(values: readonly number[], edges?: readonly number[]): StairsPolyline;
|
|
18
|
+
//# sourceMappingURL=stairs.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"stairs.d.ts","sourceRoot":"","sources":["../../src/math/stairs.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAElF,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAEtD;;;;GAIG;AACH,MAAM,MAAM,cAAc,GAAG,KAAK,EAAE,CAAC;AAErC;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC7B,MAAM,EAAE,SAAS,MAAM,EAAE,EACzB,KAAK,CAAC,EAAE,SAAS,MAAM,EAAE,GACvB,cAAc,CAchB"}
|