@visactor/vgrammar-core 0.7.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/README.md +160 -0
- package/README.zh-CN.md +11 -0
- package/cjs/component/axis.d.ts +26 -0
- package/cjs/component/axis.js +164 -0
- package/cjs/component/axis.js.map +1 -0
- package/cjs/component/crosshair.d.ts +50 -0
- package/cjs/component/crosshair.js +281 -0
- package/cjs/component/crosshair.js.map +1 -0
- package/cjs/component/datazoom.d.ts +19 -0
- package/cjs/component/datazoom.js +166 -0
- package/cjs/component/datazoom.js.map +1 -0
- package/cjs/component/grid.d.ts +27 -0
- package/cjs/component/grid.js +190 -0
- package/cjs/component/grid.js.map +1 -0
- package/cjs/component/index.d.ts +11 -0
- package/cjs/component/index.js +105 -0
- package/cjs/component/index.js.map +1 -0
- package/cjs/component/label.d.ts +19 -0
- package/cjs/component/label.js +121 -0
- package/cjs/component/label.js.map +1 -0
- package/cjs/component/legend.d.ts +26 -0
- package/cjs/component/legend.js +170 -0
- package/cjs/component/legend.js.map +1 -0
- package/cjs/component/player.d.ts +25 -0
- package/cjs/component/player.js +138 -0
- package/cjs/component/player.js.map +1 -0
- package/cjs/component/scale.d.ts +8 -0
- package/cjs/component/scale.js +25 -0
- package/cjs/component/scale.js.map +1 -0
- package/cjs/component/scrollbar.d.ts +23 -0
- package/cjs/component/scrollbar.js +187 -0
- package/cjs/component/scrollbar.js.map +1 -0
- package/cjs/component/slider.d.ts +19 -0
- package/cjs/component/slider.js +86 -0
- package/cjs/component/slider.js.map +1 -0
- package/cjs/component/title.d.ts +15 -0
- package/cjs/component/title.js +56 -0
- package/cjs/component/title.js.map +1 -0
- package/cjs/component/tooltip.d.ts +62 -0
- package/cjs/component/tooltip.js +305 -0
- package/cjs/component/tooltip.js.map +1 -0
- package/cjs/core/factory.d.ts +35 -0
- package/cjs/core/factory.js +73 -0
- package/cjs/core/factory.js.map +1 -0
- package/cjs/glyph/boxplot.d.ts +10 -0
- package/cjs/glyph/boxplot.js +418 -0
- package/cjs/glyph/boxplot.js.map +1 -0
- package/cjs/glyph/index.d.ts +7 -0
- package/cjs/glyph/index.js +64 -0
- package/cjs/glyph/index.js.map +1 -0
- package/cjs/glyph/link-path.d.ts +7 -0
- package/cjs/glyph/link-path.js +138 -0
- package/cjs/glyph/link-path.js.map +1 -0
- package/cjs/glyph/ripple.d.ts +1 -0
- package/cjs/glyph/ripple.js +44 -0
- package/cjs/glyph/ripple.js.map +1 -0
- package/cjs/glyph/tree-path.d.ts +7 -0
- package/cjs/glyph/tree-path.js +152 -0
- package/cjs/glyph/tree-path.js.map +1 -0
- package/cjs/glyph/violin.d.ts +1 -0
- package/cjs/glyph/violin.js +165 -0
- package/cjs/glyph/violin.js.map +1 -0
- package/cjs/glyph/wave.d.ts +1 -0
- package/cjs/glyph/wave.js +67 -0
- package/cjs/glyph/wave.js.map +1 -0
- package/cjs/graph/animation/animate.d.ts +48 -0
- package/cjs/graph/animation/animate.js +250 -0
- package/cjs/graph/animation/animate.js.map +1 -0
- package/cjs/graph/animation/animation/clip.d.ts +4 -0
- package/cjs/graph/animation/animation/clip.js +54 -0
- package/cjs/graph/animation/animation/clip.js.map +1 -0
- package/cjs/graph/animation/animation/fade.d.ts +4 -0
- package/cjs/graph/animation/animation/fade.js +42 -0
- package/cjs/graph/animation/animation/fade.js.map +1 -0
- package/cjs/graph/animation/animation/grow-cartesian.d.ts +7 -0
- package/cjs/graph/animation/animation/grow-cartesian.js +288 -0
- package/cjs/graph/animation/animation/grow-cartesian.js.map +1 -0
- package/cjs/graph/animation/animation/grow-interval.d.ts +3 -0
- package/cjs/graph/animation/animation/grow-interval.js +194 -0
- package/cjs/graph/animation/animation/grow-interval.js.map +1 -0
- package/cjs/graph/animation/animation/grow-points.d.ts +7 -0
- package/cjs/graph/animation/animation/grow-points.js +118 -0
- package/cjs/graph/animation/animation/grow-points.js.map +1 -0
- package/cjs/graph/animation/animation/grow-polar.d.ts +5 -0
- package/cjs/graph/animation/animation/grow-polar.js +164 -0
- package/cjs/graph/animation/animation/grow-polar.js.map +1 -0
- package/cjs/graph/animation/animation/index.d.ts +11 -0
- package/cjs/graph/animation/animation/index.js +191 -0
- package/cjs/graph/animation/animation/index.js.map +1 -0
- package/cjs/graph/animation/animation/move.d.ts +3 -0
- package/cjs/graph/animation/animation/move.js +90 -0
- package/cjs/graph/animation/animation/move.js.map +1 -0
- package/cjs/graph/animation/animation/rotate.d.ts +3 -0
- package/cjs/graph/animation/animation/rotate.js +42 -0
- package/cjs/graph/animation/animation/rotate.js.map +1 -0
- package/cjs/graph/animation/animation/scale.d.ts +3 -0
- package/cjs/graph/animation/animation/scale.js +84 -0
- package/cjs/graph/animation/animation/scale.js.map +1 -0
- package/cjs/graph/animation/animation/update.d.ts +6 -0
- package/cjs/graph/animation/animation/update.js +22 -0
- package/cjs/graph/animation/animation/update.js.map +1 -0
- package/cjs/graph/animation/animator.d.ts +26 -0
- package/cjs/graph/animation/animator.js +88 -0
- package/cjs/graph/animation/animator.js.map +1 -0
- package/cjs/graph/animation/arranger.d.ts +13 -0
- package/cjs/graph/animation/arranger.js +38 -0
- package/cjs/graph/animation/arranger.js.map +1 -0
- package/cjs/graph/animation/attribute.d.ts +27 -0
- package/cjs/graph/animation/attribute.js +124 -0
- package/cjs/graph/animation/attribute.js.map +1 -0
- package/cjs/graph/animation/config.d.ts +5 -0
- package/cjs/graph/animation/config.js +92 -0
- package/cjs/graph/animation/config.js.map +1 -0
- package/cjs/graph/animation/morph.d.ts +12 -0
- package/cjs/graph/animation/morph.js +174 -0
- package/cjs/graph/animation/morph.js.map +1 -0
- package/cjs/graph/attributes/common.d.ts +2 -0
- package/cjs/graph/attributes/common.js +22 -0
- package/cjs/graph/attributes/common.js.map +1 -0
- package/cjs/graph/attributes/helpers.d.ts +17 -0
- package/cjs/graph/attributes/helpers.js +86 -0
- package/cjs/graph/attributes/helpers.js.map +1 -0
- package/cjs/graph/attributes/index.d.ts +10 -0
- package/cjs/graph/attributes/index.js +257 -0
- package/cjs/graph/attributes/index.js.map +1 -0
- package/cjs/graph/canvas-renderer.d.ts +34 -0
- package/cjs/graph/canvas-renderer.js +121 -0
- package/cjs/graph/canvas-renderer.js.map +1 -0
- package/cjs/graph/constants.d.ts +23 -0
- package/cjs/graph/constants.js +21 -0
- package/cjs/graph/constants.js.map +1 -0
- package/cjs/graph/element.d.ts +66 -0
- package/cjs/graph/element.js +297 -0
- package/cjs/graph/element.js.map +1 -0
- package/cjs/graph/enums.d.ts +153 -0
- package/cjs/graph/enums.js +85 -0
- package/cjs/graph/enums.js.map +1 -0
- package/cjs/graph/glyph-element.d.ts +53 -0
- package/cjs/graph/glyph-element.js +202 -0
- package/cjs/graph/glyph-element.js.map +1 -0
- package/cjs/graph/index.d.ts +3 -0
- package/cjs/graph/index.js +44 -0
- package/cjs/graph/index.js.map +1 -0
- package/cjs/graph/layout/grid.d.ts +3 -0
- package/cjs/graph/layout/grid.js +75 -0
- package/cjs/graph/layout/grid.js.map +1 -0
- package/cjs/graph/layout/layout.d.ts +3 -0
- package/cjs/graph/layout/layout.js +33 -0
- package/cjs/graph/layout/layout.js.map +1 -0
- package/cjs/graph/layout/relative.d.ts +3 -0
- package/cjs/graph/layout/relative.js +86 -0
- package/cjs/graph/layout/relative.js.map +1 -0
- package/cjs/graph/mark/differ.d.ts +20 -0
- package/cjs/graph/mark/differ.js +110 -0
- package/cjs/graph/mark/differ.js.map +1 -0
- package/cjs/graph/mark/encode.d.ts +10 -0
- package/cjs/graph/mark/encode.js +95 -0
- package/cjs/graph/mark/encode.js.map +1 -0
- package/cjs/graph/mark/large-rects.d.ts +10 -0
- package/cjs/graph/mark/large-rects.js +31 -0
- package/cjs/graph/mark/large-rects.js.map +1 -0
- package/cjs/graph/mark/large-symbols.d.ts +11 -0
- package/cjs/graph/mark/large-symbols.js +33 -0
- package/cjs/graph/mark/large-symbols.js.map +1 -0
- package/cjs/graph/mark-tree.d.ts +2 -0
- package/cjs/graph/mark-tree.js +21 -0
- package/cjs/graph/mark-tree.js.map +1 -0
- package/cjs/graph/util/element.d.ts +2 -0
- package/cjs/graph/util/element.js +10 -0
- package/cjs/graph/util/element.js.map +1 -0
- package/cjs/graph/util/env.d.ts +2 -0
- package/cjs/graph/util/env.js +14 -0
- package/cjs/graph/util/env.js.map +1 -0
- package/cjs/graph/util/events-extend.d.ts +5 -0
- package/cjs/graph/util/events-extend.js +18 -0
- package/cjs/graph/util/events-extend.js.map +1 -0
- package/cjs/graph/util/graphic.d.ts +9 -0
- package/cjs/graph/util/graphic.js +59 -0
- package/cjs/graph/util/graphic.js.map +1 -0
- package/cjs/graph/util/point.d.ts +1 -0
- package/cjs/graph/util/point.js +75 -0
- package/cjs/graph/util/point.js.map +1 -0
- package/cjs/index.d.ts +14 -0
- package/cjs/index.js +111 -0
- package/cjs/index.js.map +1 -0
- package/cjs/parse/coordinate.d.ts +7 -0
- package/cjs/parse/coordinate.js +70 -0
- package/cjs/parse/coordinate.js.map +1 -0
- package/cjs/parse/event.d.ts +8 -0
- package/cjs/parse/event.js +33 -0
- package/cjs/parse/event.js.map +1 -0
- package/cjs/parse/mark.d.ts +4 -0
- package/cjs/parse/mark.js +25 -0
- package/cjs/parse/mark.js.map +1 -0
- package/cjs/parse/option.d.ts +3 -0
- package/cjs/parse/option.js +19 -0
- package/cjs/parse/option.js.map +1 -0
- package/cjs/parse/scale.d.ts +8 -0
- package/cjs/parse/scale.js +365 -0
- package/cjs/parse/scale.js.map +1 -0
- package/cjs/parse/transform.d.ts +5 -0
- package/cjs/parse/transform.js +103 -0
- package/cjs/parse/transform.js.map +1 -0
- package/cjs/parse/util.d.ts +13 -0
- package/cjs/parse/util.js +82 -0
- package/cjs/parse/util.js.map +1 -0
- package/cjs/parse/view.d.ts +17 -0
- package/cjs/parse/view.js +108 -0
- package/cjs/parse/view.js.map +1 -0
- package/cjs/semantic-marks/cell.d.ts +13 -0
- package/cjs/semantic-marks/cell.js +61 -0
- package/cjs/semantic-marks/cell.js.map +1 -0
- package/cjs/semantic-marks/interval.d.ts +14 -0
- package/cjs/semantic-marks/interval.js +80 -0
- package/cjs/semantic-marks/interval.js.map +1 -0
- package/cjs/semantic-marks/text.d.ts +10 -0
- package/cjs/semantic-marks/text.js +25 -0
- package/cjs/semantic-marks/text.js.map +1 -0
- package/cjs/theme/common/component.d.ts +15 -0
- package/cjs/theme/common/component.js +493 -0
- package/cjs/theme/common/component.js.map +1 -0
- package/cjs/theme/common/constants.d.ts +1 -0
- package/cjs/theme/common/constants.js +6 -0
- package/cjs/theme/common/constants.js.map +1 -0
- package/cjs/theme/common/mark.d.ts +2 -0
- package/cjs/theme/common/mark.js +15 -0
- package/cjs/theme/common/mark.js.map +1 -0
- package/cjs/theme/dark.d.ts +2 -0
- package/cjs/theme/dark.js +94 -0
- package/cjs/theme/dark.js.map +1 -0
- package/cjs/theme/default.d.ts +2 -0
- package/cjs/theme/default.js +18 -0
- package/cjs/theme/default.js.map +1 -0
- package/cjs/theme/theme-manager.d.ts +8 -0
- package/cjs/theme/theme-manager.js +26 -0
- package/cjs/theme/theme-manager.js.map +1 -0
- package/cjs/transforms/data/bin.d.ts +2 -0
- package/cjs/transforms/data/bin.js +21 -0
- package/cjs/transforms/data/bin.js.map +1 -0
- package/cjs/transforms/data/circular-relation.d.ts +2 -0
- package/cjs/transforms/data/circular-relation.js +56 -0
- package/cjs/transforms/data/circular-relation.js.map +1 -0
- package/cjs/transforms/data/contour.d.ts +2 -0
- package/cjs/transforms/data/contour.js +115 -0
- package/cjs/transforms/data/contour.js.map +1 -0
- package/cjs/transforms/data/filter.d.ts +2 -0
- package/cjs/transforms/data/filter.js +10 -0
- package/cjs/transforms/data/filter.js.map +1 -0
- package/cjs/transforms/data/fold.d.ts +2 -0
- package/cjs/transforms/data/fold.js +24 -0
- package/cjs/transforms/data/fold.js.map +1 -0
- package/cjs/transforms/data/funnel.d.ts +2 -0
- package/cjs/transforms/data/funnel.js +25 -0
- package/cjs/transforms/data/funnel.js.map +1 -0
- package/cjs/transforms/data/join.d.ts +2 -0
- package/cjs/transforms/data/join.js +33 -0
- package/cjs/transforms/data/join.js.map +1 -0
- package/cjs/transforms/data/kde.d.ts +2 -0
- package/cjs/transforms/data/kde.js +90 -0
- package/cjs/transforms/data/kde.js.map +1 -0
- package/cjs/transforms/data/map.d.ts +2 -0
- package/cjs/transforms/data/map.js +23 -0
- package/cjs/transforms/data/map.js.map +1 -0
- package/cjs/transforms/data/pick.d.ts +2 -0
- package/cjs/transforms/data/pick.js +20 -0
- package/cjs/transforms/data/pick.js.map +1 -0
- package/cjs/transforms/data/pie.d.ts +2 -0
- package/cjs/transforms/data/pie.js +24 -0
- package/cjs/transforms/data/pie.js.map +1 -0
- package/cjs/transforms/data/range.d.ts +4 -0
- package/cjs/transforms/data/range.js +15 -0
- package/cjs/transforms/data/range.js.map +1 -0
- package/cjs/transforms/data/sort.d.ts +2 -0
- package/cjs/transforms/data/sort.js +17 -0
- package/cjs/transforms/data/sort.js.map +1 -0
- package/cjs/transforms/data/stack.d.ts +2 -0
- package/cjs/transforms/data/stack.js +74 -0
- package/cjs/transforms/data/stack.js.map +1 -0
- package/cjs/transforms/data/unfold.d.ts +2 -0
- package/cjs/transforms/data/unfold.js +49 -0
- package/cjs/transforms/data/unfold.js.map +1 -0
- package/cjs/transforms/index.d.ts +23 -0
- package/cjs/transforms/index.js +213 -0
- package/cjs/transforms/index.js.map +1 -0
- package/cjs/transforms/mark/dodge.d.ts +2 -0
- package/cjs/transforms/mark/dodge.js +81 -0
- package/cjs/transforms/mark/dodge.js.map +1 -0
- package/cjs/transforms/mark/jitter.d.ts +4 -0
- package/cjs/transforms/mark/jitter.js +53 -0
- package/cjs/transforms/mark/jitter.js.map +1 -0
- package/cjs/transforms/mark/lttb-sample.d.ts +2 -0
- package/cjs/transforms/mark/lttb-sample.js +68 -0
- package/cjs/transforms/mark/lttb-sample.js.map +1 -0
- package/cjs/transforms/mark/mark-overlap.d.ts +2 -0
- package/cjs/transforms/mark/mark-overlap.js +79 -0
- package/cjs/transforms/mark/mark-overlap.js.map +1 -0
- package/cjs/transforms/mark/symmetry.d.ts +2 -0
- package/cjs/transforms/mark/symmetry.js +25 -0
- package/cjs/transforms/mark/symmetry.js.map +1 -0
- package/cjs/transforms/util/util.d.ts +5 -0
- package/cjs/transforms/util/util.js +41 -0
- package/cjs/transforms/util/util.js.map +1 -0
- package/cjs/transforms/view/identifier.d.ts +2 -0
- package/cjs/transforms/view/identifier.js +17 -0
- package/cjs/transforms/view/identifier.js.map +1 -0
- package/cjs/types/animate.d.ts +224 -0
- package/cjs/types/animate.js +6 -0
- package/cjs/types/animate.js.map +1 -0
- package/cjs/types/base.d.ts +36 -0
- package/cjs/types/base.js +6 -0
- package/cjs/types/base.js.map +1 -0
- package/cjs/types/component.d.ts +240 -0
- package/cjs/types/component.js +6 -0
- package/cjs/types/component.js.map +1 -0
- package/cjs/types/coordinate.d.ts +15 -0
- package/cjs/types/coordinate.js +6 -0
- package/cjs/types/coordinate.js.map +1 -0
- package/cjs/types/data.d.ts +55 -0
- package/cjs/types/data.js +5 -0
- package/cjs/types/data.js.map +1 -0
- package/cjs/types/dataflow.d.ts +13 -0
- package/cjs/types/dataflow.js +6 -0
- package/cjs/types/dataflow.js.map +1 -0
- package/cjs/types/element.d.ts +117 -0
- package/cjs/types/element.js +6 -0
- package/cjs/types/element.js.map +1 -0
- package/cjs/types/event.d.ts +58 -0
- package/cjs/types/event.js +6 -0
- package/cjs/types/event.js.map +1 -0
- package/cjs/types/glyph.d.ts +29 -0
- package/cjs/types/glyph.js +6 -0
- package/cjs/types/glyph.js.map +1 -0
- package/cjs/types/grammar.d.ts +184 -0
- package/cjs/types/grammar.js +6 -0
- package/cjs/types/grammar.js.map +1 -0
- package/cjs/types/hooks.d.ts +45 -0
- package/cjs/types/hooks.js +6 -0
- package/cjs/types/hooks.js.map +1 -0
- package/cjs/types/index.d.ts +22 -0
- package/cjs/types/index.js +31 -0
- package/cjs/types/index.js.map +1 -0
- package/cjs/types/layout.d.ts +5 -0
- package/cjs/types/layout.js +6 -0
- package/cjs/types/layout.js.map +1 -0
- package/cjs/types/mark.d.ts +344 -0
- package/cjs/types/mark.js +6 -0
- package/cjs/types/mark.js.map +1 -0
- package/cjs/types/morph.d.ts +29 -0
- package/cjs/types/morph.js +6 -0
- package/cjs/types/morph.js.map +1 -0
- package/cjs/types/plot.d.ts +326 -0
- package/cjs/types/plot.js +6 -0
- package/cjs/types/plot.js.map +1 -0
- package/cjs/types/projection.d.ts +61 -0
- package/cjs/types/projection.js +6 -0
- package/cjs/types/projection.js.map +1 -0
- package/cjs/types/renderer.d.ts +19 -0
- package/cjs/types/renderer.js +6 -0
- package/cjs/types/renderer.js.map +1 -0
- package/cjs/types/scale.d.ts +111 -0
- package/cjs/types/scale.js +6 -0
- package/cjs/types/scale.js.map +1 -0
- package/cjs/types/signal.d.ts +20 -0
- package/cjs/types/signal.js +6 -0
- package/cjs/types/signal.js.map +1 -0
- package/cjs/types/theme.d.ts +41 -0
- package/cjs/types/theme.js +6 -0
- package/cjs/types/theme.js.map +1 -0
- package/cjs/types/transform.d.ts +291 -0
- package/cjs/types/transform.js +6 -0
- package/cjs/types/transform.js.map +1 -0
- package/cjs/types/view.d.ts +217 -0
- package/cjs/types/view.js +6 -0
- package/cjs/types/view.js.map +1 -0
- package/cjs/util/data.d.ts +3 -0
- package/cjs/util/data.js +64 -0
- package/cjs/util/data.js.map +1 -0
- package/cjs/util/grammar-heap.d.ts +14 -0
- package/cjs/util/grammar-heap.js +66 -0
- package/cjs/util/grammar-heap.js.map +1 -0
- package/cjs/util/text.d.ts +19 -0
- package/cjs/util/text.js +32 -0
- package/cjs/util/text.js.map +1 -0
- package/cjs/util/unique-list.d.ts +12 -0
- package/cjs/util/unique-list.js +37 -0
- package/cjs/util/unique-list.js.map +1 -0
- package/cjs/view/View.d.ts +157 -0
- package/cjs/view/View.js +800 -0
- package/cjs/view/View.js.map +1 -0
- package/cjs/view/animate.d.ts +20 -0
- package/cjs/view/animate.js +106 -0
- package/cjs/view/animate.js.map +1 -0
- package/cjs/view/component.d.ts +26 -0
- package/cjs/view/component.js +64 -0
- package/cjs/view/component.js.map +1 -0
- package/cjs/view/constants.d.ts +17 -0
- package/cjs/view/constants.js +13 -0
- package/cjs/view/constants.js.map +1 -0
- package/cjs/view/coordinate.d.ts +23 -0
- package/cjs/view/coordinate.js +59 -0
- package/cjs/view/coordinate.js.map +1 -0
- package/cjs/view/data.d.ts +37 -0
- package/cjs/view/data.js +198 -0
- package/cjs/view/data.js.map +1 -0
- package/cjs/view/dataflow.d.ts +32 -0
- package/cjs/view/dataflow.js +146 -0
- package/cjs/view/dataflow.js.map +1 -0
- package/cjs/view/events.d.ts +4 -0
- package/cjs/view/events.js +34 -0
- package/cjs/view/events.js.map +1 -0
- package/cjs/view/glyph-meta.d.ts +29 -0
- package/cjs/view/glyph-meta.js +45 -0
- package/cjs/view/glyph-meta.js.map +1 -0
- package/cjs/view/glyph.d.ts +14 -0
- package/cjs/view/glyph.js +29 -0
- package/cjs/view/glyph.js.map +1 -0
- package/cjs/view/grammar-base.d.ts +46 -0
- package/cjs/view/grammar-base.js +171 -0
- package/cjs/view/grammar-base.js.map +1 -0
- package/cjs/view/grammar-record.d.ts +39 -0
- package/cjs/view/grammar-record.js +180 -0
- package/cjs/view/grammar-record.js.map +1 -0
- package/cjs/view/group.d.ts +13 -0
- package/cjs/view/group.js +39 -0
- package/cjs/view/group.js.map +1 -0
- package/cjs/view/index.d.ts +1 -0
- package/cjs/view/index.js +21 -0
- package/cjs/view/index.js.map +1 -0
- package/cjs/view/mark.d.ts +112 -0
- package/cjs/view/mark.js +600 -0
- package/cjs/view/mark.js.map +1 -0
- package/cjs/view/scale.d.ts +26 -0
- package/cjs/view/scale.js +86 -0
- package/cjs/view/scale.js.map +1 -0
- package/cjs/view/signal.d.ts +18 -0
- package/cjs/view/signal.js +56 -0
- package/cjs/view/signal.js.map +1 -0
- package/es/component/axis.d.ts +26 -0
- package/es/component/axis.js +162 -0
- package/es/component/axis.js.map +1 -0
- package/es/component/crosshair.d.ts +50 -0
- package/es/component/crosshair.js +275 -0
- package/es/component/crosshair.js.map +1 -0
- package/es/component/datazoom.d.ts +19 -0
- package/es/component/datazoom.js +161 -0
- package/es/component/datazoom.js.map +1 -0
- package/es/component/grid.d.ts +27 -0
- package/es/component/grid.js +193 -0
- package/es/component/grid.js.map +1 -0
- package/es/component/index.d.ts +11 -0
- package/es/component/index.js +22 -0
- package/es/component/index.js.map +1 -0
- package/es/component/label.d.ts +19 -0
- package/es/component/label.js +124 -0
- package/es/component/label.js.map +1 -0
- package/es/component/legend.d.ts +26 -0
- package/es/component/legend.js +169 -0
- package/es/component/legend.js.map +1 -0
- package/es/component/player.d.ts +25 -0
- package/es/component/player.js +136 -0
- package/es/component/player.js.map +1 -0
- package/es/component/scale.d.ts +8 -0
- package/es/component/scale.js +19 -0
- package/es/component/scale.js.map +1 -0
- package/es/component/scrollbar.d.ts +23 -0
- package/es/component/scrollbar.js +184 -0
- package/es/component/scrollbar.js.map +1 -0
- package/es/component/slider.d.ts +19 -0
- package/es/component/slider.js +86 -0
- package/es/component/slider.js.map +1 -0
- package/es/component/title.d.ts +15 -0
- package/es/component/title.js +58 -0
- package/es/component/title.js.map +1 -0
- package/es/component/tooltip.d.ts +62 -0
- package/es/component/tooltip.js +303 -0
- package/es/component/tooltip.js.map +1 -0
- package/es/core/factory.d.ts +35 -0
- package/es/core/factory.js +67 -0
- package/es/core/factory.js.map +1 -0
- package/es/glyph/boxplot.d.ts +10 -0
- package/es/glyph/boxplot.js +410 -0
- package/es/glyph/boxplot.js.map +1 -0
- package/es/glyph/index.d.ts +7 -0
- package/es/glyph/index.js +11 -0
- package/es/glyph/index.js.map +1 -0
- package/es/glyph/link-path.d.ts +7 -0
- package/es/glyph/link-path.js +132 -0
- package/es/glyph/link-path.js.map +1 -0
- package/es/glyph/ripple.d.ts +1 -0
- package/es/glyph/ripple.js +38 -0
- package/es/glyph/ripple.js.map +1 -0
- package/es/glyph/tree-path.d.ts +7 -0
- package/es/glyph/tree-path.js +146 -0
- package/es/glyph/tree-path.js.map +1 -0
- package/es/glyph/violin.d.ts +1 -0
- package/es/glyph/violin.js +163 -0
- package/es/glyph/violin.js.map +1 -0
- package/es/glyph/wave.d.ts +1 -0
- package/es/glyph/wave.js +61 -0
- package/es/glyph/wave.js.map +1 -0
- package/es/graph/animation/animate.d.ts +48 -0
- package/es/graph/animation/animate.js +247 -0
- package/es/graph/animation/animate.js.map +1 -0
- package/es/graph/animation/animation/clip.d.ts +4 -0
- package/es/graph/animation/animation/clip.js +44 -0
- package/es/graph/animation/animation/clip.js.map +1 -0
- package/es/graph/animation/animation/fade.d.ts +4 -0
- package/es/graph/animation/animation/fade.js +32 -0
- package/es/graph/animation/animation/fade.js.map +1 -0
- package/es/graph/animation/animation/grow-cartesian.d.ts +7 -0
- package/es/graph/animation/animation/grow-cartesian.js +272 -0
- package/es/graph/animation/animation/grow-cartesian.js.map +1 -0
- package/es/graph/animation/animation/grow-interval.d.ts +3 -0
- package/es/graph/animation/animation/grow-interval.js +184 -0
- package/es/graph/animation/animation/grow-interval.js.map +1 -0
- package/es/graph/animation/animation/grow-points.d.ts +7 -0
- package/es/graph/animation/animation/grow-points.js +107 -0
- package/es/graph/animation/animation/grow-points.js.map +1 -0
- package/es/graph/animation/animation/grow-polar.d.ts +5 -0
- package/es/graph/animation/animation/grow-polar.js +160 -0
- package/es/graph/animation/animation/grow-polar.js.map +1 -0
- package/es/graph/animation/animation/index.d.ts +11 -0
- package/es/graph/animation/animation/index.js +22 -0
- package/es/graph/animation/animation/index.js.map +1 -0
- package/es/graph/animation/animation/move.d.ts +3 -0
- package/es/graph/animation/animation/move.js +78 -0
- package/es/graph/animation/animation/move.js.map +1 -0
- package/es/graph/animation/animation/rotate.d.ts +3 -0
- package/es/graph/animation/animation/rotate.js +32 -0
- package/es/graph/animation/animation/rotate.js.map +1 -0
- package/es/graph/animation/animation/scale.d.ts +3 -0
- package/es/graph/animation/animation/scale.js +74 -0
- package/es/graph/animation/animation/scale.js.map +1 -0
- package/es/graph/animation/animation/update.d.ts +6 -0
- package/es/graph/animation/animation/update.js +20 -0
- package/es/graph/animation/animation/update.js.map +1 -0
- package/es/graph/animation/animator.d.ts +26 -0
- package/es/graph/animation/animator.js +83 -0
- package/es/graph/animation/animator.js.map +1 -0
- package/es/graph/animation/arranger.d.ts +13 -0
- package/es/graph/animation/arranger.js +29 -0
- package/es/graph/animation/arranger.js.map +1 -0
- package/es/graph/animation/attribute.d.ts +27 -0
- package/es/graph/animation/attribute.js +114 -0
- package/es/graph/animation/attribute.js.map +1 -0
- package/es/graph/animation/config.d.ts +5 -0
- package/es/graph/animation/config.js +84 -0
- package/es/graph/animation/config.js.map +1 -0
- package/es/graph/animation/morph.d.ts +12 -0
- package/es/graph/animation/morph.js +171 -0
- package/es/graph/animation/morph.js.map +1 -0
- package/es/graph/attributes/common.d.ts +2 -0
- package/es/graph/attributes/common.js +13 -0
- package/es/graph/attributes/common.js.map +1 -0
- package/es/graph/attributes/helpers.d.ts +17 -0
- package/es/graph/attributes/helpers.js +75 -0
- package/es/graph/attributes/helpers.js.map +1 -0
- package/es/graph/attributes/index.d.ts +10 -0
- package/es/graph/attributes/index.js +231 -0
- package/es/graph/attributes/index.js.map +1 -0
- package/es/graph/canvas-renderer.d.ts +34 -0
- package/es/graph/canvas-renderer.js +115 -0
- package/es/graph/canvas-renderer.js.map +1 -0
- package/es/graph/constants.d.ts +23 -0
- package/es/graph/constants.js +47 -0
- package/es/graph/constants.js.map +1 -0
- package/es/graph/element.d.ts +66 -0
- package/es/graph/element.js +292 -0
- package/es/graph/element.js.map +1 -0
- package/es/graph/enums.d.ts +153 -0
- package/es/graph/enums.js +129 -0
- package/es/graph/enums.js.map +1 -0
- package/es/graph/glyph-element.d.ts +53 -0
- package/es/graph/glyph-element.js +206 -0
- package/es/graph/glyph-element.js.map +1 -0
- package/es/graph/index.d.ts +3 -0
- package/es/graph/index.js +6 -0
- package/es/graph/index.js.map +1 -0
- package/es/graph/layout/grid.d.ts +3 -0
- package/es/graph/layout/grid.js +66 -0
- package/es/graph/layout/grid.js.map +1 -0
- package/es/graph/layout/layout.d.ts +3 -0
- package/es/graph/layout/layout.js +33 -0
- package/es/graph/layout/layout.js.map +1 -0
- package/es/graph/layout/relative.d.ts +3 -0
- package/es/graph/layout/relative.js +85 -0
- package/es/graph/layout/relative.js.map +1 -0
- package/es/graph/mark/differ.d.ts +20 -0
- package/es/graph/mark/differ.js +104 -0
- package/es/graph/mark/differ.js.map +1 -0
- package/es/graph/mark/encode.d.ts +10 -0
- package/es/graph/mark/encode.js +92 -0
- package/es/graph/mark/encode.js.map +1 -0
- package/es/graph/mark/large-rects.d.ts +10 -0
- package/es/graph/mark/large-rects.js +23 -0
- package/es/graph/mark/large-rects.js.map +1 -0
- package/es/graph/mark/large-symbols.d.ts +11 -0
- package/es/graph/mark/large-symbols.js +27 -0
- package/es/graph/mark/large-symbols.js.map +1 -0
- package/es/graph/mark-tree.d.ts +2 -0
- package/es/graph/mark-tree.js +15 -0
- package/es/graph/mark-tree.js.map +1 -0
- package/es/graph/util/element.d.ts +2 -0
- package/es/graph/util/element.js +8 -0
- package/es/graph/util/element.js.map +1 -0
- package/es/graph/util/env.d.ts +2 -0
- package/es/graph/util/env.js +6 -0
- package/es/graph/util/env.js.map +1 -0
- package/es/graph/util/events-extend.d.ts +5 -0
- package/es/graph/util/events-extend.js +12 -0
- package/es/graph/util/events-extend.js.map +1 -0
- package/es/graph/util/graphic.d.ts +9 -0
- package/es/graph/util/graphic.js +59 -0
- package/es/graph/util/graphic.js.map +1 -0
- package/es/graph/util/point.d.ts +1 -0
- package/es/graph/util/point.js +67 -0
- package/es/graph/util/point.js.map +1 -0
- package/es/index.d.ts +14 -0
- package/es/index.js +27 -0
- package/es/index.js.map +1 -0
- package/es/parse/coordinate.d.ts +7 -0
- package/es/parse/coordinate.js +65 -0
- package/es/parse/coordinate.js.map +1 -0
- package/es/parse/event.d.ts +8 -0
- package/es/parse/event.js +23 -0
- package/es/parse/event.js.map +1 -0
- package/es/parse/mark.d.ts +4 -0
- package/es/parse/mark.js +19 -0
- package/es/parse/mark.js.map +1 -0
- package/es/parse/option.d.ts +3 -0
- package/es/parse/option.js +10 -0
- package/es/parse/option.js.map +1 -0
- package/es/parse/scale.d.ts +8 -0
- package/es/parse/scale.js +347 -0
- package/es/parse/scale.js.map +1 -0
- package/es/parse/transform.d.ts +5 -0
- package/es/parse/transform.js +102 -0
- package/es/parse/transform.js.map +1 -0
- package/es/parse/util.d.ts +13 -0
- package/es/parse/util.js +65 -0
- package/es/parse/util.js.map +1 -0
- package/es/parse/view.d.ts +17 -0
- package/es/parse/view.js +98 -0
- package/es/parse/view.js.map +1 -0
- package/es/semantic-marks/cell.d.ts +13 -0
- package/es/semantic-marks/cell.js +57 -0
- package/es/semantic-marks/cell.js.map +1 -0
- package/es/semantic-marks/interval.d.ts +14 -0
- package/es/semantic-marks/interval.js +87 -0
- package/es/semantic-marks/interval.js.map +1 -0
- package/es/semantic-marks/text.d.ts +10 -0
- package/es/semantic-marks/text.js +22 -0
- package/es/semantic-marks/text.js.map +1 -0
- package/es/theme/common/component.d.ts +15 -0
- package/es/theme/common/component.js +510 -0
- package/es/theme/common/component.js.map +1 -0
- package/es/theme/common/constants.d.ts +1 -0
- package/es/theme/common/constants.js +2 -0
- package/es/theme/common/constants.js.map +1 -0
- package/es/theme/common/mark.d.ts +2 -0
- package/es/theme/common/mark.js +11 -0
- package/es/theme/common/mark.js.map +1 -0
- package/es/theme/dark.d.ts +2 -0
- package/es/theme/dark.js +96 -0
- package/es/theme/dark.js.map +1 -0
- package/es/theme/default.d.ts +2 -0
- package/es/theme/default.js +16 -0
- package/es/theme/default.js.map +1 -0
- package/es/theme/theme-manager.d.ts +8 -0
- package/es/theme/theme-manager.js +22 -0
- package/es/theme/theme-manager.js.map +1 -0
- package/es/transforms/data/bin.d.ts +2 -0
- package/es/transforms/data/bin.js +16 -0
- package/es/transforms/data/bin.js.map +1 -0
- package/es/transforms/data/circular-relation.d.ts +2 -0
- package/es/transforms/data/circular-relation.js +44 -0
- package/es/transforms/data/circular-relation.js.map +1 -0
- package/es/transforms/data/contour.d.ts +2 -0
- package/es/transforms/data/contour.js +111 -0
- package/es/transforms/data/contour.js.map +1 -0
- package/es/transforms/data/filter.d.ts +2 -0
- package/es/transforms/data/filter.js +2 -0
- package/es/transforms/data/filter.js.map +1 -0
- package/es/transforms/data/fold.d.ts +2 -0
- package/es/transforms/data/fold.js +16 -0
- package/es/transforms/data/fold.js.map +1 -0
- package/es/transforms/data/funnel.d.ts +2 -0
- package/es/transforms/data/funnel.js +17 -0
- package/es/transforms/data/funnel.js.map +1 -0
- package/es/transforms/data/join.d.ts +2 -0
- package/es/transforms/data/join.js +26 -0
- package/es/transforms/data/join.js.map +1 -0
- package/es/transforms/data/kde.d.ts +2 -0
- package/es/transforms/data/kde.js +80 -0
- package/es/transforms/data/kde.js.map +1 -0
- package/es/transforms/data/map.d.ts +2 -0
- package/es/transforms/data/map.js +16 -0
- package/es/transforms/data/map.js.map +1 -0
- package/es/transforms/data/pick.d.ts +2 -0
- package/es/transforms/data/pick.js +15 -0
- package/es/transforms/data/pick.js.map +1 -0
- package/es/transforms/data/pie.d.ts +2 -0
- package/es/transforms/data/pie.js +18 -0
- package/es/transforms/data/pie.js.map +1 -0
- package/es/transforms/data/range.d.ts +4 -0
- package/es/transforms/data/range.js +9 -0
- package/es/transforms/data/range.js.map +1 -0
- package/es/transforms/data/sort.d.ts +2 -0
- package/es/transforms/data/sort.js +13 -0
- package/es/transforms/data/sort.js.map +1 -0
- package/es/transforms/data/stack.d.ts +2 -0
- package/es/transforms/data/stack.js +72 -0
- package/es/transforms/data/stack.js.map +1 -0
- package/es/transforms/data/unfold.d.ts +2 -0
- package/es/transforms/data/unfold.js +45 -0
- package/es/transforms/data/unfold.js.map +1 -0
- package/es/transforms/index.d.ts +23 -0
- package/es/transforms/index.js +205 -0
- package/es/transforms/index.js.map +1 -0
- package/es/transforms/mark/dodge.d.ts +2 -0
- package/es/transforms/mark/dodge.js +74 -0
- package/es/transforms/mark/dodge.js.map +1 -0
- package/es/transforms/mark/jitter.d.ts +4 -0
- package/es/transforms/mark/jitter.js +48 -0
- package/es/transforms/mark/jitter.js.map +1 -0
- package/es/transforms/mark/lttb-sample.d.ts +2 -0
- package/es/transforms/mark/lttb-sample.js +60 -0
- package/es/transforms/mark/lttb-sample.js.map +1 -0
- package/es/transforms/mark/mark-overlap.d.ts +2 -0
- package/es/transforms/mark/mark-overlap.js +71 -0
- package/es/transforms/mark/mark-overlap.js.map +1 -0
- package/es/transforms/mark/symmetry.d.ts +2 -0
- package/es/transforms/mark/symmetry.js +20 -0
- package/es/transforms/mark/symmetry.js.map +1 -0
- package/es/transforms/util/util.d.ts +5 -0
- package/es/transforms/util/util.js +33 -0
- package/es/transforms/util/util.js.map +1 -0
- package/es/transforms/view/identifier.d.ts +2 -0
- package/es/transforms/view/identifier.js +13 -0
- package/es/transforms/view/identifier.js.map +1 -0
- package/es/types/animate.d.ts +224 -0
- package/es/types/animate.js +2 -0
- package/es/types/animate.js.map +1 -0
- package/es/types/base.d.ts +36 -0
- package/es/types/base.js +2 -0
- package/es/types/base.js.map +1 -0
- package/es/types/component.d.ts +240 -0
- package/es/types/component.js +2 -0
- package/es/types/component.js.map +1 -0
- package/es/types/coordinate.d.ts +15 -0
- package/es/types/coordinate.js +2 -0
- package/es/types/coordinate.js.map +1 -0
- package/es/types/data.d.ts +55 -0
- package/es/types/data.js +1 -0
- package/es/types/data.js.map +1 -0
- package/es/types/dataflow.d.ts +13 -0
- package/es/types/dataflow.js +2 -0
- package/es/types/dataflow.js.map +1 -0
- package/es/types/element.d.ts +117 -0
- package/es/types/element.js +2 -0
- package/es/types/element.js.map +1 -0
- package/es/types/event.d.ts +58 -0
- package/es/types/event.js +2 -0
- package/es/types/event.js.map +1 -0
- package/es/types/glyph.d.ts +29 -0
- package/es/types/glyph.js +2 -0
- package/es/types/glyph.js.map +1 -0
- package/es/types/grammar.d.ts +184 -0
- package/es/types/grammar.js +2 -0
- package/es/types/grammar.js.map +1 -0
- package/es/types/hooks.d.ts +45 -0
- package/es/types/hooks.js +2 -0
- package/es/types/hooks.js.map +1 -0
- package/es/types/index.d.ts +22 -0
- package/es/types/index.js +44 -0
- package/es/types/index.js.map +1 -0
- package/es/types/layout.d.ts +5 -0
- package/es/types/layout.js +2 -0
- package/es/types/layout.js.map +1 -0
- package/es/types/mark.d.ts +344 -0
- package/es/types/mark.js +2 -0
- package/es/types/mark.js.map +1 -0
- package/es/types/morph.d.ts +29 -0
- package/es/types/morph.js +2 -0
- package/es/types/morph.js.map +1 -0
- package/es/types/plot.d.ts +326 -0
- package/es/types/plot.js +2 -0
- package/es/types/plot.js.map +1 -0
- package/es/types/projection.d.ts +61 -0
- package/es/types/projection.js +2 -0
- package/es/types/projection.js.map +1 -0
- package/es/types/renderer.d.ts +19 -0
- package/es/types/renderer.js +2 -0
- package/es/types/renderer.js.map +1 -0
- package/es/types/scale.d.ts +111 -0
- package/es/types/scale.js +2 -0
- package/es/types/scale.js.map +1 -0
- package/es/types/signal.d.ts +20 -0
- package/es/types/signal.js +2 -0
- package/es/types/signal.js.map +1 -0
- package/es/types/theme.d.ts +41 -0
- package/es/types/theme.js +2 -0
- package/es/types/theme.js.map +1 -0
- package/es/types/transform.d.ts +291 -0
- package/es/types/transform.js +2 -0
- package/es/types/transform.js.map +1 -0
- package/es/types/view.d.ts +217 -0
- package/es/types/view.js +2 -0
- package/es/types/view.js.map +1 -0
- package/es/util/data.d.ts +3 -0
- package/es/util/data.js +60 -0
- package/es/util/data.js.map +1 -0
- package/es/util/grammar-heap.d.ts +14 -0
- package/es/util/grammar-heap.js +58 -0
- package/es/util/grammar-heap.js.map +1 -0
- package/es/util/text.d.ts +19 -0
- package/es/util/text.js +25 -0
- package/es/util/text.js.map +1 -0
- package/es/util/unique-list.d.ts +12 -0
- package/es/util/unique-list.js +29 -0
- package/es/util/unique-list.js.map +1 -0
- package/es/view/View.d.ts +157 -0
- package/es/view/View.js +836 -0
- package/es/view/View.js.map +1 -0
- package/es/view/animate.d.ts +20 -0
- package/es/view/animate.js +98 -0
- package/es/view/animate.js.map +1 -0
- package/es/view/component.d.ts +26 -0
- package/es/view/component.js +64 -0
- package/es/view/component.js.map +1 -0
- package/es/view/constants.d.ts +17 -0
- package/es/view/constants.js +32 -0
- package/es/view/constants.js.map +1 -0
- package/es/view/coordinate.d.ts +23 -0
- package/es/view/coordinate.js +52 -0
- package/es/view/coordinate.js.map +1 -0
- package/es/view/data.d.ts +37 -0
- package/es/view/data.js +195 -0
- package/es/view/data.js.map +1 -0
- package/es/view/dataflow.d.ts +32 -0
- package/es/view/dataflow.js +141 -0
- package/es/view/dataflow.js.map +1 -0
- package/es/view/events.d.ts +4 -0
- package/es/view/events.js +26 -0
- package/es/view/events.js.map +1 -0
- package/es/view/glyph-meta.d.ts +29 -0
- package/es/view/glyph-meta.js +37 -0
- package/es/view/glyph-meta.js.map +1 -0
- package/es/view/glyph.d.ts +14 -0
- package/es/view/glyph.js +27 -0
- package/es/view/glyph.js.map +1 -0
- package/es/view/grammar-base.d.ts +46 -0
- package/es/view/grammar-base.js +165 -0
- package/es/view/grammar-base.js.map +1 -0
- package/es/view/grammar-record.d.ts +39 -0
- package/es/view/grammar-record.js +170 -0
- package/es/view/grammar-record.js.map +1 -0
- package/es/view/group.d.ts +13 -0
- package/es/view/group.js +39 -0
- package/es/view/group.js.map +1 -0
- package/es/view/index.d.ts +1 -0
- package/es/view/index.js +2 -0
- package/es/view/index.js.map +1 -0
- package/es/view/mark.d.ts +112 -0
- package/es/view/mark.js +604 -0
- package/es/view/mark.js.map +1 -0
- package/es/view/scale.d.ts +26 -0
- package/es/view/scale.js +82 -0
- package/es/view/scale.js.map +1 -0
- package/es/view/signal.d.ts +18 -0
- package/es/view/signal.js +52 -0
- package/es/view/signal.js.map +1 -0
- package/package.json +67 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/transforms/data/kde.ts"],"names":[],"mappings":"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","file":"kde.js","sourcesContent":["import type { IPointLike } from '@visactor/vutils';\n// eslint-disable-next-line no-duplicate-imports\nimport { PointService, array, isNumber, quantileSorted } from '@visactor/vutils';\nimport type { KDETransformOption } from '../../types';\n\nconst defaultBins = 256;\nconst defaultAs = ['x', 'kde'];\nconst defaultAs2d = ['x', 'y', 'kde'];\nconst SQRT2PI = Math.sqrt(Math.PI * 2);\nconst SQRT2PI2 = Math.sqrt((Math.PI * 2) ** 2);\n\n// Only use gauss kernel for now\nconst gaussKernel = (x: number, dimension: number = 1) => {\n const sp = dimension === 1 ? SQRT2PI : dimension === 2 ? SQRT2PI2 : Math.sqrt((Math.PI * 2) ** dimension);\n return Math.exp(-(x ** 2) / 2) / sp;\n};\n\n// A rule-of-thumb bandwidth estimator, referring to: https://en.wikipedia.org/wiki/Kernel_density_estimation#A_rule-of-thumb_bandwidth_estimator\nconst ruleOfThumbBandwidth = (data: IPointLike[], dimension: number = 1) => {\n const n = data.length;\n const sum = data.reduce((sum, datum) => sum + datum.x, 0);\n const mean = sum / n;\n const sd = Math.sqrt(data.reduce((v, datum) => v + (datum.x - mean) ** 2, 0) / n);\n const sortedData = data.sort((a, b) => a.x - b.x).map(datum => datum.x);\n const q1 = quantileSorted(sortedData, 0.25);\n const q3 = quantileSorted(sortedData, 0.75);\n const iqr = q3 - q1;\n return 0.9 * Math.min(sd, iqr / 1.34) * n ** -0.2;\n // OR:\n // return 1.06 * sd * n ** -0.2;\n};\n\n// Adaptive bandwidth, referring to: https://www.osti.gov/biblio/1372602\nconst scottBandwidth = (data: IPointLike[], dimension: number = 1) => {\n const n = data.length;\n return n ** (-1 / (dimension + 4));\n};\n\n// referring to: https://en.wikipedia.org/wiki/Kernel_density_estimation#Definition\nconst kde1d = (targetDatum: IPointLike, data: IPointLike[], bandwidth: number) => {\n const n = data.length;\n const kSum = data.reduce((v, datum) => {\n const distance = Math.abs(targetDatum.x - datum.x);\n return v + gaussKernel(distance / bandwidth, 1);\n }, 0);\n return kSum / (n * bandwidth);\n};\n\n// referring to: https://en.wikipedia.org/wiki/Multivariate_kernel_density_estimation#Definition\nconst kde2d = (targetDatum: IPointLike, data: IPointLike[], bandwidth: number) => {\n const n = data.length;\n // Notice here is h^2 which is different from kde1d\n const khSum = data.reduce((v, datum) => {\n const distance = PointService.distancePP(targetDatum, datum);\n return v + gaussKernel(distance / bandwidth ** 2, 1);\n }, 0);\n return khSum / (n * bandwidth ** 2);\n};\n\nexport const transform = (options: KDETransformOption, upstreamData: any[]) => {\n if (!upstreamData || upstreamData.length === 0) {\n return upstreamData;\n }\n const dimension = options.dimension ?? '1d';\n const field = array(options.field);\n const bins = array(options.bins ?? defaultBins);\n const as = array(options.as);\n\n if (dimension === '1d') {\n const data = upstreamData.map(datum => ({ x: datum[field[0]] } as IPointLike));\n const bandwidth = options.bandwidth ?? ruleOfThumbBandwidth(data);\n const min = data.reduce((min, datum) => Math.min(min, datum.x), data[0].x);\n const max = data.reduce((max, datum) => Math.max(max, datum.x), data[0].x);\n\n const extentMin = options.extent?.[0] ?? min;\n const extentMax = options.extent?.[1] ?? max;\n const extent = [\n isNumber(extentMin) ? extentMin : extentMin.x ?? min,\n isNumber(extentMax) ? extentMax : extentMax.x ?? max\n ];\n const step = (extent[1] - extent[0]) / bins[0];\n const kdeResult = new Array(bins[0]).fill(0).map((v, index) => {\n const value = Math.min(extent[0] + step * (index + 0.5), extent[1]);\n return {\n [as[0] ?? defaultAs[0]]: value,\n [as[1] ?? defaultAs[0]]: kde1d({ x: value } as IPointLike, data, bandwidth)\n };\n });\n\n return kdeResult;\n } else if (dimension === '2d') {\n const data = upstreamData.map(datum => ({ x: datum[field[0]], y: datum[field[1]] } as IPointLike));\n const bandwidth = options.bandwidth || scottBandwidth(data, 2);\n\n const min = data.reduce((min, datum) => ({ x: Math.min(min.x, datum.x), y: Math.min(min.y, datum.y) }), data[0]);\n const max = data.reduce((max, datum) => ({ x: Math.max(max.x, datum.x), y: Math.max(max.y, datum.y) }), data[0]);\n\n const extentMin = options.extent?.[0] ?? min;\n const extentMax = options.extent?.[1] ?? max;\n const extent = [\n isNumber(extentMin) ? { x: extentMin, y: extentMin } : { x: extentMin.x ?? min.x, y: extentMin.y ?? min.y },\n isNumber(extentMax) ? { x: extentMax, y: extentMax } : { x: extentMax.x ?? max.x, y: extentMax.y ?? max.y }\n ];\n const binsX = bins[0];\n const binsY = bins[1] ?? bins[0];\n const stepX = (extent[1].x - extent[0].x) / binsX;\n const stepY = (extent[1].y - extent[0].y) / binsY;\n const kdeResult: any[] = [];\n for (let yIndex = 0; yIndex < binsY; yIndex++) {\n for (let xIndex = 0; xIndex < binsX; xIndex++) {\n const x = Math.min(extent[0].x + stepX * (xIndex + 0.5), extent[1].x);\n const y = Math.min(extent[0].y + stepY * (yIndex + 0.5), extent[1].y);\n kdeResult.push({\n [as[0] ?? defaultAs2d[0]]: x,\n [as[1] ?? defaultAs2d[1]]: y,\n [as[2] ?? defaultAs2d[2]]: kde2d({ x, y }, data, bandwidth)\n });\n }\n }\n return kdeResult;\n }\n\n return [];\n};\n"]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: !0
|
|
5
|
+
}), exports.transform = void 0;
|
|
6
|
+
|
|
7
|
+
const vutils_1 = require("@visactor/vutils"), transform = (options, upstreamData, params) => {
|
|
8
|
+
const func = options.callback, as = options.as;
|
|
9
|
+
if (!options.all) return upstreamData.forEach((entry => {
|
|
10
|
+
const data = func(entry, params);
|
|
11
|
+
if (!(0, vutils_1.isNil)(as)) {
|
|
12
|
+
if ((0, vutils_1.isNil)(entry)) return;
|
|
13
|
+
entry[as] = data;
|
|
14
|
+
}
|
|
15
|
+
return data;
|
|
16
|
+
})), upstreamData;
|
|
17
|
+
const data = func(upstreamData, params);
|
|
18
|
+
return (0, vutils_1.isNil)(as) || (0, vutils_1.isNil)(upstreamData) ? data : (upstreamData[as] = data,
|
|
19
|
+
upstreamData);
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
exports.transform = transform;
|
|
23
|
+
//# sourceMappingURL=map.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/transforms/data/map.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AAGlC,MAAM,SAAS,GAAG,CAAC,OAA2B,EAAE,YAAmB,EAAE,MAAY,EAAE,EAAE;IAC1F,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC;IAC9B,MAAM,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;IAEtB,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE;QAChB,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE;YAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;YAEjC,IAAI,CAAC,IAAA,cAAK,EAAC,EAAE,CAAC,EAAE;gBACd,IAAI,IAAA,cAAK,EAAC,KAAK,CAAC,EAAE;oBAChB,OAAO;iBACR;gBACD,KAAK,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;aAClB;YAED,OAAO,IAAI,CAAC;QACd,CAAC,CAAC,CAAC;QAEH,OAAO,YAAY,CAAC;KACrB;IACD,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,EAAE,MAAM,CAAC,CAAC;IAExC,IAAI,IAAA,cAAK,EAAC,EAAE,CAAC,IAAI,IAAA,cAAK,EAAC,YAAY,CAAC,EAAE;QACpC,OAAO,IAAI,CAAC;KACb;IAEA,YAAoB,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IAEjC,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC;AA7BW,QAAA,SAAS,aA6BpB","file":"map.js","sourcesContent":["import { isNil } from '@visactor/vutils';\nimport type { MapTransformOption } from '../../types';\n\nexport const transform = (options: MapTransformOption, upstreamData: any[], params?: any) => {\n const func = options.callback;\n const as = options.as;\n\n if (!options.all) {\n upstreamData.forEach(entry => {\n const data = func(entry, params);\n\n if (!isNil(as)) {\n if (isNil(entry)) {\n return;\n }\n entry[as] = data;\n }\n\n return data;\n });\n\n return upstreamData;\n }\n const data = func(upstreamData, params);\n\n if (isNil(as) || isNil(upstreamData)) {\n return data;\n }\n\n (upstreamData as any)[as] = data;\n\n return upstreamData;\n};\n"]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: !0
|
|
5
|
+
}), exports.transform = void 0;
|
|
6
|
+
|
|
7
|
+
const vgrammar_util_1 = require("@visactor/vgrammar-util"), vutils_1 = require("@visactor/vutils"), util_1 = require("../util/util");
|
|
8
|
+
|
|
9
|
+
function project(source, fields, as) {
|
|
10
|
+
return fields.reduce(((res, field, index) => (res[as[index]] = field(source), res)), {});
|
|
11
|
+
}
|
|
12
|
+
|
|
13
|
+
const transform = (options, upstreamData) => {
|
|
14
|
+
const {fields: fields = []} = options, as = (0, util_1.fieldNames)(fields, options.as || []), fieldsAccessors = fields.map((field => (0,
|
|
15
|
+
vutils_1.isString)(field) ? (0, vgrammar_util_1.field)(field) : field));
|
|
16
|
+
return fieldsAccessors.length ? upstreamData.map(((entry, index) => project(entry, fieldsAccessors, as))) : upstreamData.map(((entry, index) => ({})));
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
exports.transform = transform;
|
|
20
|
+
//# sourceMappingURL=pick.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/transforms/data/pick.ts"],"names":[],"mappings":";;;AACA,2DAAoE;AACpE,6CAA4C;AAC5C,uCAA0C;AAG1C,SAAS,OAAO,CAAC,MAAW,EAAE,MAA6B,EAAE,EAAY;IACvE,OAAO,MAAM,CAAC,MAAM,CAAC,CAAC,GAAQ,EAAE,KAA0B,EAAE,KAAa,EAAE,EAAE;QAC3E,GAAG,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC;QAE/B,OAAO,GAAG,CAAC;IACb,CAAC,EAAE,EAAE,CAAC,CAAC;AACT,CAAC;AAEM,MAAM,SAAS,GAAG,CAAC,OAA4B,EAAE,YAAmB,EAAE,EAAE;IAC7E,MAAM,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,OAAO,CAAC;IAChC,MAAM,EAAE,GAAG,IAAA,iBAAU,EAAC,MAAM,EAAE,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IAChD,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CACzC,IAAA,iBAAQ,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAA,qBAAgB,EAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CACzB,CAAC;IAE3B,OAAO,eAAe,CAAC,MAAM;QAC3B,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAChC,OAAO,OAAO,CAAC,KAAK,EAAE,eAAe,EAAE,EAAE,CAAC,CAAC;QAC7C,CAAC,CAAC;QACJ,CAAC,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;YAChC,OAAO,EAAE,CAAC;QACZ,CAAC,CAAC,CAAC;AACT,CAAC,CAAC;AAdW,QAAA,SAAS,aAcpB","file":"pick.js","sourcesContent":["import type { FieldGetterFunction } from '@visactor/vgrammar-util';\nimport { field as getFieldAccessor } from '@visactor/vgrammar-util';\nimport { isString } from '@visactor/vutils';\nimport { fieldNames } from '../util/util';\nimport type { PickTransformOption } from '../../types';\n\nfunction project(source: any, fields: FieldGetterFunction[], as: string[]) {\n return fields.reduce((res: any, field: FieldGetterFunction, index: number) => {\n res[as[index]] = field(source);\n\n return res;\n }, {});\n}\n\nexport const transform = (options: PickTransformOption, upstreamData: any[]) => {\n const { fields = [] } = options;\n const as = fieldNames(fields, options.as || []);\n const fieldsAccessors = fields.map(field =>\n isString(field) ? getFieldAccessor(field) : field\n ) as FieldGetterFunction[];\n\n return fieldsAccessors.length\n ? upstreamData.map((entry, index) => {\n return project(entry, fieldsAccessors, as);\n })\n : upstreamData.map((entry, index) => {\n return {};\n });\n};\n"]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: !0
|
|
5
|
+
}), exports.transform = void 0;
|
|
6
|
+
|
|
7
|
+
const util_1 = require("../util/util"), transform = (options, upstreamData) => {
|
|
8
|
+
var _a, _b;
|
|
9
|
+
if (!upstreamData || 0 === upstreamData.length) return upstreamData;
|
|
10
|
+
const field = options.field, startAngle = null !== (_a = options.startAngle) && void 0 !== _a ? _a : 0, endAngle = null !== (_b = options.endAngle) && void 0 !== _b ? _b : 2 * Math.PI, {asStartAngle: asStartAngle, asEndAngle: asEndAngle, asMiddleAngle: asMiddleAngle, asRadian: asRadian, asRatio: asRatio, asQuadrant: asQuadrant, asK: asK} = options, total = upstreamData.reduce(((sum, d) => Number.parseFloat(d[field]) + sum), 0), max = upstreamData.reduce(((m, d) => Math.max(m, Number.parseFloat(d[field]))), -1 / 0), intervalAngle = endAngle - startAngle;
|
|
11
|
+
let lastAngle = startAngle;
|
|
12
|
+
const data = upstreamData.map((originDatum => {
|
|
13
|
+
const datum = Object.assign({}, originDatum), ratio = Number.parseFloat(datum[field]) / total, radian = ratio * intervalAngle;
|
|
14
|
+
return asRatio && (datum[asRatio] = ratio), asStartAngle && (datum[asStartAngle] = lastAngle),
|
|
15
|
+
asEndAngle && (datum[asEndAngle] = lastAngle + radian), asMiddleAngle && (datum[asMiddleAngle] = lastAngle + radian / 2),
|
|
16
|
+
asRadian && (datum[asRadian] = radian), asQuadrant && (datum[asQuadrant] = (0, util_1.computeQuadrant)(lastAngle + radian / 2)),
|
|
17
|
+
asK && (datum[asK] = Number.parseFloat(datum[field]) / max), lastAngle = datum[asEndAngle],
|
|
18
|
+
datum;
|
|
19
|
+
}));
|
|
20
|
+
return data[data.length - 1][asEndAngle] = endAngle, data;
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
exports.transform = transform;
|
|
24
|
+
//# sourceMappingURL=pie.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/transforms/data/pie.ts"],"names":[],"mappings":";;;AACA,uCAA+C;AAExC,MAAM,SAAS,GAAG,CAAC,OAA2B,EAAE,YAAmB,EAAE,EAAE;;IAC5E,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;QAC9C,OAAO,YAAY,CAAC;KACrB;IACD,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;IAC5B,MAAM,UAAU,GAAG,MAAA,OAAO,CAAC,UAAU,mCAAI,CAAC,CAAC;IAC3C,MAAM,QAAQ,GAAG,MAAA,OAAO,CAAC,QAAQ,mCAAI,IAAI,CAAC,EAAE,GAAG,CAAC,CAAC;IAEjD,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,GAAG,OAAO,CAAC;IAEhG,MAAM,KAAK,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC;IACpF,MAAM,GAAG,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;IAE/F,MAAM,aAAa,GAAG,QAAQ,GAAG,UAAU,CAAC;IAC5C,IAAI,SAAS,GAAG,UAAU,CAAC;IAC3B,MAAM,IAAI,GAAG,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE;QAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,WAAW,CAAC,CAAC;QAC7C,MAAM,KAAK,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,KAAK,CAAC;QACtD,MAAM,MAAM,GAAG,KAAK,GAAG,aAAa,CAAC;QAErC,OAAO,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;QACpC,YAAY,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,SAAS,CAAC,CAAC;QAClD,UAAU,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,SAAS,GAAG,MAAM,CAAC,CAAC;QACvD,aAAa,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,SAAS,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC;QACjE,QAAQ,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC,CAAC;QACvC,UAAU,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,IAAA,sBAAe,EAAC,SAAS,GAAG,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;QAC5E,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC;QAE5D,SAAS,GAAG,KAAK,CAAC,UAAU,CAAC,CAAC;QAC9B,OAAO,KAAK,CAAC;IACf,CAAC,CAAC,CAAC;IACH,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,QAAQ,CAAC;IAC7C,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAjCW,QAAA,SAAS,aAiCpB","file":"pie.js","sourcesContent":["import type { PieTransformOption } from '../../types';\nimport { computeQuadrant } from '../util/util';\n\nexport const transform = (options: PieTransformOption, upstreamData: any[]) => {\n if (!upstreamData || upstreamData.length === 0) {\n return upstreamData;\n }\n const field = options.field;\n const startAngle = options.startAngle ?? 0;\n const endAngle = options.endAngle ?? Math.PI * 2;\n\n const { asStartAngle, asEndAngle, asMiddleAngle, asRadian, asRatio, asQuadrant, asK } = options;\n\n const total = upstreamData.reduce((sum, d) => Number.parseFloat(d[field]) + sum, 0);\n const max = upstreamData.reduce((m, d) => Math.max(m, Number.parseFloat(d[field])), -Infinity);\n\n const intervalAngle = endAngle - startAngle;\n let lastAngle = startAngle;\n const data = upstreamData.map(originDatum => {\n const datum = Object.assign({}, originDatum);\n const ratio = Number.parseFloat(datum[field]) / total;\n const radian = ratio * intervalAngle;\n\n asRatio && (datum[asRatio] = ratio);\n asStartAngle && (datum[asStartAngle] = lastAngle);\n asEndAngle && (datum[asEndAngle] = lastAngle + radian);\n asMiddleAngle && (datum[asMiddleAngle] = lastAngle + radian / 2);\n asRadian && (datum[asRadian] = radian);\n asQuadrant && (datum[asQuadrant] = computeQuadrant(lastAngle + radian / 2));\n asK && (datum[asK] = Number.parseFloat(datum[field]) / max);\n\n lastAngle = datum[asEndAngle];\n return datum;\n });\n data[data.length - 1][asEndAngle] = endAngle;\n return data;\n};\n"]}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: !0
|
|
5
|
+
}), exports.transform = void 0;
|
|
6
|
+
|
|
7
|
+
const vutils_1 = require("@visactor/vutils"), transform = options => {
|
|
8
|
+
const {start: start, stop: stop, step: step = 1, as: as = "data"} = options;
|
|
9
|
+
return (0, vutils_1.range)(start, stop, step).map((val => ({
|
|
10
|
+
[as]: val
|
|
11
|
+
})));
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
exports.transform = transform;
|
|
15
|
+
//# sourceMappingURL=range.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/transforms/data/range.ts"],"names":[],"mappings":";;;AAAA,6CAAyC;AAGlC,MAAM,SAAS,GAAG,CAAC,OAA8B,EAAE,EAAE;IAC1D,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,GAAG,CAAC,EAAE,EAAE,GAAG,MAAM,EAAE,GAAG,OAAO,CAAC;IAEvD,OAAO,IAAA,cAAK,EAAC,KAAK,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAW,EAAE,EAAE;QAClD,OAAO,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE,CAAC;IACvB,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AANW,QAAA,SAAS,aAMpB","file":"range.js","sourcesContent":["import { range } from '@visactor/vutils';\nimport type { RangeTransformOptions } from '../../types';\n\nexport const transform = (options: RangeTransformOptions) => {\n const { start, stop, step = 1, as = 'data' } = options;\n\n return range(start, stop, step).map((val: number) => {\n return { [as]: val };\n });\n};\n"]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: !0
|
|
5
|
+
}), exports.transform = void 0;
|
|
6
|
+
|
|
7
|
+
const vgrammar_util_1 = require("@visactor/vgrammar-util"), vutils_1 = require("@visactor/vutils"), transform = (options, upstreamData) => {
|
|
8
|
+
const sort = options.sort;
|
|
9
|
+
if (sort && upstreamData) {
|
|
10
|
+
const sortFn = (0, vutils_1.isFunction)(sort) ? sort : (0, vgrammar_util_1.compare)(sort.field, sort.order);
|
|
11
|
+
upstreamData.sort(((a, b) => sortFn(a, b)));
|
|
12
|
+
}
|
|
13
|
+
return upstreamData;
|
|
14
|
+
};
|
|
15
|
+
|
|
16
|
+
exports.transform = transform;
|
|
17
|
+
//# sourceMappingURL=sort.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/transforms/data/sort.ts"],"names":[],"mappings":";;;AAAA,2DAAkD;AAClD,6CAA8C;AAGvC,MAAM,SAAS,GAAG,CAAC,OAA6B,EAAE,YAAmB,EAAE,EAAE;IAC9E,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAE1B,IAAI,IAAI,IAAI,YAAY,EAAE;QACxB,MAAM,MAAM,GAAG,IAAA,mBAAU,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAA,uBAAO,EAAC,IAAI,CAAC,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC;QAEzE,YAAY,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;KACrD;IAED,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC;AAVW,QAAA,SAAS,aAUpB","file":"sort.js","sourcesContent":["import { compare } from '@visactor/vgrammar-util';\nimport { isFunction } from '@visactor/vutils';\nimport type { SortTransformOptions } from '../../types';\n\nexport const transform = (options: SortTransformOptions, upstreamData: any[]) => {\n const sort = options.sort;\n\n if (sort && upstreamData) {\n const sortFn = isFunction(sort) ? sort : compare(sort.field, sort.order);\n\n upstreamData.sort((a: any, b: any) => sortFn(a, b));\n }\n\n return upstreamData;\n};\n"]}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: !0
|
|
5
|
+
}), exports.transform = void 0;
|
|
6
|
+
|
|
7
|
+
const vgrammar_util_1 = require("@visactor/vgrammar-util"), differ_1 = require("../../graph/mark/differ"), stack = (options, data) => {
|
|
8
|
+
var _a;
|
|
9
|
+
const positiveValues = new Map, negativeValues = new Map, offset = null !== (_a = options.offset) && void 0 !== _a ? _a : "diverging";
|
|
10
|
+
return data.map((datum => {
|
|
11
|
+
var _a;
|
|
12
|
+
const dimension = datum[options.dimensionField], stackValue = "diverging" === offset ? datum[options.stackField] : Math.abs(datum[options.stackField]), map = stackValue >= 0 ? positiveValues : negativeValues, lastValue = null !== (_a = map.get(dimension)) && void 0 !== _a ? _a : 0, value = stackValue + lastValue;
|
|
13
|
+
return map.set(dimension, value), {
|
|
14
|
+
dimension: dimension,
|
|
15
|
+
value: stackValue,
|
|
16
|
+
stack: value,
|
|
17
|
+
prevStack: lastValue,
|
|
18
|
+
datum: datum
|
|
19
|
+
};
|
|
20
|
+
}));
|
|
21
|
+
}, silhouetteOffset = (options, data) => {
|
|
22
|
+
if (!data || 0 === data.length) return data;
|
|
23
|
+
const groupedData = (0, differ_1.groupData)(data, (0, vgrammar_util_1.field)("dimension"));
|
|
24
|
+
return groupedData.keys.forEach((key => {
|
|
25
|
+
const dimensionData = groupedData.data.get(key);
|
|
26
|
+
if (!dimensionData || dimensionData.length <= 0) return 0;
|
|
27
|
+
const g0 = -dimensionData.reduce(((sum, entry) => sum + entry.value), 0) / 2;
|
|
28
|
+
dimensionData.forEach((datum => {
|
|
29
|
+
datum.stack = datum.stack + g0, datum.prevStack = datum.prevStack + g0;
|
|
30
|
+
}));
|
|
31
|
+
})), data;
|
|
32
|
+
}, wiggleOffset = (options, data) => {
|
|
33
|
+
if (!data || 0 === data.length) return data;
|
|
34
|
+
const groupedData = (0, differ_1.groupData)(data, (0, vgrammar_util_1.field)("dimension"));
|
|
35
|
+
return groupedData.keys.forEach((key => {
|
|
36
|
+
const dimensionData = groupedData.data.get(key);
|
|
37
|
+
if (!dimensionData || dimensionData.length <= 0) return 0;
|
|
38
|
+
const n = dimensionData.length, g0 = -1 / (n + 1) * dimensionData.reduce(((sum, entry, i) => entry.value * (n - i + 1)), 0);
|
|
39
|
+
dimensionData.forEach((datum => {
|
|
40
|
+
datum.stack = datum.stack + g0, datum.prevStack = datum.prevStack + g0;
|
|
41
|
+
}));
|
|
42
|
+
})), data;
|
|
43
|
+
}, setFields = (options, data) => {
|
|
44
|
+
if (!(options.asPercentStack || options.asPrevPercentStack || options.asPercent || options.asSum)) return data.map((entry => {
|
|
45
|
+
var _a;
|
|
46
|
+
const {stack: stack, prevStack: prevStack, datum: datum} = entry, newDatum = Object.assign({}, datum);
|
|
47
|
+
return newDatum[null !== (_a = options.asStack) && void 0 !== _a ? _a : options.stackField] = stack,
|
|
48
|
+
options.asPrevStack && (newDatum[options.asPrevStack] = prevStack), newDatum;
|
|
49
|
+
}));
|
|
50
|
+
const positiveSums = new Map, negativeSums = new Map;
|
|
51
|
+
return data.forEach((entry => {
|
|
52
|
+
var _a;
|
|
53
|
+
const {dimension: dimension, value: value} = entry, map = value >= 0 ? positiveSums : negativeSums;
|
|
54
|
+
map.set(dimension, (null !== (_a = map.get(dimension)) && void 0 !== _a ? _a : 0) + value);
|
|
55
|
+
})), data.map((entry => {
|
|
56
|
+
var _a, _b;
|
|
57
|
+
const {dimension: dimension, value: value, stack: stack, prevStack: prevStack, datum: datum} = entry, newDatum = Object.assign({}, datum), sum = null !== (_a = (value >= 0 ? positiveSums : negativeSums).get(dimension)) && void 0 !== _a ? _a : 0;
|
|
58
|
+
return newDatum[null !== (_b = options.asStack) && void 0 !== _b ? _b : options.stackField] = stack,
|
|
59
|
+
options.asPrevStack && (newDatum[options.asPrevStack] = prevStack), options.asSum && (newDatum[options.asSum] = sum),
|
|
60
|
+
options.asPercent && (newDatum[options.asPercent] = 0 === sum ? 0 : value / sum),
|
|
61
|
+
options.asPercentStack && (newDatum[options.asPercentStack] = 0 === sum ? 0 : stack / sum),
|
|
62
|
+
options.asPrevPercentStack && (newDatum[options.asPrevPercentStack] = 0 === sum ? 0 : prevStack / sum),
|
|
63
|
+
newDatum;
|
|
64
|
+
}));
|
|
65
|
+
}, transform = (options, upstreamData) => {
|
|
66
|
+
var _a;
|
|
67
|
+
const offset = null !== (_a = options.offset) && void 0 !== _a ? _a : "diverging", data = "negative" === options.order ? upstreamData.slice().reverse() : upstreamData, stackedValues = stack(options, data);
|
|
68
|
+
"silhouette" === offset ? silhouetteOffset(0, stackedValues) : "wiggle" === offset && wiggleOffset(0, stackedValues);
|
|
69
|
+
const output = setFields(options, stackedValues);
|
|
70
|
+
return "negative" === options.order ? output.reverse() : output;
|
|
71
|
+
};
|
|
72
|
+
|
|
73
|
+
exports.transform = transform;
|
|
74
|
+
//# sourceMappingURL=stack.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/transforms/data/stack.ts"],"names":[],"mappings":"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","file":"stack.js","sourcesContent":["import { field } from '@visactor/vgrammar-util';\nimport { groupData } from '../../graph/mark/differ';\nimport type { StackTransformOptions } from '../../types';\n\nconst stack = (options: StackTransformOptions, data: any[]) => {\n const positiveValues = new Map<string, number>();\n const negativeValues = new Map<string, number>();\n\n const offset = options.offset ?? 'diverging';\n\n return data.map(datum => {\n const dimension = datum[options.dimensionField];\n const stackValue = offset === 'diverging' ? datum[options.stackField] : Math.abs(datum[options.stackField]);\n\n const map = stackValue >= 0 ? positiveValues : negativeValues;\n const lastValue = map.get(dimension) ?? 0;\n const value = stackValue + lastValue;\n map.set(dimension, value);\n\n return {\n dimension,\n value: stackValue,\n stack: value,\n prevStack: lastValue,\n datum\n };\n });\n};\n\nconst silhouetteOffset = (options: StackTransformOptions, data: any[]) => {\n if (!data || data.length === 0) {\n return data;\n }\n const groupedData = groupData(data, field('dimension'));\n groupedData.keys.forEach(key => {\n const dimensionData = groupedData.data.get(key);\n if (!dimensionData || dimensionData.length <= 0) {\n return 0;\n }\n // refer to Stacked Graphs – Geometry & Aesthetics by Lee Byron & Martin Wattenberg, http://leebyron.com/streamgraph/\n const g0 = -dimensionData.reduce((sum, entry) => sum + entry.value, 0) / 2;\n dimensionData.forEach(datum => {\n datum.stack = datum.stack + g0;\n datum.prevStack = datum.prevStack + g0;\n });\n });\n\n return data;\n};\n\nconst wiggleOffset = (options: StackTransformOptions, data: any[]) => {\n if (!data || data.length === 0) {\n return data;\n }\n const groupedData = groupData(data, field('dimension'));\n groupedData.keys.forEach(key => {\n const dimensionData = groupedData.data.get(key);\n if (!dimensionData || dimensionData.length <= 0) {\n return 0;\n }\n // refer to Stacked Graphs – Geometry & Aesthetics by Lee Byron & Martin Wattenberg, http://leebyron.com/streamgraph/\n const n = dimensionData.length;\n const g0 = -(1 / (n + 1)) * dimensionData.reduce((sum, entry, i) => entry.value * (n - i + 1), 0);\n dimensionData.forEach(datum => {\n datum.stack = datum.stack + g0;\n datum.prevStack = datum.prevStack + g0;\n });\n });\n\n return data;\n};\n\nconst setFields = (options: StackTransformOptions, data: any[]) => {\n const needPercent = options.asPercentStack || options.asPrevPercentStack || options.asPercent || options.asSum;\n if (!needPercent) {\n return data.map(entry => {\n const { stack, prevStack, datum } = entry;\n const newDatum = Object.assign({}, datum);\n\n newDatum[options.asStack ?? options.stackField] = stack;\n if (options.asPrevStack) {\n newDatum[options.asPrevStack] = prevStack;\n }\n\n return newDatum;\n });\n }\n\n const positiveSums = new Map<string, number>();\n const negativeSums = new Map<string, number>();\n data.forEach(entry => {\n const { dimension, value } = entry;\n const map = value >= 0 ? positiveSums : negativeSums;\n map.set(dimension, (map.get(dimension) ?? 0) + value);\n });\n\n return data.map(entry => {\n const { dimension, value, stack, prevStack, datum } = entry;\n const newDatum = Object.assign({}, datum);\n const map = value >= 0 ? positiveSums : negativeSums;\n const sum = map.get(dimension) ?? 0;\n\n newDatum[options.asStack ?? options.stackField] = stack;\n if (options.asPrevStack) {\n newDatum[options.asPrevStack] = prevStack;\n }\n\n if (options.asSum) {\n newDatum[options.asSum] = sum;\n }\n if (options.asPercent) {\n newDatum[options.asPercent] = sum === 0 ? 0 : value / sum;\n }\n if (options.asPercentStack) {\n newDatum[options.asPercentStack] = sum === 0 ? 0 : stack / sum;\n }\n if (options.asPrevPercentStack) {\n newDatum[options.asPrevPercentStack] = sum === 0 ? 0 : prevStack / sum;\n }\n\n return newDatum;\n });\n};\n\nexport const transform = (options: StackTransformOptions, upstreamData: any[]) => {\n const offset = options.offset ?? 'diverging';\n const data = options.order === 'negative' ? upstreamData.slice().reverse() : upstreamData;\n\n const stackedValues = stack(options, data);\n\n if (offset === 'silhouette') {\n silhouetteOffset(options, stackedValues);\n } else if (offset === 'wiggle') {\n wiggleOffset(options, stackedValues);\n }\n\n const output = setFields(options, stackedValues);\n\n return options.order === 'negative' ? output.reverse() : output;\n};\n"]}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: !0
|
|
5
|
+
}), exports.transform = void 0;
|
|
6
|
+
|
|
7
|
+
const vutils_1 = require("@visactor/vutils"), aggregateFuncs = {
|
|
8
|
+
sum: arr => arr.reduce(((sum, val) => sum + val), 0),
|
|
9
|
+
min: arr => Math.min.apply(null, arr),
|
|
10
|
+
max: arr => Math.max.apply(null, arr),
|
|
11
|
+
count: arr => arr.length,
|
|
12
|
+
mean: arr => arr.reduce(((sum, val) => sum + val), 0) / arr.length
|
|
13
|
+
}, transform = (options, upstreamData) => {
|
|
14
|
+
var _a;
|
|
15
|
+
if (!upstreamData || !upstreamData.length) return [];
|
|
16
|
+
const res = [], groups = {}, keyField = options.keyField, valueField = options.valueField, aggregate = aggregateFuncs[null !== (_a = options.aggregateType) && void 0 !== _a ? _a : "sum"];
|
|
17
|
+
if (options.groupBy) {
|
|
18
|
+
const groupByFields = (0, vutils_1.array)(options.groupBy);
|
|
19
|
+
upstreamData.forEach((entry => {
|
|
20
|
+
if (!entry) return;
|
|
21
|
+
const datum = {}, keys = [];
|
|
22
|
+
groupByFields.forEach((field => {
|
|
23
|
+
datum[field] = entry[field], keys.push(entry[field]);
|
|
24
|
+
}));
|
|
25
|
+
const groupKey = keys.join("~");
|
|
26
|
+
groups[groupKey] ? groups[groupKey].values[entry[keyField]] ? groups[groupKey].values[entry[keyField]].push(entry[valueField]) : groups[groupKey].values[entry[keyField]] = [ entry[valueField] ] : groups[groupKey] = {
|
|
27
|
+
datum: datum,
|
|
28
|
+
values: {
|
|
29
|
+
[entry[keyField]]: [ entry[valueField] ]
|
|
30
|
+
}
|
|
31
|
+
};
|
|
32
|
+
}));
|
|
33
|
+
} else groups[0] = {
|
|
34
|
+
datum: {},
|
|
35
|
+
values: {}
|
|
36
|
+
}, upstreamData.forEach((entry => {
|
|
37
|
+
entry && (groups[0].values[entry[keyField]] ? groups[0].values[entry[keyField]].push(entry[valueField]) : groups[0].values[entry[keyField]] = [ entry[valueField] ]);
|
|
38
|
+
}));
|
|
39
|
+
return Object.keys(groups).forEach((groupKey => {
|
|
40
|
+
const datum = groups[groupKey].datum, values = groups[groupKey].values;
|
|
41
|
+
Object.keys(values).forEach((key => {
|
|
42
|
+
const rows = values[key];
|
|
43
|
+
datum[key] = aggregate(rows);
|
|
44
|
+
})), res.push(datum);
|
|
45
|
+
})), res;
|
|
46
|
+
};
|
|
47
|
+
|
|
48
|
+
exports.transform = transform;
|
|
49
|
+
//# sourceMappingURL=unfold.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/transforms/data/unfold.ts"],"names":[],"mappings":"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","file":"unfold.js","sourcesContent":["import type { UnfoldTransformOptions } from '../../types';\nimport { array } from '@visactor/vutils';\n\nconst aggregateFuncs = {\n sum: (arr: number[]) => arr.reduce((sum: number, val: number) => sum + val, 0),\n min: (arr: number[]) => Math.min.apply(null, arr),\n max: (arr: number[]) => Math.max.apply(null, arr),\n count: (arr: number[]) => arr.length,\n mean: (arr: number[]) => arr.reduce((sum: number, val: number) => sum + val, 0) / arr.length\n};\n\nexport const transform = (options: UnfoldTransformOptions, upstreamData: any[]) => {\n if (!upstreamData || !upstreamData.length) {\n return [];\n }\n\n const res: any[] = [];\n const groups = {};\n const keyField = options.keyField;\n const valueField = options.valueField;\n const aggregate = aggregateFuncs[options.aggregateType ?? 'sum'];\n\n if (options.groupBy) {\n const groupByFields = array(options.groupBy);\n upstreamData.forEach((entry: any) => {\n if (!entry) {\n return;\n }\n const datum = {};\n const keys: any[] = [];\n\n groupByFields.forEach((field: string) => {\n datum[field] = entry[field];\n keys.push(entry[field]);\n });\n\n const groupKey = keys.join('~');\n\n if (groups[groupKey]) {\n if (groups[groupKey].values[entry[keyField]]) {\n groups[groupKey].values[entry[keyField]].push(entry[valueField]);\n } else {\n groups[groupKey].values[entry[keyField]] = [entry[valueField]];\n }\n } else {\n groups[groupKey] = { datum, values: { [entry[keyField]]: [entry[valueField]] } };\n }\n });\n } else {\n groups[0] = { datum: {}, values: {} };\n upstreamData.forEach((entry: any) => {\n if (!entry) {\n return;\n }\n\n if (groups[0].values[entry[keyField]]) {\n groups[0].values[entry[keyField]].push(entry[valueField]);\n } else {\n groups[0].values[entry[keyField]] = [entry[valueField]];\n }\n });\n }\n Object.keys(groups).forEach(groupKey => {\n const datum = groups[groupKey].datum;\n const values = groups[groupKey].values;\n\n Object.keys(values).forEach(key => {\n const rows = values[key];\n\n datum[key] = aggregate(rows as number[]);\n });\n\n res.push(datum);\n });\n\n return res;\n};\n"]}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export declare const registerBinTransform: () => void;
|
|
2
|
+
export declare const registerContourTransform: () => void;
|
|
3
|
+
export declare const registerSortTransform: () => void;
|
|
4
|
+
export declare const registerFilterTransform: () => void;
|
|
5
|
+
export declare const registerJoinTransform: () => void;
|
|
6
|
+
export declare const registerKdeTransform: () => void;
|
|
7
|
+
export declare const registerMapTransform: () => void;
|
|
8
|
+
export declare const registerPickTransform: () => void;
|
|
9
|
+
export declare const registerRangeTransform: () => void;
|
|
10
|
+
export declare const registerStackTransform: () => void;
|
|
11
|
+
export declare const registerFunnelTransform: () => void;
|
|
12
|
+
export declare const registerPieTransform: () => void;
|
|
13
|
+
export declare const registerCircularRelationTransform: () => void;
|
|
14
|
+
export declare const registerFoldTransform: () => void;
|
|
15
|
+
export declare const registerUnfoldTransform: () => void;
|
|
16
|
+
export declare const registerIdentifierTransform: () => void;
|
|
17
|
+
export declare const registerLttbSampleTransform: () => void;
|
|
18
|
+
export declare const registerMarkOverlapTransform: () => void;
|
|
19
|
+
export declare const registerDodgeTransform: () => void;
|
|
20
|
+
export declare const registerJitterTransform: () => void;
|
|
21
|
+
export declare const registerJitterXTransform: () => void;
|
|
22
|
+
export declare const registerJitterYTransform: () => void;
|
|
23
|
+
export declare const registerSymmetryTransform: () => void;
|
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: !0
|
|
5
|
+
}), exports.registerSymmetryTransform = exports.registerJitterYTransform = exports.registerJitterXTransform = exports.registerJitterTransform = exports.registerDodgeTransform = exports.registerMarkOverlapTransform = exports.registerLttbSampleTransform = exports.registerIdentifierTransform = exports.registerUnfoldTransform = exports.registerFoldTransform = exports.registerCircularRelationTransform = exports.registerPieTransform = exports.registerFunnelTransform = exports.registerStackTransform = exports.registerRangeTransform = exports.registerPickTransform = exports.registerMapTransform = exports.registerKdeTransform = exports.registerJoinTransform = exports.registerFilterTransform = exports.registerSortTransform = exports.registerContourTransform = exports.registerBinTransform = void 0;
|
|
6
|
+
|
|
7
|
+
const bin_1 = require("./data/bin"), contour_1 = require("./data/contour"), sort_1 = require("./data/sort"), filter_1 = require("./data/filter"), map_1 = require("./data/map"), kde_1 = require("./data/kde"), join_1 = require("./data/join"), pick_1 = require("./data/pick"), range_1 = require("./data/range"), stack_1 = require("./data/stack"), fold_1 = require("./data/fold"), unfold_1 = require("./data/unfold"), funnel_1 = require("./data/funnel"), pie_1 = require("./data/pie"), circular_relation_1 = require("./data/circular-relation"), lttb_sample_1 = require("./mark/lttb-sample"), mark_overlap_1 = require("./mark/mark-overlap"), identifier_1 = require("./view/identifier"), dodge_1 = require("./mark/dodge"), jitter_1 = require("./mark/jitter"), symmetry_1 = require("./mark/symmetry"), factory_1 = require("../core/factory"), registerBinTransform = () => {
|
|
8
|
+
factory_1.Factory.registerTransform("bin", {
|
|
9
|
+
transform: bin_1.transform,
|
|
10
|
+
markPhase: "beforeJoin"
|
|
11
|
+
}, !0);
|
|
12
|
+
};
|
|
13
|
+
|
|
14
|
+
exports.registerBinTransform = registerBinTransform;
|
|
15
|
+
|
|
16
|
+
const registerContourTransform = () => {
|
|
17
|
+
factory_1.Factory.registerTransform("contour", {
|
|
18
|
+
transform: contour_1.transform,
|
|
19
|
+
markPhase: "beforeJoin"
|
|
20
|
+
}, !0);
|
|
21
|
+
};
|
|
22
|
+
|
|
23
|
+
exports.registerContourTransform = registerContourTransform;
|
|
24
|
+
|
|
25
|
+
const registerSortTransform = () => {
|
|
26
|
+
factory_1.Factory.registerTransform("sort", {
|
|
27
|
+
transform: sort_1.transform,
|
|
28
|
+
markPhase: "beforeJoin"
|
|
29
|
+
}, !0);
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
exports.registerSortTransform = registerSortTransform;
|
|
33
|
+
|
|
34
|
+
const registerFilterTransform = () => {
|
|
35
|
+
factory_1.Factory.registerTransform("filter", {
|
|
36
|
+
transform: filter_1.transform,
|
|
37
|
+
markPhase: "beforeJoin"
|
|
38
|
+
}, !0);
|
|
39
|
+
};
|
|
40
|
+
|
|
41
|
+
exports.registerFilterTransform = registerFilterTransform;
|
|
42
|
+
|
|
43
|
+
const registerJoinTransform = () => {
|
|
44
|
+
factory_1.Factory.registerTransform("join", {
|
|
45
|
+
transform: join_1.transform,
|
|
46
|
+
markPhase: "beforeJoin"
|
|
47
|
+
}, !0);
|
|
48
|
+
};
|
|
49
|
+
|
|
50
|
+
exports.registerJoinTransform = registerJoinTransform;
|
|
51
|
+
|
|
52
|
+
const registerKdeTransform = () => {
|
|
53
|
+
factory_1.Factory.registerTransform("kde", {
|
|
54
|
+
transform: kde_1.transform,
|
|
55
|
+
markPhase: "beforeJoin"
|
|
56
|
+
}, !0);
|
|
57
|
+
};
|
|
58
|
+
|
|
59
|
+
exports.registerKdeTransform = registerKdeTransform;
|
|
60
|
+
|
|
61
|
+
const registerMapTransform = () => {
|
|
62
|
+
factory_1.Factory.registerTransform("map", {
|
|
63
|
+
transform: map_1.transform,
|
|
64
|
+
markPhase: "beforeJoin"
|
|
65
|
+
}, !0);
|
|
66
|
+
};
|
|
67
|
+
|
|
68
|
+
exports.registerMapTransform = registerMapTransform;
|
|
69
|
+
|
|
70
|
+
const registerPickTransform = () => {
|
|
71
|
+
factory_1.Factory.registerTransform("pick", {
|
|
72
|
+
transform: pick_1.transform,
|
|
73
|
+
markPhase: "beforeJoin"
|
|
74
|
+
}, !0);
|
|
75
|
+
};
|
|
76
|
+
|
|
77
|
+
exports.registerPickTransform = registerPickTransform;
|
|
78
|
+
|
|
79
|
+
const registerRangeTransform = () => {
|
|
80
|
+
factory_1.Factory.registerTransform("range", {
|
|
81
|
+
transform: range_1.transform,
|
|
82
|
+
markPhase: "beforeJoin"
|
|
83
|
+
}, !0);
|
|
84
|
+
};
|
|
85
|
+
|
|
86
|
+
exports.registerRangeTransform = registerRangeTransform;
|
|
87
|
+
|
|
88
|
+
const registerStackTransform = () => {
|
|
89
|
+
factory_1.Factory.registerTransform("stack", {
|
|
90
|
+
transform: stack_1.transform,
|
|
91
|
+
markPhase: "beforeJoin"
|
|
92
|
+
}, !0);
|
|
93
|
+
};
|
|
94
|
+
|
|
95
|
+
exports.registerStackTransform = registerStackTransform;
|
|
96
|
+
|
|
97
|
+
const registerFunnelTransform = () => {
|
|
98
|
+
factory_1.Factory.registerTransform("funnel", {
|
|
99
|
+
transform: funnel_1.transform,
|
|
100
|
+
markPhase: "beforeJoin"
|
|
101
|
+
}, !0);
|
|
102
|
+
};
|
|
103
|
+
|
|
104
|
+
exports.registerFunnelTransform = registerFunnelTransform;
|
|
105
|
+
|
|
106
|
+
const registerPieTransform = () => {
|
|
107
|
+
factory_1.Factory.registerTransform("pie", {
|
|
108
|
+
transform: pie_1.transform,
|
|
109
|
+
markPhase: "beforeJoin"
|
|
110
|
+
}, !0);
|
|
111
|
+
};
|
|
112
|
+
|
|
113
|
+
exports.registerPieTransform = registerPieTransform;
|
|
114
|
+
|
|
115
|
+
const registerCircularRelationTransform = () => {
|
|
116
|
+
factory_1.Factory.registerTransform("circularRelation", {
|
|
117
|
+
transform: circular_relation_1.transform,
|
|
118
|
+
markPhase: "beforeJoin"
|
|
119
|
+
}, !0);
|
|
120
|
+
};
|
|
121
|
+
|
|
122
|
+
exports.registerCircularRelationTransform = registerCircularRelationTransform;
|
|
123
|
+
|
|
124
|
+
const registerFoldTransform = () => {
|
|
125
|
+
factory_1.Factory.registerTransform("fold", {
|
|
126
|
+
transform: fold_1.transform,
|
|
127
|
+
markPhase: "beforeJoin"
|
|
128
|
+
}, !0);
|
|
129
|
+
};
|
|
130
|
+
|
|
131
|
+
exports.registerFoldTransform = registerFoldTransform;
|
|
132
|
+
|
|
133
|
+
const registerUnfoldTransform = () => {
|
|
134
|
+
factory_1.Factory.registerTransform("unfold", {
|
|
135
|
+
transform: unfold_1.transform,
|
|
136
|
+
markPhase: "beforeJoin"
|
|
137
|
+
}, !0);
|
|
138
|
+
};
|
|
139
|
+
|
|
140
|
+
exports.registerUnfoldTransform = registerUnfoldTransform;
|
|
141
|
+
|
|
142
|
+
const registerIdentifierTransform = () => {
|
|
143
|
+
factory_1.Factory.registerTransform("identifier", {
|
|
144
|
+
transform: identifier_1.transform,
|
|
145
|
+
markPhase: "beforeJoin"
|
|
146
|
+
}, !0);
|
|
147
|
+
};
|
|
148
|
+
|
|
149
|
+
exports.registerIdentifierTransform = registerIdentifierTransform;
|
|
150
|
+
|
|
151
|
+
const registerLttbSampleTransform = () => {
|
|
152
|
+
factory_1.Factory.registerTransform("lttbsample", {
|
|
153
|
+
transform: lttb_sample_1.transform,
|
|
154
|
+
markPhase: "afterEncode"
|
|
155
|
+
}, !0);
|
|
156
|
+
};
|
|
157
|
+
|
|
158
|
+
exports.registerLttbSampleTransform = registerLttbSampleTransform;
|
|
159
|
+
|
|
160
|
+
const registerMarkOverlapTransform = () => {
|
|
161
|
+
factory_1.Factory.registerTransform("markoverlap", {
|
|
162
|
+
transform: mark_overlap_1.transform,
|
|
163
|
+
markPhase: "afterEncode"
|
|
164
|
+
}, !0);
|
|
165
|
+
};
|
|
166
|
+
|
|
167
|
+
exports.registerMarkOverlapTransform = registerMarkOverlapTransform;
|
|
168
|
+
|
|
169
|
+
const registerDodgeTransform = () => {
|
|
170
|
+
factory_1.Factory.registerTransform("dodge", {
|
|
171
|
+
transform: dodge_1.transform,
|
|
172
|
+
markPhase: "afterEncodeItems"
|
|
173
|
+
}, !0);
|
|
174
|
+
};
|
|
175
|
+
|
|
176
|
+
exports.registerDodgeTransform = registerDodgeTransform;
|
|
177
|
+
|
|
178
|
+
const registerJitterTransform = () => {
|
|
179
|
+
factory_1.Factory.registerTransform("jitter", {
|
|
180
|
+
transform: jitter_1.transform,
|
|
181
|
+
markPhase: "afterEncodeItems"
|
|
182
|
+
}, !0);
|
|
183
|
+
};
|
|
184
|
+
|
|
185
|
+
exports.registerJitterTransform = registerJitterTransform;
|
|
186
|
+
|
|
187
|
+
const registerJitterXTransform = () => {
|
|
188
|
+
factory_1.Factory.registerTransform("jitterX", {
|
|
189
|
+
transform: jitter_1.jitterX,
|
|
190
|
+
markPhase: "afterEncodeItems"
|
|
191
|
+
}, !0);
|
|
192
|
+
};
|
|
193
|
+
|
|
194
|
+
exports.registerJitterXTransform = registerJitterXTransform;
|
|
195
|
+
|
|
196
|
+
const registerJitterYTransform = () => {
|
|
197
|
+
factory_1.Factory.registerTransform("jitterY", {
|
|
198
|
+
transform: jitter_1.jitterY,
|
|
199
|
+
markPhase: "afterEncodeItems"
|
|
200
|
+
}, !0);
|
|
201
|
+
};
|
|
202
|
+
|
|
203
|
+
exports.registerJitterYTransform = registerJitterYTransform;
|
|
204
|
+
|
|
205
|
+
const registerSymmetryTransform = () => {
|
|
206
|
+
factory_1.Factory.registerTransform("symmetry", {
|
|
207
|
+
transform: symmetry_1.symmetry,
|
|
208
|
+
markPhase: "afterEncodeItems"
|
|
209
|
+
}, !0);
|
|
210
|
+
};
|
|
211
|
+
|
|
212
|
+
exports.registerSymmetryTransform = registerSymmetryTransform;
|
|
213
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/transforms/index.ts"],"names":[],"mappings":"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","file":"index.js","sourcesContent":["import { transform as binTransform } from './data/bin';\nimport { transform as contourTransform } from './data/contour';\nimport { transform as sortTransform } from './data/sort';\nimport { transform as filterTransform } from './data/filter';\nimport { transform as mapTransform } from './data/map';\nimport { transform as kdeTransform } from './data/kde';\nimport { transform as joinTransform } from './data/join';\nimport { transform as pickTransform } from './data/pick';\nimport { transform as rangeTransform } from './data/range';\nimport { transform as stackTransform } from './data/stack';\nimport { transform as foldTransform } from './data/fold';\nimport { transform as unfoldTransform } from './data/unfold';\n\nimport { transform as funnelTransform } from './data/funnel';\nimport { transform as pieTransform } from './data/pie';\nimport { transform as circularRelationTransform } from './data/circular-relation';\n\nimport { transform as lttbsampleTransform } from './mark/lttb-sample';\nimport { transform as markoverlapTransform } from './mark/mark-overlap';\n\nimport { transform as identifierTransform } from './view/identifier';\n\nimport { transform as dodgeTransform } from './mark/dodge';\nimport { transform as jitterTransform, jitterX as jitterXTransform, jitterY as jitterYTransform } from './mark/jitter';\nimport { symmetry as symmetryTransform } from './mark/symmetry';\nimport { Factory } from '../core/factory';\nimport type { ITransform } from '../types';\n\nexport const registerBinTransform = () => {\n Factory.registerTransform(\n 'bin',\n { transform: binTransform, markPhase: 'beforeJoin' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerContourTransform = () => {\n Factory.registerTransform(\n 'contour',\n { transform: contourTransform, markPhase: 'beforeJoin' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerSortTransform = () => {\n Factory.registerTransform(\n 'sort',\n { transform: sortTransform, markPhase: 'beforeJoin' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerFilterTransform = () => {\n Factory.registerTransform(\n 'filter',\n { transform: filterTransform, markPhase: 'beforeJoin' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerJoinTransform = () => {\n Factory.registerTransform(\n 'join',\n { transform: joinTransform, markPhase: 'beforeJoin' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerKdeTransform = () => {\n Factory.registerTransform(\n 'kde',\n { transform: kdeTransform, markPhase: 'beforeJoin' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerMapTransform = () => {\n Factory.registerTransform(\n 'map',\n { transform: mapTransform, markPhase: 'beforeJoin' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerPickTransform = () => {\n Factory.registerTransform(\n 'pick',\n { transform: pickTransform, markPhase: 'beforeJoin' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerRangeTransform = () => {\n Factory.registerTransform(\n 'range',\n { transform: rangeTransform, markPhase: 'beforeJoin' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerStackTransform = () => {\n Factory.registerTransform(\n 'stack',\n { transform: stackTransform, markPhase: 'beforeJoin' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerFunnelTransform = () => {\n Factory.registerTransform(\n 'funnel',\n { transform: funnelTransform, markPhase: 'beforeJoin' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerPieTransform = () => {\n Factory.registerTransform(\n 'pie',\n { transform: pieTransform, markPhase: 'beforeJoin' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerCircularRelationTransform = () => {\n Factory.registerTransform(\n 'circularRelation',\n { transform: circularRelationTransform, markPhase: 'beforeJoin' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerFoldTransform = () => {\n Factory.registerTransform(\n 'fold',\n { transform: foldTransform, markPhase: 'beforeJoin' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerUnfoldTransform = () => {\n Factory.registerTransform(\n 'unfold',\n { transform: unfoldTransform, markPhase: 'beforeJoin' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerIdentifierTransform = () => {\n Factory.registerTransform(\n 'identifier',\n { transform: identifierTransform, markPhase: 'beforeJoin' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerLttbSampleTransform = () => {\n Factory.registerTransform(\n 'lttbsample',\n { transform: lttbsampleTransform, markPhase: 'afterEncode' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerMarkOverlapTransform = () => {\n Factory.registerTransform(\n 'markoverlap',\n { transform: markoverlapTransform, markPhase: 'afterEncode' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerDodgeTransform = () => {\n Factory.registerTransform(\n 'dodge',\n { transform: dodgeTransform, markPhase: 'afterEncodeItems' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerJitterTransform = () => {\n Factory.registerTransform(\n 'jitter',\n { transform: jitterTransform, markPhase: 'afterEncodeItems' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerJitterXTransform = () => {\n Factory.registerTransform(\n 'jitterX',\n { transform: jitterXTransform, markPhase: 'afterEncodeItems' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerJitterYTransform = () => {\n Factory.registerTransform(\n 'jitterY',\n { transform: jitterYTransform, markPhase: 'afterEncodeItems' } as Omit<ITransform, 'type'>,\n true\n );\n};\n\nexport const registerSymmetryTransform = () => {\n Factory.registerTransform(\n 'symmetry',\n { transform: symmetryTransform, markPhase: 'afterEncodeItems' } as Omit<ITransform, 'type'>,\n true\n );\n};\n"]}
|