@fundar/data-chart-telling 1.1.0 → 1.3.0
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/CHANGELOG.md +45 -0
- package/README.md +8 -7
- package/dist/configuration/config.svelte.d.ts +1 -1
- package/dist/configuration/config.svelte.js +177 -100
- package/dist/configuration/themes/index.d.ts +5 -1428
- package/dist/index.d.ts +23 -14
- package/dist/index.js +20 -11
- package/dist/layout/base/BasePlotLayout.svelte +115 -50
- package/dist/layout/base/BasePlotLayout.svelte.d.ts +1 -38
- package/dist/layout/coordinates/CoordinatesLayout.svelte +42 -40
- package/dist/layout/coordinates/CoordinatesLayout.svelte.d.ts +0 -2
- package/dist/layout/coordinates/ProjectionZoom.svelte +48 -0
- package/dist/layout/coordinates/ProjectionZoom.svelte.d.ts +10 -0
- package/dist/layout/coordinates/ZoomedProjection.d.ts +11 -0
- package/dist/layout/coordinates/ZoomedProjection.js +24 -0
- package/dist/layout/coordinates/camera.svelte.js +11 -8
- package/dist/layout/coordinates/projections/argentina.js +1 -1
- package/dist/layout/coordinates/projections/fit.d.ts +1 -1
- package/dist/layout/coordinates/projections/fit.js +1 -1
- package/dist/layout/coordinates/zoom.svelte.d.ts +4 -5
- package/dist/layout/coordinates/zoom.svelte.js +4 -5
- package/dist/layout/facet/FacetLayout.svelte +1 -1
- package/dist/layout/facet/config.js +1 -1
- package/dist/layout/facet/scope.d.ts +40 -0
- package/dist/layout/facet/scope.js +104 -0
- package/dist/layout/figure/Figure.svelte +2 -0
- package/dist/layout/geometry/GeometryLayout.svelte +14 -9
- package/dist/layout/geometry/GeometryLayout.svelte.d.ts +0 -3
- package/dist/layout/geometry/MarkerOffset.svelte +28 -0
- package/dist/layout/geometry/MarkerOffset.svelte.d.ts +13 -0
- package/dist/layout/grid/GridCell.svelte +6 -8
- package/dist/layout/legend/ContinuousSection.svelte +44 -9
- package/dist/layout/legend/DiscreteBadgeItem.svelte +2 -2
- package/dist/layout/legend/DiscreteSection.svelte +2 -2
- package/dist/layout/legend/DiscreteSymbolIcon.svelte +39 -15
- package/dist/layout/legend/LegendChannels.js +36 -12
- package/dist/layout/legend/LegendLayout.svelte +9 -1
- package/dist/layout/legend/LegendState.svelte.d.ts +4 -0
- package/dist/layout/legend/LegendState.svelte.js +23 -8
- package/dist/layout/legend/SizeSection.svelte +1 -1
- package/dist/layout/margins/PlotMargins.svelte.d.ts +2 -5
- package/dist/layout/margins/PlotMargins.svelte.js +35 -8
- package/dist/layout/plot/Plot.svelte +22 -2
- package/dist/layout/plot/Slice.d.ts +5 -1
- package/dist/layout/plot/Slice.js +14 -4
- package/dist/layout/scales/NiceTicks.d.ts +3 -0
- package/dist/layout/scales/NiceTicks.js +4 -0
- package/dist/layout/scales/ScalesLayout.svelte +93 -7
- package/dist/layout/scales/ScalesLayout.svelte.d.ts +5 -0
- package/dist/layout/scales/SveltePlotScale.d.ts +2 -2
- package/dist/layout/scales/SveltePlotScale.js +13 -6
- package/dist/layout/scales/TickLabels.d.ts +32 -0
- package/dist/layout/scales/TickLabels.js +55 -0
- package/dist/layout/styles/StylesLayout.svelte +2 -2
- package/dist/layout/styles/ValueLabels.d.ts +33 -5
- package/dist/layout/styles/ValueLabels.js +80 -21
- package/dist/layout/timeline/TimelineLayout.svelte +1 -1
- package/dist/layout/tooltip/Tooltip.svelte +4 -4
- package/dist/layout/tooltip/Tooltip.svelte.d.ts +4 -4
- package/dist/layout/tooltip/TooltipState.svelte.js +1 -1
- package/dist/markers/MarkerKinds.d.ts +5 -0
- package/dist/markers/MarkerKinds.js +1 -0
- package/dist/markers/area/AreaMarker.svelte +15 -63
- package/dist/markers/arrow/ArrowMarker.svelte +51 -9
- package/dist/markers/bar/BarMarker.svelte +8 -4
- package/dist/markers/bollinger/BollingerMarker.svelte +33 -18
- package/dist/markers/box/BoxMarker.svelte +40 -9
- package/dist/markers/delta/Delta.d.ts +6 -1
- package/dist/markers/delta/Delta.js +16 -1
- package/dist/markers/delta/DeltaMarker.svelte +9 -87
- package/dist/markers/delta/DeltaPoint.svelte +97 -0
- package/dist/markers/delta/DeltaPoint.svelte.d.ts +29 -0
- package/dist/markers/dot/DotMarker.svelte +24 -27
- package/dist/markers/image/ImageMarker.svelte +17 -12
- package/dist/markers/inset/InsetMarker.svelte +2 -2
- package/dist/markers/line/LineMarker.svelte +1 -0
- package/dist/markers/link/LinkMarker.svelte +174 -29
- package/dist/markers/regression/RegressionMarker.svelte +16 -33
- package/dist/markers/rule/RuleMarker.svelte +14 -5
- package/dist/markers/text/Declutter.d.ts +4 -0
- package/dist/markers/text/Declutter.js +26 -11
- package/dist/markers/text/TextMarker.svelte +91 -48
- package/dist/markers/tick/TickMarker.svelte +27 -25
- package/dist/markers/utils/MarkerChannels.d.ts +24 -0
- package/dist/markers/utils/MarkerChannels.js +42 -7
- package/dist/markers/utils/RowOffset.d.ts +23 -0
- package/dist/markers/utils/RowOffset.js +23 -0
- package/dist/markers/utils/RowOffsetMarks.svelte +30 -0
- package/dist/markers/utils/RowOffsetMarks.svelte.d.ts +33 -0
- package/dist/markers/utils/RowStroke.d.ts +31 -0
- package/dist/markers/utils/RowStroke.js +28 -0
- package/dist/markers/violin/ViolinMarker.svelte +75 -0
- package/dist/markers/violin/ViolinMarker.svelte.d.ts +7 -0
- package/dist/markers/violin/ViolinProfiles.d.ts +29 -0
- package/dist/markers/violin/ViolinProfiles.js +55 -0
- package/dist/markers/waffle/WaffleMarker.svelte +17 -37
- package/dist/phases/Pipeline.d.ts +5 -0
- package/dist/phases/Pipeline.js +5 -0
- package/dist/phases/data/DataPhase.js +3 -3
- package/dist/phases/data/PlotAxes.d.ts +10 -0
- package/dist/phases/data/PlotAxes.js +14 -1
- package/dist/phases/facet/FacetPanels.d.ts +1 -0
- package/dist/phases/facet/FacetPanels.js +1 -0
- package/dist/phases/facet/FacetPhase.d.ts +2 -1
- package/dist/phases/facet/FacetPhase.js +19 -4
- package/dist/phases/mapping/MappingPhase.js +1 -1
- package/dist/phases/markers/MarkersPhase.js +2 -1
- package/dist/phases/scales/CategoryOrder.d.ts +23 -0
- package/dist/phases/scales/CategoryOrder.js +73 -0
- package/dist/phases/scales/ScalesPhase.js +21 -7
- package/dist/phases/sharedScales/SharedScalesPhase.d.ts +3 -2
- package/dist/phases/sharedScales/SharedScalesPhase.js +5 -2
- package/dist/phases/statistics/Statistics.d.ts +10 -6
- package/dist/phases/statistics/Statistics.js +20 -10
- package/dist/phases/statistics/StatisticsPhase.js +16 -3
- package/dist/phases/statistics/methods/BollingerStatistic.d.ts +1 -1
- package/dist/phases/statistics/methods/BollingerStatistic.js +13 -11
- package/dist/phases/statistics/methods/BoxStatistic.d.ts +1 -1
- package/dist/phases/statistics/methods/BoxStatistic.js +14 -12
- package/dist/phases/statistics/methods/Density2dStatistic.d.ts +1 -1
- package/dist/phases/statistics/methods/Density2dStatistic.js +13 -11
- package/dist/phases/statistics/methods/DensityStatistic.d.ts +1 -1
- package/dist/phases/statistics/methods/DensityStatistic.js +11 -9
- package/dist/phases/statistics/methods/DeviationStatistic.d.ts +8 -0
- package/dist/phases/statistics/methods/DeviationStatistic.js +111 -0
- package/dist/phases/statistics/methods/MovingAverageStatistic.d.ts +1 -1
- package/dist/phases/statistics/methods/MovingAverageStatistic.js +11 -9
- package/dist/phases/statistics/methods/RegressionStatistic.d.ts +1 -1
- package/dist/phases/statistics/methods/RegressionStatistic.js +16 -14
- package/dist/phases/transforms/ProcessedPositions.js +1 -1
- package/dist/phases/transforms/TransformsPhase.js +49 -3
- package/dist/phases/transforms/ValueSelection.d.ts +30 -0
- package/dist/phases/transforms/ValueSelection.js +53 -0
- package/dist/plots/{heatmap → correlation/heatmap}/Plot.svelte +5 -2
- package/dist/plots/{heatmap → correlation/heatmap}/Plot.svelte.d.ts +2 -2
- package/dist/plots/{heatmap → correlation/heatmap}/defaults.d.ts +2 -2
- package/dist/plots/{heatmap → correlation/heatmap}/defaults.js +5 -5
- package/dist/plots/{heatmap → correlation/heatmap}/markers.d.ts +4 -4
- package/dist/plots/{heatmap → correlation/heatmap}/markers.js +3 -3
- package/dist/plots/{scatter → correlation/scatter}/Plot.svelte +5 -2
- package/dist/plots/{scatter → correlation/scatter}/Plot.svelte.d.ts +2 -2
- package/dist/plots/{scatter → correlation/scatter}/defaults.d.ts +2 -2
- package/dist/plots/{scatter → correlation/scatter}/defaults.js +4 -4
- package/dist/plots/{scatter → correlation/scatter}/markers.d.ts +4 -4
- package/dist/plots/{scatter → correlation/scatter}/markers.js +3 -3
- package/dist/plots/{box → distribution/box}/BoxSummaries.d.ts +2 -2
- package/dist/plots/{box → distribution/box}/BoxSummaries.js +6 -6
- package/dist/plots/{box → distribution/box}/Plot.svelte +2 -2
- package/dist/plots/{box → distribution/box}/Plot.svelte.d.ts +2 -2
- package/dist/plots/{box → distribution/box}/defaults.d.ts +2 -2
- package/dist/plots/{box → distribution/box}/defaults.js +1 -1
- package/dist/plots/{box → distribution/box}/markers.d.ts +2 -2
- package/dist/plots/distribution/density/Plot.svelte +45 -0
- package/dist/plots/distribution/density/Plot.svelte.d.ts +26 -0
- package/dist/plots/distribution/density/defaults.d.ts +9 -0
- package/dist/plots/distribution/density/defaults.js +29 -0
- package/dist/plots/distribution/density/markers.d.ts +9 -0
- package/dist/plots/distribution/density/markers.js +42 -0
- package/dist/plots/{histogram → distribution/histogram}/Plot.svelte +2 -2
- package/dist/plots/{histogram → distribution/histogram}/Plot.svelte.d.ts +2 -2
- package/dist/plots/{histogram → distribution/histogram}/defaults.d.ts +2 -2
- package/dist/plots/{histogram → distribution/histogram}/defaults.js +3 -3
- package/dist/plots/{histogram → distribution/histogram}/markers.d.ts +3 -3
- package/dist/plots/{histogram → distribution/histogram}/markers.js +5 -5
- package/dist/plots/{pyramid → distribution/pyramid}/Plot.svelte +5 -2
- package/dist/plots/{pyramid → distribution/pyramid}/Plot.svelte.d.ts +2 -2
- package/dist/plots/{pyramid → distribution/pyramid}/defaults.d.ts +2 -2
- package/dist/plots/{pyramid → distribution/pyramid}/defaults.js +6 -6
- package/dist/plots/{pyramid → distribution/pyramid}/markers.d.ts +4 -4
- package/dist/plots/{pyramid → distribution/pyramid}/markers.js +6 -6
- package/dist/plots/distribution/violin/Plot.svelte +45 -0
- package/dist/plots/distribution/violin/Plot.svelte.d.ts +26 -0
- package/dist/plots/distribution/violin/defaults.d.ts +10 -0
- package/dist/plots/distribution/violin/defaults.js +58 -0
- package/dist/plots/distribution/violin/markers.d.ts +10 -0
- package/dist/plots/distribution/violin/markers.js +71 -0
- package/dist/plots/{area → evolution/area}/Plot.svelte +2 -2
- package/dist/plots/{area → evolution/area}/Plot.svelte.d.ts +2 -2
- package/dist/plots/{area → evolution/area}/defaults.d.ts +2 -2
- package/dist/plots/{area → evolution/area}/defaults.js +2 -0
- package/dist/plots/{area → evolution/area}/markers.d.ts +2 -2
- package/dist/plots/{area → evolution/area}/markers.js +1 -1
- package/dist/plots/{line → evolution/line}/Plot.svelte +2 -2
- package/dist/plots/{line → evolution/line}/Plot.svelte.d.ts +2 -2
- package/dist/plots/{line → evolution/line}/defaults.d.ts +2 -2
- package/dist/plots/{line → evolution/line}/defaults.js +2 -0
- package/dist/plots/{line → evolution/line}/markers.d.ts +11 -8
- package/dist/plots/{line → evolution/line}/markers.js +6 -4
- package/dist/plots/evolution/slope/Plot.svelte +42 -0
- package/dist/plots/evolution/slope/Plot.svelte.d.ts +26 -0
- package/dist/plots/evolution/slope/defaults.d.ts +8 -0
- package/dist/plots/evolution/slope/defaults.js +31 -0
- package/dist/plots/evolution/slope/markers.d.ts +16 -0
- package/dist/plots/evolution/slope/markers.js +79 -0
- package/dist/plots/evolution/sparkline/Plot.svelte +45 -0
- package/dist/plots/evolution/sparkline/Plot.svelte.d.ts +26 -0
- package/dist/plots/evolution/sparkline/defaults.d.ts +7 -0
- package/dist/plots/evolution/sparkline/defaults.js +23 -0
- package/dist/plots/evolution/sparkline/markers.d.ts +7 -0
- package/dist/plots/evolution/sparkline/markers.js +56 -0
- package/dist/plots/{geo → map/geo}/Core.svelte +11 -10
- package/dist/plots/{geo → map/geo}/Core.svelte.d.ts +1 -1
- package/dist/plots/map/geo/GeoFeatures.svelte.d.ts +9 -0
- package/dist/plots/map/geo/GeoFeatures.svelte.js +55 -0
- package/dist/plots/map/geo/GeoGeometry.d.ts +27 -0
- package/dist/plots/map/geo/GeoGeometry.js +142 -0
- package/dist/plots/map/geo/GeoSegments.d.ts +16 -0
- package/dist/plots/map/geo/GeoSegments.js +23 -0
- package/dist/plots/{geo → map/geo}/Plot.svelte +10 -10
- package/dist/plots/{geo → map/geo}/Plot.svelte.d.ts +2 -2
- package/dist/plots/{geo → map/geo}/defaults.d.ts +2 -2
- package/dist/plots/{geo → map/geo}/defaults.js +1 -1
- package/dist/plots/{geo → map/geo}/phases/data.d.ts +1 -1
- package/dist/plots/{geo → map/geo}/phases/data.js +7 -6
- package/dist/plots/{geo → map/geo}/phases/hover.d.ts +1 -1
- package/dist/plots/{geo → map/geo}/phases/hover.js +2 -2
- package/dist/plots/{geo → map/geo}/phases/markers.d.ts +1 -1
- package/dist/plots/{geo → map/geo}/phases/markers.js +6 -10
- package/dist/plots/{geo → map/geo}/phases/scales.d.ts +2 -2
- package/dist/plots/{geo → map/geo}/phases/scales.js +28 -12
- package/dist/plots/{geo → map/geo}/phases/tooltip.d.ts +1 -1
- package/dist/plots/map/geo/phases/tooltip.js +5 -0
- package/dist/plots/{geo → map/geo}/slices.d.ts +2 -2
- package/dist/plots/{geo → map/geo}/slices.js +2 -2
- package/dist/plots/{bar → ranking/bar}/Plot.svelte +2 -2
- package/dist/plots/{bar → ranking/bar}/Plot.svelte.d.ts +2 -2
- package/dist/plots/ranking/bar/defaults.d.ts +16 -0
- package/dist/plots/{bar → ranking/bar}/defaults.js +15 -9
- package/dist/plots/{bar → ranking/bar}/markers.d.ts +8 -8
- package/dist/plots/{bar → ranking/bar}/markers.js +8 -17
- package/dist/plots/ranking/bullet/Plot.svelte +42 -0
- package/dist/plots/ranking/bullet/Plot.svelte.d.ts +26 -0
- package/dist/plots/ranking/bullet/defaults.d.ts +8 -0
- package/dist/plots/ranking/bullet/defaults.js +24 -0
- package/dist/plots/ranking/bullet/markers.d.ts +10 -0
- package/dist/plots/ranking/bullet/markers.js +90 -0
- package/dist/plots/ranking/cleveland/ClevelandConnector.d.ts +48 -0
- package/dist/plots/ranking/cleveland/ClevelandConnector.js +140 -0
- package/dist/plots/ranking/cleveland/ClevelandMarkers.d.ts +33 -0
- package/dist/plots/ranking/cleveland/ClevelandMarkers.js +375 -0
- package/dist/plots/ranking/cleveland/ClevelandRanges.d.ts +31 -0
- package/dist/plots/ranking/cleveland/ClevelandRanges.js +116 -0
- package/dist/plots/ranking/cleveland/Plot.svelte +45 -0
- package/dist/plots/ranking/cleveland/Plot.svelte.d.ts +26 -0
- package/dist/plots/ranking/cleveland/defaults.d.ts +13 -0
- package/dist/plots/ranking/cleveland/defaults.js +66 -0
- package/dist/plots/ranking/dumbbell/Plot.svelte +45 -0
- package/dist/plots/ranking/dumbbell/Plot.svelte.d.ts +26 -0
- package/dist/plots/ranking/dumbbell/defaults.d.ts +9 -0
- package/dist/plots/ranking/dumbbell/defaults.js +19 -0
- package/dist/plots/ranking/forest/Plot.svelte +42 -0
- package/dist/plots/ranking/forest/Plot.svelte.d.ts +26 -0
- package/dist/plots/ranking/forest/defaults.d.ts +11 -0
- package/dist/plots/ranking/forest/defaults.js +20 -0
- package/dist/plots/ranking/lollipop/Plot.svelte +45 -0
- package/dist/plots/ranking/lollipop/Plot.svelte.d.ts +26 -0
- package/dist/plots/ranking/lollipop/defaults.d.ts +9 -0
- package/dist/plots/ranking/lollipop/defaults.js +18 -0
- package/dist/plots/utils/RowNumbers.d.ts +16 -0
- package/dist/plots/utils/RowNumbers.js +24 -0
- package/dist/plots/utils/gaps.js +1 -1
- package/dist/plots/utils/segments.d.ts +4 -1
- package/dist/plots/utils/segments.js +20 -7
- package/dist/types/configuration/styling.d.ts +284 -143
- package/dist/types/layout/coordinates.d.ts +5 -4
- package/dist/types/layout/facet.d.ts +18 -0
- package/dist/types/layout/legend.d.ts +23 -5
- package/dist/types/layout/plot.d.ts +46 -1
- package/dist/types/layout/scales.d.ts +39 -7
- package/dist/types/layout/statistics/deviation.d.ts +40 -0
- package/dist/types/layout/statistics/index.d.ts +7 -2
- package/dist/types/layout/styles/base.d.ts +18 -0
- package/dist/types/layout/styles/bullet.d.ts +25 -0
- package/dist/types/layout/styles/connector.d.ts +98 -0
- package/dist/types/layout/styles/curve.d.ts +11 -0
- package/dist/types/layout/styles/frame.d.ts +17 -0
- package/dist/types/layout/styles/gaps.d.ts +12 -0
- package/dist/types/layout/styles/geo.d.ts +55 -0
- package/dist/types/layout/styles/index.d.ts +8 -0
- package/dist/types/layout/styles/index.js +8 -0
- package/dist/types/layout/styles/values.d.ts +47 -0
- package/dist/types/layout/timeline.d.ts +5 -2
- package/dist/types/layout/tooltip.d.ts +6 -2
- package/dist/types/markers/axis/area.d.ts +2 -2
- package/dist/types/markers/axis/arrow.d.ts +3 -0
- package/dist/types/markers/axis/axisBasedMarkersConfig.d.ts +2 -1
- package/dist/types/markers/axis/bar.d.ts +1 -1
- package/dist/types/markers/axis/box.d.ts +5 -0
- package/dist/types/markers/axis/delta.d.ts +15 -2
- package/dist/types/markers/axis/difference.d.ts +2 -2
- package/dist/types/markers/axis/image.d.ts +3 -2
- package/dist/types/markers/axis/line.d.ts +2 -0
- package/dist/types/markers/axis/rule.d.ts +18 -2
- package/dist/types/markers/axis/trail.d.ts +2 -3
- package/dist/types/markers/axis/violin.d.ts +25 -0
- package/dist/types/markers/basic/dot.d.ts +3 -2
- package/dist/types/markers/basic/text.d.ts +13 -3
- package/dist/types/markers/channels/commonMarkerConfig.d.ts +7 -3
- package/dist/types/markers/channels/commonMarkerConfigWithRowOffset.d.ts +13 -0
- package/dist/types/markers/common.d.ts +1 -1
- package/dist/types/markers/common.js +1 -0
- package/dist/types/markers/geo/link.d.ts +5 -1
- package/dist/types/phases/facet/phase.d.ts +4 -0
- package/dist/types/phases/index.d.ts +1 -1
- package/dist/types/phases/scales/phase.d.ts +5 -1
- package/dist/types/phases/state.d.ts +15 -2
- package/dist/types/phases/statistics/source.d.ts +3 -1
- package/dist/types/phases/transforms/phase.d.ts +22 -0
- package/dist/types/plots/{heatmap → correlation/heatmap}/props.d.ts +6 -6
- package/dist/types/plots/{heatmap → correlation/heatmap}/state.d.ts +4 -4
- package/dist/types/plots/{scatter → correlation/scatter}/props.d.ts +6 -6
- package/dist/types/plots/{scatter → correlation/scatter}/state.d.ts +2 -2
- package/dist/types/plots/{box → distribution/box}/props.d.ts +6 -6
- package/dist/types/plots/{box → distribution/box}/state.d.ts +3 -3
- package/dist/types/plots/distribution/density/props.d.ts +23 -0
- package/dist/types/plots/distribution/density/state.d.ts +6 -0
- package/dist/types/plots/{histogram → distribution/histogram}/props.d.ts +7 -7
- package/dist/types/plots/{histogram → distribution/histogram}/state.d.ts +2 -2
- package/dist/types/plots/distribution/histogram/state.js +1 -0
- package/dist/types/plots/{pyramid → distribution/pyramid}/props.d.ts +6 -6
- package/dist/types/plots/distribution/pyramid/props.js +1 -0
- package/dist/types/plots/{pyramid → distribution/pyramid}/state.d.ts +3 -3
- package/dist/types/plots/distribution/pyramid/state.js +1 -0
- package/dist/types/plots/distribution/violin/props.d.ts +23 -0
- package/dist/types/plots/distribution/violin/props.js +1 -0
- package/dist/types/plots/distribution/violin/state.d.ts +6 -0
- package/dist/types/plots/distribution/violin/state.js +1 -0
- package/dist/types/plots/{area → evolution/area}/props.d.ts +6 -6
- package/dist/types/plots/evolution/area/props.js +1 -0
- package/dist/types/plots/{area → evolution/area}/state.d.ts +2 -2
- package/dist/types/plots/evolution/area/state.js +1 -0
- package/dist/types/plots/evolution/line/props.d.ts +10 -0
- package/dist/types/plots/evolution/line/props.js +1 -0
- package/dist/types/plots/{line → evolution/line}/state.d.ts +3 -3
- package/dist/types/plots/evolution/line/state.js +1 -0
- package/dist/types/plots/evolution/slope/props.d.ts +5 -0
- package/dist/types/plots/evolution/slope/props.js +1 -0
- package/dist/types/plots/evolution/slope/state.d.ts +5 -0
- package/dist/types/plots/evolution/slope/state.js +1 -0
- package/dist/types/plots/evolution/sparkline/props.d.ts +5 -0
- package/dist/types/plots/evolution/sparkline/props.js +1 -0
- package/dist/types/plots/evolution/sparkline/state.d.ts +5 -0
- package/dist/types/plots/evolution/sparkline/state.js +1 -0
- package/dist/types/plots/{geo → map/geo}/props.d.ts +8 -8
- package/dist/types/plots/map/geo/props.js +1 -0
- package/dist/types/plots/{geo → map/geo}/state.d.ts +18 -11
- package/dist/types/plots/map/geo/state.js +1 -0
- package/dist/types/plots/props.d.ts +7 -4
- package/dist/types/plots/{bar → ranking/bar}/props.d.ts +6 -6
- package/dist/types/plots/ranking/bar/props.js +1 -0
- package/dist/types/plots/{bar → ranking/bar}/state.d.ts +2 -2
- package/dist/types/plots/ranking/bar/state.js +1 -0
- package/dist/types/plots/ranking/bullet/props.d.ts +22 -0
- package/dist/types/plots/ranking/bullet/props.js +1 -0
- package/dist/types/plots/ranking/bullet/state.d.ts +5 -0
- package/dist/types/plots/ranking/bullet/state.js +1 -0
- package/dist/types/plots/ranking/cleveland/props.d.ts +10 -0
- package/dist/types/plots/ranking/cleveland/props.js +1 -0
- package/dist/types/plots/ranking/cleveland/state.d.ts +49 -0
- package/dist/types/plots/ranking/cleveland/state.js +1 -0
- package/dist/types/plots/ranking/dumbbell/props.d.ts +10 -0
- package/dist/types/plots/ranking/dumbbell/props.js +1 -0
- package/dist/types/plots/ranking/dumbbell/state.d.ts +5 -0
- package/dist/types/plots/ranking/dumbbell/state.js +1 -0
- package/dist/types/plots/ranking/forest/props.d.ts +23 -0
- package/dist/types/plots/ranking/forest/props.js +1 -0
- package/dist/types/plots/ranking/forest/state.d.ts +5 -0
- package/dist/types/plots/ranking/forest/state.js +1 -0
- package/dist/types/plots/ranking/lollipop/props.d.ts +10 -0
- package/dist/types/plots/ranking/lollipop/props.js +1 -0
- package/dist/types/plots/ranking/lollipop/state.d.ts +5 -0
- package/dist/types/plots/ranking/lollipop/state.js +1 -0
- package/dist/types/plots/segments/common.d.ts +4 -1
- package/dist/types/plots/segments/config.d.ts +4 -2
- package/dist/utils/OpacityScale.d.ts +14 -0
- package/dist/utils/OpacityScale.js +43 -0
- package/dist/utils/{symbol.d.ts → SymbolPath.d.ts} +0 -12
- package/dist/utils/{symbol.js → SymbolPath.js} +0 -24
- package/dist/utils/SymbolScale.d.ts +18 -0
- package/dist/utils/SymbolScale.js +29 -0
- package/dist/utils/color/ColorRamp.d.ts +27 -0
- package/dist/utils/color/ColorRamp.js +120 -0
- package/dist/utils/color/CssColor.d.ts +19 -0
- package/dist/utils/color/CssColor.js +114 -0
- package/dist/utils/color/Palette.d.ts +21 -0
- package/dist/utils/color/Palette.js +52 -0
- package/dist/utils/color/index.d.ts +11 -3
- package/dist/utils/color/index.js +14 -3
- package/dist/utils/grouping.js +1 -1
- package/docs/architecture.md +1 -1
- package/docs/chrome.md +2 -2
- package/docs/composer.md +2 -2
- package/docs/concepts.md +1 -1
- package/docs/development.md +1 -1
- package/docs/facets.md +50 -3
- package/docs/getting-started.md +2 -2
- package/docs/legend.md +13 -11
- package/docs/markers.md +57 -27
- package/docs/plots/correlation/heatmap.md +26 -0
- package/docs/plots/correlation/scatter.md +35 -0
- package/docs/plots/distribution/box.md +28 -0
- package/docs/plots/distribution/density.md +26 -0
- package/docs/plots/distribution/histogram.md +33 -0
- package/docs/plots/distribution/pyramid.md +31 -0
- package/docs/plots/distribution/violin.md +35 -0
- package/docs/plots/evolution/area.md +32 -0
- package/docs/plots/evolution/line.md +93 -0
- package/docs/plots/evolution/slope.md +39 -0
- package/docs/plots/evolution/sparkline.md +34 -0
- package/docs/plots/ranking/bar.md +59 -0
- package/docs/plots/ranking/bullet.md +37 -0
- package/docs/plots/ranking/cleveland.md +54 -0
- package/docs/plots/ranking/dumbbell.md +39 -0
- package/docs/plots/ranking/forest.md +40 -0
- package/docs/plots/ranking/lollipop.md +39 -0
- package/docs/plots.md +22 -280
- package/docs/scales.md +30 -24
- package/docs/styles-and-segments.md +25 -21
- package/docs/theming.md +23 -20
- package/docs/timeline.md +3 -3
- package/docs/tooltip-and-hover.md +10 -10
- package/docs/transforms-and-statistics.md +13 -12
- package/examples/BarValues.svelte +1 -1
- package/examples/Box.svelte +1 -1
- package/examples/Bullet.svelte +17 -0
- package/examples/Chrome.svelte +1 -1
- package/examples/ChromeOrder.svelte +1 -1
- package/examples/Cleveland.svelte +15 -0
- package/examples/Composer.svelte +2 -2
- package/examples/CustomTooltip.svelte +1 -1
- package/examples/Density.svelte +7 -0
- package/examples/Dumbbell.svelte +16 -0
- package/examples/Facets.svelte +1 -1
- package/examples/FacetsCarousel.svelte +1 -1
- package/examples/FacetsRowsCols.svelte +1 -1
- package/examples/FacetsScoped.svelte +26 -0
- package/examples/FirstPlot.svelte +1 -1
- package/examples/Forest.svelte +17 -0
- package/examples/Gaps.svelte +2 -2
- package/examples/GroupedBars.svelte +1 -1
- package/examples/Heatmap.svelte +3 -3
- package/examples/HeatmapSegments.svelte +8 -8
- package/examples/Histogram.svelte +1 -1
- package/examples/HorizontalBars.svelte +1 -1
- package/examples/LegendSections.svelte +1 -1
- package/examples/LegendToggle.svelte +1 -1
- package/examples/LineByRegion.svelte +1 -1
- package/examples/LineDates.svelte +1 -1
- package/examples/LineStep.svelte +16 -0
- package/examples/LineStepSegment.svelte +18 -0
- package/examples/Lollipop.svelte +17 -0
- package/examples/Markers.svelte +1 -1
- package/examples/MovingAverage.svelte +1 -1
- package/examples/Pyramid.svelte +9 -2
- package/examples/Regression.svelte +2 -2
- package/examples/ResponsiveLine.svelte +1 -1
- package/examples/Scales.svelte +1 -1
- package/examples/Scatter.svelte +2 -2
- package/examples/SegmentHighlight.svelte +1 -1
- package/examples/Segments.svelte +1 -1
- package/examples/SegmentsBySeries.svelte +1 -1
- package/examples/Slope.svelte +17 -0
- package/examples/Sparkline.svelte +14 -0
- package/examples/StackedArea.svelte +1 -1
- package/examples/StackedBars.svelte +1 -1
- package/examples/TimelinePlayer.svelte +1 -1
- package/examples/TimelineRule.svelte +1 -1
- package/examples/Tooltip.svelte +1 -1
- package/examples/ValueLabels.svelte +1 -1
- package/examples/Violin.svelte +14 -0
- package/examples/datasets/argentina-chile-trends.ts +34 -0
- package/examples/datasets/commodity-prices.ts +48 -0
- package/examples/datasets/countries-over-time.ts +368 -0
- package/examples/datasets/daily-temperature.ts +121 -0
- package/examples/datasets/earthquakes.ts +977 -0
- package/examples/datasets/flight-routes.ts +29 -0
- package/examples/datasets/height-density.ts +37 -0
- package/examples/datasets/heights.ts +370 -0
- package/examples/datasets/index.ts +24 -0
- package/examples/datasets/inflation-by-region.ts +44 -0
- package/examples/datasets/inflation-ranges.ts +34 -0
- package/examples/datasets/iris-flower.ts +207 -0
- package/examples/datasets/life-expectancy.ts +95 -0
- package/examples/datasets/napoleons-march.ts +182 -0
- package/examples/datasets/penguins.ts +54 -0
- package/examples/datasets/population-by-age-with-gaps.ts +23 -0
- package/examples/datasets/population-by-age.ts +890 -0
- package/examples/datasets/province-population.ts +521 -0
- package/examples/datasets/stock-prices.ts +63 -0
- package/examples/datasets/weather-stations-over-time.ts +31 -0
- package/examples/datasets/weather-stations.ts +22 -0
- package/examples/datasets/wind-vectors.ts +30 -0
- package/examples/datasets/world-temperature.ts +400 -0
- package/llms-full.txt +27 -14
- package/llms.txt +33 -4
- package/package.json +10 -1
- package/dist/plots/bar/defaults.d.ts +0 -9
- package/dist/plots/geo/features.svelte.d.ts +0 -5
- package/dist/plots/geo/features.svelte.js +0 -44
- package/dist/plots/geo/phases/tooltip.js +0 -5
- package/dist/plots/utils/geoAccessors.d.ts +0 -72
- package/dist/plots/utils/geoAccessors.js +0 -220
- package/dist/plots/utils/geoSegments.d.ts +0 -29
- package/dist/plots/utils/geoSegments.js +0 -37
- package/dist/types/layout/styles.d.ts +0 -122
- package/dist/types/markers/axis/curveName.d.ts +0 -2
- package/dist/types/plots/line/props.d.ts +0 -10
- package/dist/utils/color/contrast.d.ts +0 -9
- package/dist/utils/color/contrast.js +0 -40
- package/dist/utils/color/cssColor.d.ts +0 -4
- package/dist/utils/color/cssColor.js +0 -77
- package/dist/utils/color/ramp.d.ts +0 -17
- package/dist/utils/color/ramp.js +0 -110
- package/dist/utils/opacity.d.ts +0 -9
- package/dist/utils/opacity.js +0 -38
- package/examples/data.ts +0 -324
- /package/dist/plots/{box → distribution/box}/markers.js +0 -0
- /package/dist/types/layout/{styles.js → statistics/deviation.js} +0 -0
- /package/dist/types/{markers/axis/curveName.js → layout/styles/base.js} +0 -0
- /package/dist/types/{plots/area/props.js → layout/styles/bullet.js} +0 -0
- /package/dist/types/{plots/area/state.js → layout/styles/connector.js} +0 -0
- /package/dist/types/{plots/bar/props.js → layout/styles/curve.js} +0 -0
- /package/dist/types/{plots/bar/state.js → layout/styles/frame.js} +0 -0
- /package/dist/types/{plots/box/props.js → layout/styles/gaps.js} +0 -0
- /package/dist/types/{plots/box/state.js → layout/styles/geo.js} +0 -0
- /package/dist/types/{plots/geo/props.js → layout/styles/values.js} +0 -0
- /package/dist/types/{plots/geo/state.js → markers/axis/violin.js} +0 -0
- /package/dist/types/{plots/heatmap/props.js → markers/channels/commonMarkerConfigWithRowOffset.js} +0 -0
- /package/dist/types/plots/{histogram → correlation/heatmap}/props.js +0 -0
- /package/dist/types/plots/{heatmap → correlation/heatmap}/state.js +0 -0
- /package/dist/types/plots/{line → correlation/scatter}/props.js +0 -0
- /package/dist/types/plots/{histogram → correlation/scatter}/state.js +0 -0
- /package/dist/types/plots/{pyramid → distribution/box}/props.js +0 -0
- /package/dist/types/plots/{line → distribution/box}/state.js +0 -0
- /package/dist/types/plots/{scatter → distribution/density}/props.js +0 -0
- /package/dist/types/plots/{pyramid → distribution/density}/state.js +0 -0
- /package/dist/types/plots/{scatter/state.js → distribution/histogram/props.js} +0 -0
- /package/dist/{plots/utils → utils}/accessors.d.ts +0 -0
- /package/dist/{plots/utils → utils}/accessors.js +0 -0
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { Transforms } from './Transforms';
|
|
2
|
+
import { SERIES_KEY } from './TransformsPhase';
|
|
3
|
+
/** The field a row carries its place in the rows picked from, under which a transform's copy of it is traced back. */
|
|
4
|
+
const PLACE = '__place';
|
|
5
|
+
/**
|
|
6
|
+
* Which rows of a plot a value label is written for: `styles.values.select`
|
|
7
|
+
* (or the plot's own default) and `series`, run as `filter` and `select`
|
|
8
|
+
* transforms over the processed rows. The labelled rows are the union of what
|
|
9
|
+
* each selector picks, returned as the rows themselves, in their own order.
|
|
10
|
+
*/
|
|
11
|
+
export class ValueSelection {
|
|
12
|
+
/** `select` as a list: none is every row. */
|
|
13
|
+
static selectors(select) {
|
|
14
|
+
return select === undefined ? [] : Array.isArray(select) ? select : [select];
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* The transforms that pick the rows, one list per selector: the series filter,
|
|
18
|
+
* then the `select` of that selector, with `'min'` and `'max'` read on
|
|
19
|
+
* `valueAxis`. Without selectors, one list that only filters the series.
|
|
20
|
+
*/
|
|
21
|
+
static transforms(select, series, valueAxis) {
|
|
22
|
+
const names = series === undefined ? undefined : new Set([series].flat());
|
|
23
|
+
const filter = names
|
|
24
|
+
? [{ type: 'filter', filter: (d) => names.has(String(d[SERIES_KEY])) }]
|
|
25
|
+
: [];
|
|
26
|
+
const selectors = ValueSelection.selectors(select);
|
|
27
|
+
if (selectors.length === 0)
|
|
28
|
+
return [filter];
|
|
29
|
+
return selectors.map((selector) => [
|
|
30
|
+
...filter,
|
|
31
|
+
{
|
|
32
|
+
type: 'select',
|
|
33
|
+
select: selector === 'min' || selector === 'max' ? { [valueAxis]: selector } : selector
|
|
34
|
+
}
|
|
35
|
+
]);
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* The rows of `rows` that any of `selections` picks, grouped by `group`
|
|
39
|
+
* (a field key or accessor) and compared on `x` and `y` - the value axis'
|
|
40
|
+
* channel is what `'min'` and `'max'` read. A transform returns copies of its
|
|
41
|
+
* rows, so each is traced back to the row it came from.
|
|
42
|
+
*/
|
|
43
|
+
static pick(rows, selections, channels) {
|
|
44
|
+
const placed = rows.map((row, index) => ({ ...row, [PLACE]: index }));
|
|
45
|
+
const chosen = new Set();
|
|
46
|
+
for (const transforms of selections) {
|
|
47
|
+
const picked = Transforms.resolve({ data: placed, ...channels, grouping: channels.group, transforms }, placed);
|
|
48
|
+
for (const row of picked.data ?? placed)
|
|
49
|
+
chosen.add(row[PLACE]);
|
|
50
|
+
}
|
|
51
|
+
return rows.filter((_, index) => chosen.has(index));
|
|
52
|
+
}
|
|
53
|
+
}
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
<script lang="ts" generics="TData extends Record<string, unknown>">
|
|
2
|
-
import Plot from '
|
|
2
|
+
import Plot from '../../../layout/plot/Plot.svelte';
|
|
3
3
|
import { buildHeatmapDefaults } from './defaults';
|
|
4
|
-
import type {
|
|
4
|
+
import type {
|
|
5
|
+
HeatmapPlotProps,
|
|
6
|
+
HeatmapPlotCoreProps
|
|
7
|
+
} from '../../../types/plots/correlation/heatmap/props';
|
|
5
8
|
|
|
6
9
|
/**
|
|
7
10
|
* A categorical grid of value-colored cells. Draws from pre-built `series` or flat `data` rows.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import Plot from '
|
|
2
|
-
import type { HeatmapPlotProps } from '
|
|
1
|
+
import Plot from '../../../layout/plot/Plot.svelte';
|
|
2
|
+
import type { HeatmapPlotProps } from '../../../types/plots/correlation/heatmap/props';
|
|
3
3
|
declare function $$render<TData extends Record<string, unknown>>(): {
|
|
4
4
|
props: HeatmapPlotProps<TData>;
|
|
5
5
|
exports: {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { AxisPlotDefaults } from '
|
|
2
|
-
import type { HeatmapPlotState, HeatmapPlotCtx } from '
|
|
1
|
+
import type { AxisPlotDefaults } from '../../../types/phases';
|
|
2
|
+
import type { HeatmapPlotState, HeatmapPlotCtx } from '../../../types/plots/correlation/heatmap/state';
|
|
3
3
|
/**
|
|
4
4
|
* HeatmapPlot on the shared pipeline: both axes are categories. A heatmap's
|
|
5
5
|
* `color` is each cell's numeric value, which the "data" phase reads as a
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
import { ContinuousDomain } from '
|
|
1
|
+
import { ColorRamp } from '../../../utils/color';
|
|
2
|
+
import { OpacityScale } from '../../../utils/OpacityScale';
|
|
3
|
+
import { ContinuousDomain } from '../../../utils/ContinuousDomain';
|
|
4
4
|
import { buildMarks, buildValueLabels } from './markers';
|
|
5
5
|
/**
|
|
6
6
|
* HeatmapPlot's own "scales" output, over the band axes the shared phase laid
|
|
@@ -17,7 +17,7 @@ function extendWithColorScales(state, ctx) {
|
|
|
17
17
|
// active range) keeps the original domain - only which cells are hidden
|
|
18
18
|
// changes (resolved in the "markers" phase).
|
|
19
19
|
const effectiveDomain = ContinuousDomain.ramp(valueDomain, range);
|
|
20
|
-
const colorScale =
|
|
20
|
+
const colorScale = ColorRamp.continuous(cfg, scales.color, effectiveDomain);
|
|
21
21
|
const resolveColor = (row) => colorScale(Number(colorAcc.accessor(row)));
|
|
22
22
|
const opacityAcc = channels.opacity;
|
|
23
23
|
let opacityDomainOut;
|
|
@@ -32,7 +32,7 @@ function extendWithColorScales(state, ctx) {
|
|
|
32
32
|
: [...new Set(rawVals.map(String))];
|
|
33
33
|
if (allNumeric && rawVals.length)
|
|
34
34
|
opacityDomainOut = opacityDomain;
|
|
35
|
-
const opacityScale =
|
|
35
|
+
const opacityScale = OpacityScale.resolve(scales.opacity, opacityDomain, cfg.continuous.opacityRange);
|
|
36
36
|
return (row) => opacityScale(opacityAcc.accessor(row));
|
|
37
37
|
})()
|
|
38
38
|
: undefined;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { TextMarkerConfig } from '
|
|
2
|
-
import type { HeatmapPlotState, HeatmapPlotCtx } from '
|
|
3
|
-
import type { ValueLabels } from '
|
|
4
|
-
import type { AxisBasedMarkersConfig } from '
|
|
1
|
+
import type { TextMarkerConfig } from '../../../types/markers/common';
|
|
2
|
+
import type { HeatmapPlotState, HeatmapPlotCtx } from '../../../types/plots/correlation/heatmap/state';
|
|
3
|
+
import type { ValueLabels } from '../../../layout/styles/ValueLabels';
|
|
4
|
+
import type { AxisBasedMarkersConfig } from '../../../types/markers/common';
|
|
5
5
|
/**
|
|
6
6
|
* HeatmapPlot's `styles.values` as one `'text'` marker over the same cells
|
|
7
7
|
* the plot draws, each labelled with its own value and centred on it. Shown
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { LegendState } from '
|
|
2
|
-
import { DisabledStyle } from '
|
|
3
|
-
import { resolveAccessor } from '
|
|
1
|
+
import { LegendState } from '../../../layout/legend/LegendState.svelte';
|
|
2
|
+
import { DisabledStyle } from '../../../layout/legend/DisabledStyle';
|
|
3
|
+
import { resolveAccessor } from '../../../utils/accessors';
|
|
4
4
|
/** A processed channel as a per-row function. */
|
|
5
5
|
function readChannel(channel) {
|
|
6
6
|
return resolveAccessor(channel);
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
<script lang="ts" generics="TData extends Record<string, unknown>">
|
|
2
|
-
import Plot from '
|
|
2
|
+
import Plot from '../../../layout/plot/Plot.svelte';
|
|
3
3
|
import { buildScatterDefaults } from './defaults';
|
|
4
|
-
import type {
|
|
4
|
+
import type {
|
|
5
|
+
ScatterPlotProps,
|
|
6
|
+
ScatterPlotCoreProps
|
|
7
|
+
} from '../../../types/plots/correlation/scatter/props';
|
|
5
8
|
|
|
6
9
|
/**
|
|
7
10
|
* A point cloud on continuous x/y axes; `r` sizes each dot. Draws from pre-built `series` or flat `data` rows.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import Plot from '
|
|
2
|
-
import type { ScatterPlotProps } from '
|
|
1
|
+
import Plot from '../../../layout/plot/Plot.svelte';
|
|
2
|
+
import type { ScatterPlotProps } from '../../../types/plots/correlation/scatter/props';
|
|
3
3
|
declare function $$render<TData extends Record<string, unknown>>(): {
|
|
4
4
|
props: ScatterPlotProps<TData>;
|
|
5
5
|
exports: {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { AxisPlotDefaults } from '
|
|
2
|
-
import type { ScatterPlotState, ScatterPlotCtx } from '
|
|
1
|
+
import type { AxisPlotDefaults } from '../../../types/phases';
|
|
2
|
+
import type { ScatterPlotState, ScatterPlotCtx } from '../../../types/plots/correlation/scatter/state';
|
|
3
3
|
/** ScatterPlot on the shared pipeline: discrete dots, its own radius-padded scales, and its own markers. Its plot defaults to: hover the exact point. */
|
|
4
4
|
export declare function buildScatterDefaults<TData extends Record<string, unknown>>(): AxisPlotDefaults<ScatterPlotState<TData>, ScatterPlotCtx>;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { ProcessedPositions } from '
|
|
1
|
+
import { ProcessedPositions } from '../../../phases/transforms/ProcessedPositions';
|
|
2
2
|
import { buildMarks, buildValueLabels } from './markers';
|
|
3
|
-
import { Margins } from '
|
|
4
|
-
import { MarkerAxisValues } from '
|
|
3
|
+
import { Margins } from '../../../layout/margins/Margins';
|
|
4
|
+
import { MarkerAxisValues } from '../../../phases/scales/MarkerAxisValues';
|
|
5
5
|
/** Stand-in max render radius for a channel-bound `r` (svelteplot's own auto sqrt scale). */
|
|
6
6
|
const AUTO_SCALED_RADIUS_ESTIMATE = 20;
|
|
7
7
|
/**
|
|
@@ -53,7 +53,7 @@ function fitDomains(state, ctx) {
|
|
|
53
53
|
const values = [...processed.data.map((d) => Number(position[axis](d))), ...extra[axis]];
|
|
54
54
|
const domain = paddedDomain(values, radius, size);
|
|
55
55
|
if (domain)
|
|
56
|
-
fit[axis] = { domain };
|
|
56
|
+
fit[axis] = { domain, fitted: true };
|
|
57
57
|
}
|
|
58
58
|
return fit;
|
|
59
59
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { ScatterPlotState, ScatterPlotCtx } from '
|
|
2
|
-
import type { TextMarkerConfig } from '
|
|
3
|
-
import { ValueLabels } from '
|
|
4
|
-
import type { AxisBasedMarkersConfig } from '
|
|
1
|
+
import type { ScatterPlotState, ScatterPlotCtx } from '../../../types/plots/correlation/scatter/state';
|
|
2
|
+
import type { TextMarkerConfig } from '../../../types/markers/common';
|
|
3
|
+
import { ValueLabels } from '../../../layout/styles/ValueLabels';
|
|
4
|
+
import type { AxisBasedMarkersConfig } from '../../../types/markers/common';
|
|
5
5
|
/**
|
|
6
6
|
* ScatterPlot's `styles.values` as one `'text'` marker over the same
|
|
7
7
|
* processed rows its dots draw, each labelled with its own `y` value. A label
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { ProcessedPositions } from '
|
|
2
|
-
import { SERIES_KEY } from '
|
|
3
|
-
import { ValueLabels } from '
|
|
1
|
+
import { ProcessedPositions } from '../../../phases/transforms/ProcessedPositions';
|
|
2
|
+
import { SERIES_KEY } from '../../../phases/transforms/TransformsPhase';
|
|
3
|
+
import { ValueLabels } from '../../../layout/styles/ValueLabels';
|
|
4
4
|
/**
|
|
5
5
|
* ScatterPlot's `styles.values` as one `'text'` marker over the same
|
|
6
6
|
* processed rows its dots draw, each labelled with its own `y` value. A label
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { HoverPosition } from '
|
|
2
|
-
import type { BoxPlotState, BoxSummaryRow } from '
|
|
1
|
+
import type { HoverPosition } from '../../../types/phases';
|
|
2
|
+
import type { BoxPlotState, BoxSummaryRow } from '../../../types/plots/distribution/box/state';
|
|
3
3
|
/**
|
|
4
4
|
* The boxes a box plot draws, one summary row per series, category and facet
|
|
5
5
|
* panel - the same quartiles and whiskers svelteplot's `BoxX`/`BoxY` compute,
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { ProcessedPositions } from '
|
|
1
|
+
import { ProcessedPositions } from '../../../phases/transforms/ProcessedPositions';
|
|
2
2
|
import { quantile } from 'd3-array';
|
|
3
|
-
import { SERIES_ID_KEY, SERIES_KEY } from '
|
|
4
|
-
import { PANEL_KEY } from '
|
|
5
|
-
import { PlotAxes } from '
|
|
6
|
-
import { TooltipState } from '
|
|
7
|
-
import { isGapValue } from '
|
|
3
|
+
import { SERIES_ID_KEY, SERIES_KEY } from '../../../phases/transforms/TransformsPhase';
|
|
4
|
+
import { PANEL_KEY } from '../../../phases/facet/FacetPanels';
|
|
5
|
+
import { PlotAxes } from '../../../phases/data/PlotAxes';
|
|
6
|
+
import { TooltipState } from '../../../layout/tooltip/TooltipState.svelte';
|
|
7
|
+
import { isGapValue } from '../../utils/gaps';
|
|
8
8
|
/** The whiskers reach this many interquartile ranges past the box, as svelteplot draws them. */
|
|
9
9
|
const WHISKER_IQR = 1.5;
|
|
10
10
|
/** A summary value as a tooltip shows it: at most two decimals. */
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
<script lang="ts" generics="TData extends Record<string, unknown>">
|
|
2
|
-
import Plot from '
|
|
2
|
+
import Plot from '../../../layout/plot/Plot.svelte';
|
|
3
3
|
import { buildBoxDefaults } from './defaults';
|
|
4
|
-
import type { BoxPlotProps, BoxPlotCoreProps } from '
|
|
4
|
+
import type { BoxPlotProps, BoxPlotCoreProps } from '../../../types/plots/distribution/box/props';
|
|
5
5
|
|
|
6
6
|
/**
|
|
7
7
|
* A box plot: the distribution of each series' values per category - quartiles, whiskers and outliers - one box per category, upright, or sideways when the categories run along `y`. Draws from pre-built `series` or flat `data` rows.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import Plot from '
|
|
2
|
-
import type { BoxPlotProps } from '
|
|
1
|
+
import Plot from '../../../layout/plot/Plot.svelte';
|
|
2
|
+
import type { BoxPlotProps } from '../../../types/plots/distribution/box/props';
|
|
3
3
|
declare function $$render<TData extends Record<string, unknown>>(): {
|
|
4
4
|
props: BoxPlotProps<TData>;
|
|
5
5
|
exports: {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { AxisPlotDefaults } from '
|
|
2
|
-
import type { BoxPlotState, BoxPlotCtx } from '
|
|
1
|
+
import type { AxisPlotDefaults } from '../../../types/phases';
|
|
2
|
+
import type { BoxPlotState, BoxPlotCtx } from '../../../types/plots/distribution/box/state';
|
|
3
3
|
/**
|
|
4
4
|
* BoxPlot on the shared pipeline: one box per category of each series along
|
|
5
5
|
* one category axis - `x`, or `y` for horizontal boxes, as the "data" phase
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { buildMarks } from './markers';
|
|
2
2
|
import { BoxSummaries } from './BoxSummaries';
|
|
3
|
-
import { TooltipState } from '
|
|
3
|
+
import { TooltipState } from '../../../layout/tooltip/TooltipState.svelte';
|
|
4
4
|
/**
|
|
5
5
|
* BoxPlot on the shared pipeline: one box per category of each series along
|
|
6
6
|
* one category axis - `x`, or `y` for horizontal boxes, as the "data" phase
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { BoxPlotState, BoxPlotCtx } from '
|
|
2
|
-
import type { AxisBasedMarkersConfig } from '
|
|
1
|
+
import type { BoxPlotState, BoxPlotCtx } from '../../../types/plots/distribution/box/state';
|
|
2
|
+
import type { AxisBasedMarkersConfig } from '../../../types/markers/common';
|
|
3
3
|
/**
|
|
4
4
|
* BoxPlot's "markers" phase: one `box` per visual segment of each series,
|
|
5
5
|
* one box per category of its rows, filled with its series' color (or its
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
<script lang="ts" generics="TData extends Record<string, unknown>">
|
|
2
|
+
import Plot from '../../../layout/plot/Plot.svelte';
|
|
3
|
+
import { buildDensityDefaults } from './defaults';
|
|
4
|
+
import type {
|
|
5
|
+
DensityPlotProps,
|
|
6
|
+
DensityPlotCoreProps
|
|
7
|
+
} from '../../../types/plots/distribution/density/props';
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* A kernel density estimate: each series smoothed along `x` - or along `y` alone, for a horizontal curve - and drawn as an area or a line. Draws from pre-built `series` or flat `data` rows.
|
|
11
|
+
* Optional chrome (`title`, `subtitle`, `caption`, `header`, `footer`,
|
|
12
|
+
* `legend`) frames it; `timeline` and `facet` slice its `data` rows.
|
|
13
|
+
* `margins` is bindable: it reports the margin the plot settled on.
|
|
14
|
+
*/
|
|
15
|
+
let {
|
|
16
|
+
title,
|
|
17
|
+
subtitle,
|
|
18
|
+
caption,
|
|
19
|
+
header,
|
|
20
|
+
footer,
|
|
21
|
+
legend,
|
|
22
|
+
order,
|
|
23
|
+
timeline,
|
|
24
|
+
facet,
|
|
25
|
+
tooltip,
|
|
26
|
+
margins = $bindable(),
|
|
27
|
+
...core
|
|
28
|
+
}: DensityPlotProps<TData> = $props();
|
|
29
|
+
</script>
|
|
30
|
+
|
|
31
|
+
<Plot
|
|
32
|
+
core={core as DensityPlotCoreProps<TData>}
|
|
33
|
+
defaults={buildDensityDefaults}
|
|
34
|
+
bind:margins
|
|
35
|
+
{title}
|
|
36
|
+
{subtitle}
|
|
37
|
+
{caption}
|
|
38
|
+
{header}
|
|
39
|
+
{footer}
|
|
40
|
+
{legend}
|
|
41
|
+
{order}
|
|
42
|
+
{timeline}
|
|
43
|
+
{facet}
|
|
44
|
+
{tooltip}
|
|
45
|
+
/>
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import Plot from '../../../layout/plot/Plot.svelte';
|
|
2
|
+
import type { DensityPlotProps } from '../../../types/plots/distribution/density/props';
|
|
3
|
+
declare function $$render<TData extends Record<string, unknown>>(): {
|
|
4
|
+
props: DensityPlotProps<TData>;
|
|
5
|
+
exports: {};
|
|
6
|
+
bindings: "margins";
|
|
7
|
+
slots: {};
|
|
8
|
+
events: {};
|
|
9
|
+
};
|
|
10
|
+
declare class __sveltets_Render<TData extends Record<string, unknown>> {
|
|
11
|
+
props(): ReturnType<typeof $$render<TData>>['props'];
|
|
12
|
+
events(): ReturnType<typeof $$render<TData>>['events'];
|
|
13
|
+
slots(): ReturnType<typeof $$render<TData>>['slots'];
|
|
14
|
+
bindings(): "margins";
|
|
15
|
+
exports(): {};
|
|
16
|
+
}
|
|
17
|
+
interface $$IsomorphicComponent {
|
|
18
|
+
new <TData extends Record<string, unknown>>(options: import('svelte').ComponentConstructorOptions<ReturnType<__sveltets_Render<TData>['props']>>): import('svelte').SvelteComponent<ReturnType<__sveltets_Render<TData>['props']>, ReturnType<__sveltets_Render<TData>['events']>, ReturnType<__sveltets_Render<TData>['slots']>> & {
|
|
19
|
+
$$bindings?: ReturnType<__sveltets_Render<TData>['bindings']>;
|
|
20
|
+
} & ReturnType<__sveltets_Render<TData>['exports']>;
|
|
21
|
+
<TData extends Record<string, unknown>>(internal: unknown, props: ReturnType<__sveltets_Render<TData>['props']> & {}): ReturnType<__sveltets_Render<TData>['exports']>;
|
|
22
|
+
z_$$bindings?: ReturnType<__sveltets_Render<any>['bindings']>;
|
|
23
|
+
}
|
|
24
|
+
declare const Plot: $$IsomorphicComponent;
|
|
25
|
+
type Plot<TData extends Record<string, unknown>> = InstanceType<typeof Plot<TData>>;
|
|
26
|
+
export default Plot;
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { AxisPlotDefaults } from '../../../types/phases';
|
|
2
|
+
import type { DensityPlotState, DensityPlotCtx } from '../../../types/plots/distribution/density/state';
|
|
3
|
+
/**
|
|
4
|
+
* DensityPlot on the shared pipeline: series read one position channel - `x`,
|
|
5
|
+
* or `y` for a horizontal curve - estimated by the plot's transforms merged
|
|
6
|
+
* over the default density of that axis, drawn from a zero baseline as an area
|
|
7
|
+
* or a line, and its own markers. Its plot defaults to: hover along the estimated axis.
|
|
8
|
+
*/
|
|
9
|
+
export declare function buildDensityDefaults<TData extends Record<string, unknown>>(): AxisPlotDefaults<DensityPlotState<TData>, DensityPlotCtx>;
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { buildMarks } from './markers';
|
|
2
|
+
/**
|
|
3
|
+
* The plot's own density along its axis merged over the default one, the
|
|
4
|
+
* author's props winning, and every other transform kept after it in order. A
|
|
5
|
+
* density plot estimates once, so several entries fold into one.
|
|
6
|
+
*/
|
|
7
|
+
function mergeDensity(own, horizontal) {
|
|
8
|
+
const base = { type: horizontal ? 'densityY' : 'densityX' };
|
|
9
|
+
const densities = own.filter((t) => t.type === base.type);
|
|
10
|
+
const others = own.filter((t) => t.type !== base.type);
|
|
11
|
+
const density = densities.reduce((merged, t) => ({ ...merged, ...t }), base);
|
|
12
|
+
return [density, ...others];
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* DensityPlot on the shared pipeline: series read one position channel - `x`,
|
|
16
|
+
* or `y` for a horizontal curve - estimated by the plot's transforms merged
|
|
17
|
+
* over the default density of that axis, drawn from a zero baseline as an area
|
|
18
|
+
* or a line, and its own markers. Its plot defaults to: hover along the estimated axis.
|
|
19
|
+
*/
|
|
20
|
+
export function buildDensityDefaults() {
|
|
21
|
+
return {
|
|
22
|
+
data: { segments: { color: (style) => style?.fill, connect: false } },
|
|
23
|
+
transforms: {
|
|
24
|
+
transforms: (state) => mergeDensity(state.transforms ?? [], state.axes?.isHorizontal ?? false)
|
|
25
|
+
},
|
|
26
|
+
scales: { zero: ['value'] },
|
|
27
|
+
markers: { marks: buildMarks }
|
|
28
|
+
};
|
|
29
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { DensityPlotState, DensityPlotCtx } from '../../../types/plots/distribution/density/state';
|
|
2
|
+
import type { AxisBasedMarkersConfig } from '../../../types/markers/common';
|
|
3
|
+
/**
|
|
4
|
+
* DensityPlot's "markers" phase: one `area` - or `line`, by `styles.mark` - per
|
|
5
|
+
* visual segment of each series, drawing that segment's estimate, dimmed with
|
|
6
|
+
* its series. The markers the "statistics" phase already put in `state.markers`
|
|
7
|
+
* come after.
|
|
8
|
+
*/
|
|
9
|
+
export declare function buildMarks<TData extends Record<string, unknown>>(state: DensityPlotState<TData>, ctx: DensityPlotCtx): AxisBasedMarkersConfig[];
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { Transforms } from '../../../phases/transforms/Transforms';
|
|
2
|
+
/**
|
|
3
|
+
* DensityPlot's "markers" phase: one `area` - or `line`, by `styles.mark` - per
|
|
4
|
+
* visual segment of each series, drawing that segment's estimate, dimmed with
|
|
5
|
+
* its series. The markers the "statistics" phase already put in `state.markers`
|
|
6
|
+
* come after.
|
|
7
|
+
*/
|
|
8
|
+
export function buildMarks(state, ctx) {
|
|
9
|
+
const { channels, options, transforms } = state.processedData;
|
|
10
|
+
const { cfg } = ctx;
|
|
11
|
+
const styles = state.styles;
|
|
12
|
+
const asLine = styles?.mark === 'line';
|
|
13
|
+
return (state.processedGroups ?? []).flatMap((group) => {
|
|
14
|
+
const name = group.series.name;
|
|
15
|
+
const disabledFill = ctx.interaction?.fillFor(name);
|
|
16
|
+
const disabledStroke = ctx.interaction?.strokeFor(name);
|
|
17
|
+
return group.visualSegments.map((seg) => {
|
|
18
|
+
const color = seg.styles.fill ?? state.colorForSeries(name);
|
|
19
|
+
const style = asLine
|
|
20
|
+
? {
|
|
21
|
+
stroke: disabledStroke?.stroke ?? seg.styles.stroke ?? color,
|
|
22
|
+
strokeWidth: disabledStroke?.strokeWidth ?? seg.styles.strokeWidth ?? cfg.density.strokeWidth,
|
|
23
|
+
strokeOpacity: disabledStroke?.strokeOpacity ?? seg.styles.strokeOpacity,
|
|
24
|
+
strokeDasharray: disabledStroke?.strokeDasharray ?? seg.styles.strokeDasharray
|
|
25
|
+
}
|
|
26
|
+
: {
|
|
27
|
+
...seg.styles,
|
|
28
|
+
fill: disabledFill?.fill ?? color,
|
|
29
|
+
fillOpacity: disabledFill?.fillOpacity ?? seg.styles.fillOpacity ?? cfg.density.fillOpacity
|
|
30
|
+
};
|
|
31
|
+
return Transforms.finish({
|
|
32
|
+
type: asLine ? 'line' : 'area',
|
|
33
|
+
series: name,
|
|
34
|
+
data: seg.data,
|
|
35
|
+
...channels,
|
|
36
|
+
...options,
|
|
37
|
+
curve: styles?.curve,
|
|
38
|
+
styles: style
|
|
39
|
+
}, transforms);
|
|
40
|
+
});
|
|
41
|
+
});
|
|
42
|
+
}
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
<script lang="ts" generics="TData extends Record<string, unknown>">
|
|
2
|
-
import Plot from '
|
|
2
|
+
import Plot from '../../../layout/plot/Plot.svelte';
|
|
3
3
|
import { buildHistogramDefaults } from './defaults';
|
|
4
4
|
import type {
|
|
5
5
|
HistogramPlotProps,
|
|
6
6
|
HistogramPlotCoreProps
|
|
7
|
-
} from '
|
|
7
|
+
} from '../../../types/plots/distribution/histogram/props';
|
|
8
8
|
|
|
9
9
|
/**
|
|
10
10
|
* A histogram: each series binned on `x` - or on `y` alone, for horizontal bars - one bar per bin. Draws from pre-built `series` or flat `data` rows.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import Plot from '
|
|
2
|
-
import type { HistogramPlotProps } from '
|
|
1
|
+
import Plot from '../../../layout/plot/Plot.svelte';
|
|
2
|
+
import type { HistogramPlotProps } from '../../../types/plots/distribution/histogram/props';
|
|
3
3
|
declare function $$render<TData extends Record<string, unknown>>(): {
|
|
4
4
|
props: HistogramPlotProps<TData>;
|
|
5
5
|
exports: {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { AxisPlotDefaults } from '
|
|
2
|
-
import type { HistogramPlotState, HistogramPlotCtx } from '
|
|
1
|
+
import type { AxisPlotDefaults } from '../../../types/phases';
|
|
2
|
+
import type { HistogramPlotState, HistogramPlotCtx } from '../../../types/plots/distribution/histogram/state';
|
|
3
3
|
/**
|
|
4
4
|
* HistogramPlot on the shared pipeline: series read one position channel -
|
|
5
5
|
* `x`, or `y` for a horizontal histogram - binned by the plot's transforms
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { buildMarks, buildValueLabels } from './markers';
|
|
2
|
-
import { SERIES_KEY } from '
|
|
3
|
-
import { resolveAccessor } from '
|
|
4
|
-
import { PlotAxes } from '
|
|
2
|
+
import { SERIES_KEY } from '../../../phases/transforms/TransformsPhase';
|
|
3
|
+
import { resolveAccessor } from '../../../utils/accessors';
|
|
4
|
+
import { PlotAxes } from '../../../phases/data/PlotAxes';
|
|
5
5
|
/** One processed channel's value on a row - `undefined` for a channel the transforms didn't set. */
|
|
6
6
|
function readChannel(channel) {
|
|
7
7
|
return channel === undefined
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import type { HistogramPlotState, HistogramPlotCtx } from '
|
|
2
|
-
import type { AxisBasedMarkersConfig, TextMarkerConfig } from '
|
|
3
|
-
import type { ValueLabels } from '
|
|
1
|
+
import type { HistogramPlotState, HistogramPlotCtx } from '../../../types/plots/distribution/histogram/state';
|
|
2
|
+
import type { AxisBasedMarkersConfig, TextMarkerConfig } from '../../../types/markers/common';
|
|
3
|
+
import type { ValueLabels } from '../../../layout/styles/ValueLabels';
|
|
4
4
|
/**
|
|
5
5
|
* HistogramPlot's `styles.values` as one `'text'` marker over its non-empty
|
|
6
6
|
* bins (a `filter` on the count), each labelled with its count by `format`.
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { ProcessedPositions } from '
|
|
2
|
-
import { SERIES_KEY } from '
|
|
3
|
-
import { Transforms } from '
|
|
4
|
-
import { resolveAccessor } from '
|
|
5
|
-
import { PlotAxes } from '
|
|
1
|
+
import { ProcessedPositions } from '../../../phases/transforms/ProcessedPositions';
|
|
2
|
+
import { SERIES_KEY } from '../../../phases/transforms/TransformsPhase';
|
|
3
|
+
import { Transforms } from '../../../phases/transforms/Transforms';
|
|
4
|
+
import { resolveAccessor } from '../../../utils/accessors';
|
|
5
|
+
import { PlotAxes } from '../../../phases/data/PlotAxes';
|
|
6
6
|
/**
|
|
7
7
|
* HistogramPlot's `styles.values` as one `'text'` marker over its non-empty
|
|
8
8
|
* bins (a `filter` on the count), each labelled with its count by `format`.
|
|
@@ -1,7 +1,10 @@
|
|
|
1
1
|
<script lang="ts" generics="TData extends Record<string, unknown>">
|
|
2
|
-
import Plot from '
|
|
2
|
+
import Plot from '../../../layout/plot/Plot.svelte';
|
|
3
3
|
import { buildPyramidDefaults } from './defaults';
|
|
4
|
-
import type {
|
|
4
|
+
import type {
|
|
5
|
+
PyramidPlotProps,
|
|
6
|
+
PyramidPlotCoreProps
|
|
7
|
+
} from '../../../types/plots/distribution/pyramid/props';
|
|
5
8
|
|
|
6
9
|
/**
|
|
7
10
|
* A population-pyramid-style diverging bar plot: horizontal when its categories run along `y`, vertical when they run along `x`. Draws from pre-built `series` or flat `data` rows.
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import Plot from '
|
|
2
|
-
import type { PyramidPlotProps } from '
|
|
1
|
+
import Plot from '../../../layout/plot/Plot.svelte';
|
|
2
|
+
import type { PyramidPlotProps } from '../../../types/plots/distribution/pyramid/props';
|
|
3
3
|
declare function $$render<TData extends Record<string, unknown>>(): {
|
|
4
4
|
props: PyramidPlotProps<TData>;
|
|
5
5
|
exports: {};
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import type { AxisPlotDefaults } from '
|
|
2
|
-
import type { PyramidPlotState, PyramidPlotCtx } from '
|
|
1
|
+
import type { AxisPlotDefaults } from '../../../types/phases';
|
|
2
|
+
import type { PyramidPlotState, PyramidPlotCtx } from '../../../types/plots/distribution/pyramid/state';
|
|
3
3
|
/**
|
|
4
4
|
* PyramidPlot on the shared pipeline. Its `x`/`y` are the visual axes: the one
|
|
5
5
|
* holding categories (read off the values by the "data" phase) runs the bars,
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { ProcessedPositions } from '
|
|
2
|
-
import { PlotAxes } from '
|
|
1
|
+
import { ProcessedPositions } from '../../../phases/transforms/ProcessedPositions';
|
|
2
|
+
import { PlotAxes } from '../../../phases/data/PlotAxes';
|
|
3
3
|
import { buildMarks, buildValueLabels } from './markers';
|
|
4
|
-
import { ValueLabels } from '
|
|
5
|
-
import { seriesIdOf } from '
|
|
6
|
-
import { isGapValue } from '
|
|
7
|
-
import { SERIES_ID_KEY } from '
|
|
4
|
+
import { ValueLabels } from '../../../layout/styles/ValueLabels';
|
|
5
|
+
import { seriesIdOf } from '../../../utils/grouping';
|
|
6
|
+
import { isGapValue } from '../../utils/gaps';
|
|
7
|
+
import { SERIES_ID_KEY } from '../../../phases/transforms/TransformsPhase';
|
|
8
8
|
const byName = (a, b) => a.name.localeCompare(b.name);
|
|
9
9
|
/**
|
|
10
10
|
* PyramidPlot on the shared pipeline. Its `x`/`y` are the visual axes: the one
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import type { TextMarkerConfig } from '
|
|
2
|
-
import type { PyramidPlotState, PyramidPlotCtx } from '
|
|
3
|
-
import type { ValueLabels } from '
|
|
4
|
-
import type { AxisBasedMarkersConfig } from '
|
|
1
|
+
import type { TextMarkerConfig } from '../../../types/markers/common';
|
|
2
|
+
import type { PyramidPlotState, PyramidPlotCtx } from '../../../types/plots/distribution/pyramid/state';
|
|
3
|
+
import type { ValueLabels } from '../../../layout/styles/ValueLabels';
|
|
4
|
+
import type { AxisBasedMarkersConfig } from '../../../types/markers/common';
|
|
5
5
|
/**
|
|
6
6
|
* PyramidPlot's `styles.values` as one `'text'` marker per series, over the
|
|
7
7
|
* same processed rows its bars draw (gap rows never get a label), mirrored to
|