@visactor/vseed 0.3.14 → 0.4.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/dist/cjs/index.cjs +1 -1
- package/dist/cjs/index.cjs.map +1 -1
- package/dist/esm/builder/builder/builder.d.ts +3551 -25203
- package/dist/esm/builder/register/all.js +7 -1
- package/dist/esm/builder/register/all.js.map +1 -1
- package/dist/esm/builder/register/chartType/circlePacking.d.ts +5 -0
- package/dist/esm/builder/register/chartType/circlePacking.js +9 -0
- package/dist/esm/builder/register/chartType/circlePacking.js.map +1 -0
- package/dist/esm/builder/register/chartType/index.d.ts +6 -0
- package/dist/esm/builder/register/chartType/index.js +7 -1
- package/dist/esm/builder/register/chartType/raceBar.d.ts +5 -0
- package/dist/esm/builder/register/chartType/raceBar.js +9 -0
- package/dist/esm/builder/register/chartType/raceBar.js.map +1 -0
- package/dist/esm/builder/register/chartType/raceColumn.d.ts +5 -0
- package/dist/esm/builder/register/chartType/raceColumn.js +9 -0
- package/dist/esm/builder/register/chartType/raceColumn.js.map +1 -0
- package/dist/esm/builder/register/chartType/raceScatter.d.ts +5 -0
- package/dist/esm/builder/register/chartType/raceScatter.js +9 -0
- package/dist/esm/builder/register/chartType/raceScatter.js.map +1 -0
- package/dist/esm/builder/register/chartType/sunburst.d.ts +5 -0
- package/dist/esm/builder/register/chartType/sunburst.js +9 -0
- package/dist/esm/builder/register/chartType/sunburst.js.map +1 -0
- package/dist/esm/builder/register/chartType/treeMap.d.ts +5 -0
- package/dist/esm/builder/register/chartType/treeMap.js +9 -0
- package/dist/esm/builder/register/chartType/treeMap.js.map +1 -0
- package/dist/esm/dataReshape/constant.d.ts +2 -0
- package/dist/esm/dataReshape/constant.js +3 -1
- package/dist/esm/dataReshape/constant.js.map +1 -1
- package/dist/esm/dataReshape/unfoldDimensions.js +8 -2
- package/dist/esm/dataReshape/unfoldDimensions.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/circlePacking.d.ts +2 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/circlePacking.js +33 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/circlePacking.js.map +1 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/index.d.ts +6 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/index.js +7 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/raceBar.d.ts +2 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/raceBar.js +36 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/raceBar.js.map +1 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/raceColumn.d.ts +2 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/raceColumn.js +37 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/raceColumn.js.map +1 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/raceScatter.d.ts +2 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/raceScatter.js +31 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/raceScatter.js.map +1 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/scatter.js +1 -3
- package/dist/esm/pipeline/advanced/chart/pipeline/scatter.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipeline/sunburst.d.ts +2 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/sunburst.js +33 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/sunburst.js.map +1 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/treeMap.d.ts +2 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/treeMap.js +33 -0
- package/dist/esm/pipeline/advanced/chart/pipeline/treeMap.js.map +1 -0
- package/dist/esm/pipeline/advanced/chart/pipes/config/circlePacking.d.ts +2 -0
- package/dist/esm/pipeline/advanced/chart/pipes/config/circlePacking.js +27 -0
- package/dist/esm/pipeline/advanced/chart/pipes/config/circlePacking.js.map +1 -0
- package/dist/esm/pipeline/advanced/chart/pipes/config/index.d.ts +3 -0
- package/dist/esm/pipeline/advanced/chart/pipes/config/index.js +4 -1
- package/dist/esm/pipeline/advanced/chart/pipes/config/index.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/config/sunburst.d.ts +2 -0
- package/dist/esm/pipeline/advanced/chart/pipes/config/sunburst.js +27 -0
- package/dist/esm/pipeline/advanced/chart/pipes/config/sunburst.js.map +1 -0
- package/dist/esm/pipeline/advanced/chart/pipes/config/treeMap.d.ts +2 -0
- package/dist/esm/pipeline/advanced/chart/pipes/config/treeMap.js +27 -0
- package/dist/esm/pipeline/advanced/chart/pipes/config/treeMap.js.map +1 -0
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/hierarchy.d.ts +3 -0
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/hierarchy.js +75 -0
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/hierarchy.js.map +1 -0
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/index.d.ts +4 -0
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/index.js +5 -1
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceBar.d.ts +3 -0
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceBar.js +81 -0
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceBar.js.map +1 -0
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceColumn.d.ts +3 -0
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceColumn.js +81 -0
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceColumn.js.map +1 -0
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceScatter.d.ts +3 -0
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceScatter.js +83 -0
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/raceScatter.js.map +1 -0
- package/dist/esm/pipeline/advanced/chart/pipes/encoding/rose.js.map +1 -1
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/index.d.ts +2 -0
- package/dist/esm/pipeline/advanced/chart/pipes/reshape/index.js +3 -1
- package/dist/esm/pipeline/spec/chart/index.d.ts +1 -0
- package/dist/esm/pipeline/spec/chart/index.js +1 -0
- package/dist/esm/pipeline/spec/chart/pipeline/area.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/area.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/areaPercent.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/areaPercent.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/bar.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/bar.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/barParallel.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/barParallel.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/barPercent.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/barPercent.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/circlePacking.d.ts +1 -0
- package/dist/esm/pipeline/spec/chart/pipeline/circlePacking.js +34 -0
- package/dist/esm/pipeline/spec/chart/pipeline/circlePacking.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipeline/column.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/column.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/columnParallel.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/columnParallel.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/columnPercent.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/columnPercent.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/donut.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/donut.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/funnel.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/funnel.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/heatmap.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/heatmap.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/index.d.ts +6 -0
- package/dist/esm/pipeline/spec/chart/pipeline/index.js +7 -1
- package/dist/esm/pipeline/spec/chart/pipeline/line.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/line.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/pie.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/pie.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/raceBar.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipeline/raceBar.js +26 -0
- package/dist/esm/pipeline/spec/chart/pipeline/raceBar.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipeline/raceColumn.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipeline/raceColumn.js +26 -0
- package/dist/esm/pipeline/spec/chart/pipeline/raceColumn.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipeline/raceScatter.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipeline/raceScatter.js +31 -0
- package/dist/esm/pipeline/spec/chart/pipeline/raceScatter.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipeline/radar.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/radar.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/rose.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/rose.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/roseParallel.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/roseParallel.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/scatter.js +2 -2
- package/dist/esm/pipeline/spec/chart/pipeline/scatter.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipeline/sunburst.d.ts +1 -0
- package/dist/esm/pipeline/spec/chart/pipeline/sunburst.js +34 -0
- package/dist/esm/pipeline/spec/chart/pipeline/sunburst.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipeline/treeMap.d.ts +1 -0
- package/dist/esm/pipeline/spec/chart/pipeline/treeMap.js +37 -0
- package/dist/esm/pipeline/spec/chart/pipeline/treeMap.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/axes/bandAxisStyle.js +6 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/bandAxisStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/linearAxisStyle.js +6 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/linearAxisStyle.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/xLinear.js +5 -2
- package/dist/esm/pipeline/spec/chart/pipes/axes/xLinear.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/axes/yLinear.js +5 -2
- package/dist/esm/pipeline/spec/chart/pipes/axes/yLinear.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetHierarchy.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetHierarchy.js +114 -0
- package/dist/esm/pipeline/spec/chart/pipes/dataset/datasetHierarchy.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/dataset/index.d.ts +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/dataset/index.js +2 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/circlePacking.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/init/circlePacking.js +36 -0
- package/dist/esm/pipeline/spec/chart/pipes/init/circlePacking.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/init/index.d.ts +3 -0
- package/dist/esm/pipeline/spec/chart/pipes/init/index.js +4 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/scatter.js +4 -0
- package/dist/esm/pipeline/spec/chart/pipes/init/scatter.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/init/sunburst.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/init/sunburst.js +44 -0
- package/dist/esm/pipeline/spec/chart/pipes/init/sunburst.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/init/treeMap.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/init/treeMap.js +26 -0
- package/dist/esm/pipeline/spec/chart/pipes/init/treeMap.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/index.d.ts +4 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/index.js +5 -1
- package/dist/esm/pipeline/spec/chart/pipes/label/label.js.map +1 -1
- package/dist/esm/pipeline/spec/chart/pipes/label/labelCirclePacking.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/labelCirclePacking.js +23 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/labelCirclePacking.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/labelSunburst.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/labelSunburst.js +26 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/labelSunburst.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/labelTreeMapGroup.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/labelTreeMapGroup.js +31 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/labelTreeMapGroup.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/labelTreeMapLeaf.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/labelTreeMapLeaf.js +68 -0
- package/dist/esm/pipeline/spec/chart/pipes/label/labelTreeMapLeaf.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/player/index.d.ts +4 -1
- package/dist/esm/pipeline/spec/chart/pipes/player/index.js +4 -2
- package/dist/esm/pipeline/spec/chart/pipes/player/isPlayer.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/player/isPlayer.js +11 -0
- package/dist/esm/pipeline/spec/chart/pipes/player/isPlayer.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/player/playerXY.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/player/playerXY.js +200 -0
- package/dist/esm/pipeline/spec/chart/pipes/player/playerXY.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/player/playerYX.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/player/playerYX.js +183 -0
- package/dist/esm/pipeline/spec/chart/pipes/player/playerYX.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/player/playerYY.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/player/playerYY.js +177 -0
- package/dist/esm/pipeline/spec/chart/pipes/player/playerYY.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/index.d.ts +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/index.js +2 -1
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHierarchy.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHierarchy.js +84 -0
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipHierarchy.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipTreeMap.d.ts +2 -0
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipTreeMap.js +93 -0
- package/dist/esm/pipeline/spec/chart/pipes/tooltip/tooltipTreeMap.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/utils/condition.d.ts +3 -0
- package/dist/esm/pipeline/spec/chart/utils/condition.js +7 -0
- package/dist/esm/pipeline/spec/chart/utils/condition.js.map +1 -0
- package/dist/esm/pipeline/spec/chart/utils/index.d.ts +1 -0
- package/dist/esm/pipeline/spec/chart/utils/index.js +1 -0
- package/dist/esm/pipeline/utils/chatType.d.ts +1 -1
- package/dist/esm/pipeline/utils/chatType.js +4 -1
- package/dist/esm/pipeline/utils/chatType.js.map +1 -1
- package/dist/esm/pipeline/utils/constant.d.ts +3 -0
- package/dist/esm/pipeline/utils/constant.js +3 -0
- package/dist/esm/pipeline/utils/constant.js.map +1 -1
- package/dist/esm/theme/common/player.js +2 -0
- package/dist/esm/theme/common/player.js.map +1 -1
- package/dist/esm/theme/dark/area.d.ts +156 -0
- package/dist/esm/theme/dark/area.js +29 -0
- package/dist/esm/theme/dark/area.js.map +1 -0
- package/dist/esm/theme/dark/bar.d.ts +238 -0
- package/dist/esm/theme/dark/bar.js +49 -0
- package/dist/esm/theme/dark/bar.js.map +1 -0
- package/dist/esm/theme/dark/boxPlot.d.ts +80 -0
- package/dist/esm/theme/dark/boxPlot.js +31 -0
- package/dist/esm/theme/dark/boxPlot.js.map +1 -0
- package/dist/esm/theme/dark/column.d.ts +411 -0
- package/dist/esm/theme/dark/column.js +64 -0
- package/dist/esm/theme/dark/column.js.map +1 -0
- package/dist/esm/theme/dark/dark.js +42 -283
- package/dist/esm/theme/dark/dark.js.map +1 -1
- package/dist/esm/theme/dark/dualAxis.d.ts +122 -0
- package/dist/esm/theme/dark/dualAxis.js +34 -0
- package/dist/esm/theme/dark/dualAxis.js.map +1 -0
- package/dist/esm/theme/dark/funnel.d.ts +64 -0
- package/dist/esm/theme/dark/funnel.js +22 -0
- package/dist/esm/theme/dark/funnel.js.map +1 -0
- package/dist/esm/theme/dark/heatmap.d.ts +66 -0
- package/dist/esm/theme/dark/heatmap.js +30 -0
- package/dist/esm/theme/dark/heatmap.js.map +1 -0
- package/dist/esm/theme/dark/hierarchy.d.ts +189 -0
- package/dist/esm/theme/dark/hierarchy.js +21 -0
- package/dist/esm/theme/dark/hierarchy.js.map +1 -0
- package/dist/esm/theme/dark/histogram.d.ts +252 -0
- package/dist/esm/theme/dark/histogram.js +29 -0
- package/dist/esm/theme/dark/histogram.js.map +1 -0
- package/dist/esm/theme/dark/line.d.ts +78 -0
- package/dist/esm/theme/dark/line.js +28 -0
- package/dist/esm/theme/dark/line.js.map +1 -0
- package/dist/esm/theme/dark/pie.d.ts +130 -0
- package/dist/esm/theme/dark/pie.js +26 -0
- package/dist/esm/theme/dark/pie.js.map +1 -0
- package/dist/esm/theme/dark/race.d.ts +717 -0
- package/dist/esm/theme/dark/race.js +138 -0
- package/dist/esm/theme/dark/race.js.map +1 -0
- package/dist/esm/theme/dark/radar.d.ts +63 -0
- package/dist/esm/theme/dark/radar.js +19 -0
- package/dist/esm/theme/dark/radar.js.map +1 -0
- package/dist/esm/theme/dark/rose.d.ts +128 -0
- package/dist/esm/theme/dark/rose.js +25 -0
- package/dist/esm/theme/dark/rose.js.map +1 -0
- package/dist/esm/theme/dark/scatter.d.ts +345 -0
- package/dist/esm/theme/dark/scatter.js +50 -0
- package/dist/esm/theme/dark/scatter.js.map +1 -0
- package/dist/esm/theme/light/area.d.ts +156 -0
- package/dist/esm/theme/light/area.js +29 -0
- package/dist/esm/theme/light/area.js.map +1 -0
- package/dist/esm/theme/light/bar.d.ts +238 -0
- package/dist/esm/theme/light/bar.js +49 -0
- package/dist/esm/theme/light/bar.js.map +1 -0
- package/dist/esm/theme/light/boxPlot.d.ts +80 -0
- package/dist/esm/theme/light/boxPlot.js +30 -0
- package/dist/esm/theme/light/boxPlot.js.map +1 -0
- package/dist/esm/theme/light/column.d.ts +411 -0
- package/dist/esm/theme/light/column.js +64 -0
- package/dist/esm/theme/light/column.js.map +1 -0
- package/dist/esm/theme/light/dualAxis.d.ts +122 -0
- package/dist/esm/theme/light/dualAxis.js +34 -0
- package/dist/esm/theme/light/dualAxis.js.map +1 -0
- package/dist/esm/theme/light/funnel.d.ts +64 -0
- package/dist/esm/theme/light/funnel.js +22 -0
- package/dist/esm/theme/light/funnel.js.map +1 -0
- package/dist/esm/theme/light/heatmap.d.ts +66 -0
- package/dist/esm/theme/light/heatmap.js +30 -0
- package/dist/esm/theme/light/heatmap.js.map +1 -0
- package/dist/esm/theme/light/hierarchy.d.ts +189 -0
- package/dist/esm/theme/light/hierarchy.js +21 -0
- package/dist/esm/theme/light/hierarchy.js.map +1 -0
- package/dist/esm/theme/light/histogram.d.ts +252 -0
- package/dist/esm/theme/light/histogram.js +29 -0
- package/dist/esm/theme/light/histogram.js.map +1 -0
- package/dist/esm/theme/light/light.js +42 -288
- package/dist/esm/theme/light/light.js.map +1 -1
- package/dist/esm/theme/light/line.d.ts +78 -0
- package/dist/esm/theme/light/line.js +28 -0
- package/dist/esm/theme/light/line.js.map +1 -0
- package/dist/esm/theme/light/pie.d.ts +130 -0
- package/dist/esm/theme/light/pie.js +26 -0
- package/dist/esm/theme/light/pie.js.map +1 -0
- package/dist/esm/theme/light/race.d.ts +899 -0
- package/dist/esm/theme/light/race.js +172 -0
- package/dist/esm/theme/light/race.js.map +1 -0
- package/dist/esm/theme/light/radar.d.ts +63 -0
- package/dist/esm/theme/light/radar.js +19 -0
- package/dist/esm/theme/light/radar.js.map +1 -0
- package/dist/esm/theme/light/rose.d.ts +128 -0
- package/dist/esm/theme/light/rose.js +25 -0
- package/dist/esm/theme/light/rose.js.map +1 -0
- package/dist/esm/theme/light/scatter.d.ts +345 -0
- package/dist/esm/theme/light/scatter.js +50 -0
- package/dist/esm/theme/light/scatter.js.map +1 -0
- package/dist/esm/types/advancedVSeed.d.ts +35 -18880
- package/dist/esm/types/advancedVSeed.js.map +1 -1
- package/dist/esm/types/chartType/area/area.d.ts +1 -5
- package/dist/esm/types/chartType/area/zArea.d.ts +13 -2
- package/dist/esm/types/chartType/areaPercent/areaPercent.d.ts +1 -5
- package/dist/esm/types/chartType/areaPercent/zAreaPercent.d.ts +13 -2
- package/dist/esm/types/chartType/bar/bar.d.ts +1 -5
- package/dist/esm/types/chartType/bar/zBar.d.ts +13 -2
- package/dist/esm/types/chartType/barParallel/barParallel.d.ts +1 -5
- package/dist/esm/types/chartType/barParallel/zBarParallel.d.ts +13 -2
- package/dist/esm/types/chartType/barPercent/barPercent.d.ts +1 -5
- package/dist/esm/types/chartType/barPercent/zBarPercent.d.ts +13 -2
- package/dist/esm/types/chartType/boxPlot/zBoxPlot.d.ts +13 -2
- package/dist/esm/types/chartType/circlePacking/circlePacking.d.ts +85 -0
- package/dist/esm/types/chartType/circlePacking/circlePacking.js +0 -0
- package/dist/esm/types/chartType/circlePacking/index.d.ts +2 -0
- package/dist/esm/types/chartType/circlePacking/index.js +1 -0
- package/dist/esm/types/chartType/circlePacking/zCirclePacking.d.ts +263 -0
- package/dist/esm/types/chartType/circlePacking/zCirclePacking.js +19 -0
- package/dist/esm/types/chartType/circlePacking/zCirclePacking.js.map +1 -0
- package/dist/esm/types/chartType/column/column.d.ts +1 -5
- package/dist/esm/types/chartType/column/zColumn.d.ts +13 -3
- package/dist/esm/types/chartType/columnParallel/columnParallel.d.ts +1 -5
- package/dist/esm/types/chartType/columnParallel/zColumnParallel.d.ts +13 -3
- package/dist/esm/types/chartType/columnPercent/columnPercent.d.ts +1 -5
- package/dist/esm/types/chartType/columnPercent/zColumnPercent.d.ts +13 -2
- package/dist/esm/types/chartType/donut/donut.d.ts +1 -5
- package/dist/esm/types/chartType/donut/zDonut.d.ts +4 -1
- package/dist/esm/types/chartType/dualAxis/zDualAxis.d.ts +26 -4
- package/dist/esm/types/chartType/funnel/funnel.d.ts +1 -5
- package/dist/esm/types/chartType/funnel/zFunnel.d.ts +4 -1
- package/dist/esm/types/chartType/heatmap/heatmap.d.ts +1 -6
- package/dist/esm/types/chartType/heatmap/zHeatmap.d.ts +2 -0
- package/dist/esm/types/chartType/histogram/zHistogram.d.ts +14 -3
- package/dist/esm/types/chartType/index.d.ts +6 -0
- package/dist/esm/types/chartType/index.js +6 -0
- package/dist/esm/types/chartType/line/line.d.ts +1 -5
- package/dist/esm/types/chartType/line/zLine.d.ts +13 -2
- package/dist/esm/types/chartType/pie/pie.d.ts +1 -5
- package/dist/esm/types/chartType/pie/zPie.d.ts +4 -1
- package/dist/esm/types/chartType/pivotTable/zPivotTable.d.ts +2 -0
- package/dist/esm/types/chartType/raceBar/index.d.ts +2 -0
- package/dist/esm/types/chartType/raceBar/index.js +1 -0
- package/dist/esm/types/chartType/raceBar/raceBar.d.ts +117 -0
- package/dist/esm/types/chartType/raceBar/raceBar.js +0 -0
- package/dist/esm/types/chartType/raceBar/zRaceBar.d.ts +1227 -0
- package/dist/esm/types/chartType/raceBar/zRaceBar.js +36 -0
- package/dist/esm/types/chartType/raceBar/zRaceBar.js.map +1 -0
- package/dist/esm/types/chartType/raceColumn/index.d.ts +2 -0
- package/dist/esm/types/chartType/raceColumn/index.js +1 -0
- package/dist/esm/types/chartType/raceColumn/raceColumn.d.ts +31 -0
- package/dist/esm/types/chartType/raceColumn/raceColumn.js +0 -0
- package/dist/esm/types/chartType/raceColumn/zRaceColumn.d.ts +1227 -0
- package/dist/esm/types/chartType/raceColumn/zRaceColumn.js +36 -0
- package/dist/esm/types/chartType/raceColumn/zRaceColumn.js.map +1 -0
- package/dist/esm/types/chartType/raceScatter/index.d.ts +2 -0
- package/dist/esm/types/chartType/raceScatter/index.js +1 -0
- package/dist/esm/types/chartType/raceScatter/raceScatter.d.ts +41 -0
- package/dist/esm/types/chartType/raceScatter/raceScatter.js +0 -0
- package/dist/esm/types/chartType/raceScatter/zRaceScatter.d.ts +1428 -0
- package/dist/esm/types/chartType/raceScatter/zRaceScatter.js +35 -0
- package/dist/esm/types/chartType/raceScatter/zRaceScatter.js.map +1 -0
- package/dist/esm/types/chartType/radar/radar.d.ts +1 -5
- package/dist/esm/types/chartType/radar/zRadar.d.ts +4 -1
- package/dist/esm/types/chartType/rose/rose.d.ts +1 -6
- package/dist/esm/types/chartType/rose/zRose.d.ts +4 -1
- package/dist/esm/types/chartType/roseParallel/roseParallel.d.ts +1 -6
- package/dist/esm/types/chartType/roseParallel/zRoseParallel.d.ts +4 -1
- package/dist/esm/types/chartType/scatter/scatter.d.ts +1 -5
- package/dist/esm/types/chartType/scatter/zScatter.d.ts +14 -3
- package/dist/esm/types/chartType/sunburst/index.d.ts +2 -0
- package/dist/esm/types/chartType/sunburst/index.js +1 -0
- package/dist/esm/types/chartType/sunburst/sunburst.d.ts +86 -0
- package/dist/esm/types/chartType/sunburst/sunburst.js +0 -0
- package/dist/esm/types/chartType/sunburst/zSunburst.d.ts +263 -0
- package/dist/esm/types/chartType/sunburst/zSunburst.js +19 -0
- package/dist/esm/types/chartType/sunburst/zSunburst.js.map +1 -0
- package/dist/esm/types/chartType/table/zTable.d.ts +2 -0
- package/dist/esm/types/chartType/treeMap/index.d.ts +2 -0
- package/dist/esm/types/chartType/treeMap/index.js +1 -0
- package/dist/esm/types/chartType/treeMap/treeMap.d.ts +85 -0
- package/dist/esm/types/chartType/treeMap/treeMap.js +0 -0
- package/dist/esm/types/chartType/treeMap/zTreeMap.d.ts +263 -0
- package/dist/esm/types/chartType/treeMap/zTreeMap.js +19 -0
- package/dist/esm/types/chartType/treeMap/zTreeMap.js.map +1 -0
- package/dist/esm/types/properties/chartType/chartType.d.ts +7 -1
- package/dist/esm/types/properties/chartType/chartType.js +7 -0
- package/dist/esm/types/properties/chartType/chartType.js.map +1 -1
- package/dist/esm/types/properties/config/annotation/index.d.ts +1 -1
- package/dist/esm/types/properties/config/annotation/index.js +1 -1
- package/dist/esm/types/properties/config/annotation/{zAnnotaion.js → zAnnotation.js} +1 -1
- package/dist/esm/types/properties/config/annotation/zAnnotation.js.map +1 -0
- package/dist/esm/types/properties/config/area.d.ts +18 -40
- package/dist/esm/types/properties/config/area.js +1 -3
- package/dist/esm/types/properties/config/area.js.map +1 -1
- package/dist/esm/types/properties/config/axes/bandAxis.d.ts +26 -0
- package/dist/esm/types/properties/config/axes/linearAxis.d.ts +30 -4
- package/dist/esm/types/properties/config/axes/zBandAxis.d.ts +8 -0
- package/dist/esm/types/properties/config/axes/zBandAxis.js +4 -0
- package/dist/esm/types/properties/config/axes/zBandAxis.js.map +1 -1
- package/dist/esm/types/properties/config/axes/zLinearAxis.d.ts +10 -2
- package/dist/esm/types/properties/config/axes/zLinearAxis.js +5 -1
- package/dist/esm/types/properties/config/axes/zLinearAxis.js.map +1 -1
- package/dist/esm/types/properties/config/bar.d.ts +27 -60
- package/dist/esm/types/properties/config/bar.js +1 -3
- package/dist/esm/types/properties/config/bar.js.map +1 -1
- package/dist/esm/types/properties/config/boxplot.d.ts +9 -1
- package/dist/esm/types/properties/config/boxplot.js +1 -1
- package/dist/esm/types/properties/config/boxplot.js.map +1 -1
- package/dist/esm/types/properties/config/circlePacking.d.ts +211 -0
- package/dist/esm/types/properties/config/circlePacking.js +18 -0
- package/dist/esm/types/properties/config/circlePacking.js.map +1 -0
- package/dist/esm/types/properties/config/column.d.ts +27 -60
- package/dist/esm/types/properties/config/column.js +1 -3
- package/dist/esm/types/properties/config/column.js.map +1 -1
- package/dist/esm/types/properties/config/config.d.ts +2565 -383
- package/dist/esm/types/properties/config/config.js +10 -0
- package/dist/esm/types/properties/config/config.js.map +1 -1
- package/dist/esm/types/properties/config/dualAxis.d.ts +24 -4
- package/dist/esm/types/properties/config/dualAxis.js +1 -1
- package/dist/esm/types/properties/config/dualAxis.js.map +1 -1
- package/dist/esm/types/properties/config/funnel.d.ts +0 -19
- package/dist/esm/types/properties/config/funnel.js +0 -2
- package/dist/esm/types/properties/config/funnel.js.map +1 -1
- package/dist/esm/types/properties/config/heatmap.d.ts +8 -19
- package/dist/esm/types/properties/config/heatmap.js +0 -2
- package/dist/esm/types/properties/config/heatmap.js.map +1 -1
- package/dist/esm/types/properties/config/histogram.d.ts +9 -1
- package/dist/esm/types/properties/config/histogram.js +1 -1
- package/dist/esm/types/properties/config/histogram.js.map +1 -1
- package/dist/esm/types/properties/config/index.d.ts +3 -0
- package/dist/esm/types/properties/config/index.js +3 -0
- package/dist/esm/types/properties/config/line.d.ts +9 -20
- package/dist/esm/types/properties/config/line.js +2 -4
- package/dist/esm/types/properties/config/line.js.map +1 -1
- package/dist/esm/types/properties/config/pie.d.ts +0 -57
- package/dist/esm/types/properties/config/pie.js +0 -2
- package/dist/esm/types/properties/config/pie.js.map +1 -1
- package/dist/esm/types/properties/config/player/player.d.ts +2 -2
- package/dist/esm/types/properties/config/player/zPlayer.d.ts +0 -1
- package/dist/esm/types/properties/config/player/zPlayer.js +0 -1
- package/dist/esm/types/properties/config/player/zPlayer.js.map +1 -1
- package/dist/esm/types/properties/config/race.d.ts +1758 -0
- package/dist/esm/types/properties/config/race.js +18 -0
- package/dist/esm/types/properties/config/race.js.map +1 -0
- package/dist/esm/types/properties/config/rose.d.ts +0 -38
- package/dist/esm/types/properties/config/rose.js +0 -2
- package/dist/esm/types/properties/config/rose.js.map +1 -1
- package/dist/esm/types/properties/config/scatter.d.ts +10 -21
- package/dist/esm/types/properties/config/scatter.js +1 -3
- package/dist/esm/types/properties/config/scatter.js.map +1 -1
- package/dist/esm/types/properties/config/sunburst.d.ts +211 -0
- package/dist/esm/types/properties/config/sunburst.js +18 -0
- package/dist/esm/types/properties/config/sunburst.js.map +1 -0
- package/dist/esm/types/properties/config/treeMap.d.ts +211 -0
- package/dist/esm/types/properties/config/treeMap.js +18 -0
- package/dist/esm/types/properties/config/treeMap.js.map +1 -0
- package/dist/esm/types/properties/datasetReshapeInfo/datasetReshapeInfo.d.ts +2 -0
- package/dist/esm/types/properties/datasetReshapeInfo/zDatasetReshapeInfo.d.ts +4 -0
- package/dist/esm/types/properties/datasetReshapeInfo/zDatasetReshapeInfo.js +2 -0
- package/dist/esm/types/properties/datasetReshapeInfo/zDatasetReshapeInfo.js.map +1 -1
- package/dist/esm/types/properties/dimensions/hierarchyDimension.d.ts +11 -0
- package/dist/esm/types/properties/dimensions/hierarchyDimension.js +0 -0
- package/dist/esm/types/properties/dimensions/index.d.ts +4 -0
- package/dist/esm/types/properties/dimensions/raceBarDimension.d.ts +17 -0
- package/dist/esm/types/properties/dimensions/raceBarDimension.js +0 -0
- package/dist/esm/types/properties/dimensions/raceColumnDimension.d.ts +20 -0
- package/dist/esm/types/properties/dimensions/raceColumnDimension.js +0 -0
- package/dist/esm/types/properties/dimensions/raceScatterDimension.d.ts +14 -0
- package/dist/esm/types/properties/dimensions/raceScatterDimension.js +0 -0
- package/dist/esm/types/properties/dimensions/zDimensions.d.ts +6 -0
- package/dist/esm/types/properties/dimensions/zDimensions.js +2 -11
- package/dist/esm/types/properties/dimensions/zDimensions.js.map +1 -1
- package/dist/esm/types/properties/encoding/dimensionEncoding.d.ts +1 -1
- package/dist/esm/types/properties/encoding/encoding.d.ts +11 -4
- package/dist/esm/types/properties/encoding/zDimensionEncoding.d.ts +4 -0
- package/dist/esm/types/properties/encoding/zDimensionEncoding.js +6 -2
- package/dist/esm/types/properties/encoding/zDimensionEncoding.js.map +1 -1
- package/dist/esm/types/properties/encoding/zEncoding.d.ts +4 -2
- package/dist/esm/types/properties/encoding/zEncoding.js +4 -2
- package/dist/esm/types/properties/encoding/zEncoding.js.map +1 -1
- package/dist/esm/types/properties/measures/hierarchyMeasures.d.ts +4 -0
- package/dist/esm/types/properties/measures/hierarchyMeasures.js +0 -0
- package/dist/esm/types/properties/measures/index.d.ts +2 -0
- package/dist/esm/types/properties/measures/raceBarMeasure.d.ts +12 -0
- package/dist/esm/types/properties/measures/raceBarMeasure.js +0 -0
- package/dist/esm/types/properties/theme/customTheme.d.ts +7184 -2820
- package/dist/esm/types/vseed.d.ts +2 -2
- package/dist/esm/types/zVseed.d.ts +5007 -172
- package/dist/esm/types/zVseed.js +7 -1
- package/dist/esm/types/zVseed.js.map +1 -1
- package/dist/umd/index.js +5931 -3479
- package/dist/umd/index.js.map +1 -1
- package/package.json +3 -2
- package/dist/esm/pipeline/spec/chart/pipes/player/playerAdapter.d.ts +0 -2
- package/dist/esm/pipeline/spec/chart/pipes/player/playerAdapter.js +0 -88
- package/dist/esm/pipeline/spec/chart/pipes/player/playerAdapter.js.map +0 -1
- package/dist/esm/types/properties/config/annotation/zAnnotaion.js.map +0 -1
- /package/dist/esm/types/properties/config/annotation/{zAnnotaion.d.ts → zAnnotation.d.ts} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/chart/pipes/axes/linearAxisStyle.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/linearAxisStyle.ts"],"sourcesContent":["import type { YLinearAxis } from 'src/types'\nimport { AXIS_LABEL_SPACE, LINEAR_AXIS_INNER_OFFSET_TOP } from 'src/pipeline/utils'\n\nexport interface LinearAxisStyleConfig extends YLinearAxis {\n orient: 'left' | 'right' | 'top' | 'bottom'\n formatMethod?: (value: string) => string\n titleText?: string\n id?: string\n seriesId?: string | string[]\n sync?: {\n axisId: string\n zeroAlign: boolean\n }\n isPivot?: boolean\n}\n\
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/axes/linearAxisStyle.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/linearAxisStyle.ts"],"sourcesContent":["import type { YLinearAxis } from 'src/types'\nimport { AXIS_LABEL_SPACE, LINEAR_AXIS_INNER_OFFSET_TOP } from 'src/pipeline/utils'\n\nexport interface LinearAxisStyleConfig extends YLinearAxis {\n orient: 'left' | 'right' | 'top' | 'bottom'\n formatMethod?: (value: string) => string\n titleText?: string\n id?: string\n seriesId?: string | string[]\n sync?: {\n axisId: string\n zeroAlign: boolean\n }\n isPivot?: boolean\n}\n\nexport const linearAxisStyle = (config: LinearAxisStyleConfig): any => {\n const {\n orient,\n visible = true,\n label,\n tick,\n title,\n grid,\n line,\n zero,\n nice,\n inverse,\n max,\n min,\n log,\n logBase = 10,\n formatMethod,\n titleText,\n id,\n seriesId,\n sync,\n isPivot = false,\n animation,\n } = config\n\n const axisConfig: any = {\n ...(isPivot\n ? {\n range: {\n min,\n max,\n },\n }\n : {\n min,\n max,\n }),\n visible,\n type: log ? 'log' : 'linear',\n base: logBase,\n orient,\n nice,\n zero: log ? false : zero,\n inverse,\n label: {\n space: AXIS_LABEL_SPACE,\n visible: label?.visible,\n formatMethod,\n style: {\n fill: label?.labelColor,\n angle: label?.labelAngle,\n fontSize: label?.labelFontSize,\n fontWeight: label?.labelFontWeight,\n },\n },\n title: {\n visible: title?.visible,\n text: titleText,\n style: {\n fill: title?.titleColor,\n fontSize: title?.titleFontSize,\n fontWeight: title?.titleFontWeight,\n },\n },\n tick: {\n visible: tick?.visible,\n tickSize: tick?.tickSize,\n inside: tick?.tickInside,\n style: {\n stroke: tick?.tickColor,\n },\n },\n grid: {\n visible: grid?.visible,\n style: {\n lineWidth: grid?.gridWidth,\n stroke: grid?.gridColor,\n lineDash: grid?.gridLineDash,\n },\n },\n domainLine: {\n visible: line?.visible,\n style: {\n lineWidth: line?.lineWidth,\n stroke: line?.lineColor,\n },\n },\n animation: !!animation,\n animationUpdate: {\n duration: animation?.duration,\n easing: animation?.easing,\n },\n }\n\n // Add innerOffset based on orientation\n if (orient === 'bottom' || orient === 'top') {\n axisConfig.innerOffset = {\n right: LINEAR_AXIS_INNER_OFFSET_TOP,\n }\n } else {\n axisConfig.innerOffset = {\n top: LINEAR_AXIS_INNER_OFFSET_TOP,\n }\n }\n\n // Add optional fields\n if (id) {\n axisConfig.id = id\n }\n if (seriesId) {\n axisConfig.seriesId = seriesId\n }\n if (sync) {\n axisConfig.sync = sync\n }\n\n return axisConfig\n}\n"],"names":["linearAxisStyle","config","orient","visible","label","tick","title","grid","line","zero","nice","inverse","max","min","log","logBase","formatMethod","titleText","id","seriesId","sync","isPivot","animation","axisConfig","AXIS_LABEL_SPACE","LINEAR_AXIS_INNER_OFFSET_TOP"],"mappings":";AAgBO,MAAMA,kBAAkB,CAACC;IAC9B,MAAM,EACJC,MAAM,EACNC,UAAU,IAAI,EACdC,KAAK,EACLC,IAAI,EACJC,KAAK,EACLC,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,IAAI,EACJC,OAAO,EACPC,GAAG,EACHC,GAAG,EACHC,GAAG,EACHC,UAAU,EAAE,EACZC,YAAY,EACZC,SAAS,EACTC,EAAE,EACFC,QAAQ,EACRC,IAAI,EACJC,UAAU,KAAK,EACfC,SAAS,EACV,GAAGrB;IAEJ,MAAMsB,aAAkB;QACtB,GAAIF,UACA;YACE,OAAO;gBACLR;gBACAD;YACF;QACF,IACA;YACEC;YACAD;QACF,CAAC;QACLT;QACA,MAAMW,MAAM,QAAQ;QACpB,MAAMC;QACNb;QACAQ;QACA,MAAMI,MAAM,QAAQL;QACpBE;QACA,OAAO;YACL,OAAOa;YACP,SAASpB,OAAO;YAChBY;YACA,OAAO;gBACL,MAAMZ,OAAO;gBACb,OAAOA,OAAO;gBACd,UAAUA,OAAO;gBACjB,YAAYA,OAAO;YACrB;QACF;QACA,OAAO;YACL,SAASE,OAAO;YAChB,MAAMW;YACN,OAAO;gBACL,MAAMX,OAAO;gBACb,UAAUA,OAAO;gBACjB,YAAYA,OAAO;YACrB;QACF;QACA,MAAM;YACJ,SAASD,MAAM;YACf,UAAUA,MAAM;YAChB,QAAQA,MAAM;YACd,OAAO;gBACL,QAAQA,MAAM;YAChB;QACF;QACA,MAAM;YACJ,SAASE,MAAM;YACf,OAAO;gBACL,WAAWA,MAAM;gBACjB,QAAQA,MAAM;gBACd,UAAUA,MAAM;YAClB;QACF;QACA,YAAY;YACV,SAASC,MAAM;YACf,OAAO;gBACL,WAAWA,MAAM;gBACjB,QAAQA,MAAM;YAChB;QACF;QACA,WAAW,CAAC,CAACc;QACb,iBAAiB;YACf,UAAUA,WAAW;YACrB,QAAQA,WAAW;QACrB;IACF;IAGA,IAAIpB,AAAW,aAAXA,UAAuBA,AAAW,UAAXA,QACzBqB,WAAW,WAAW,GAAG;QACvB,OAAOE;IACT;SAEAF,WAAW,WAAW,GAAG;QACvB,KAAKE;IACP;IAIF,IAAIP,IACFK,WAAW,EAAE,GAAGL;IAElB,IAAIC,UACFI,WAAW,QAAQ,GAAGJ;IAExB,IAAIC,MACFG,WAAW,IAAI,GAAGH;IAGpB,OAAOG;AACT"}
|
|
@@ -7,11 +7,13 @@ const xLinear = (spec, context)=>{
|
|
|
7
7
|
...spec
|
|
8
8
|
};
|
|
9
9
|
const { advancedVSeed, vseed } = context;
|
|
10
|
-
const { encoding, dimensions = [], measures = [] } = advancedVSeed;
|
|
10
|
+
const { encoding, dimensions = [], measures = [], datasetReshapeInfo } = advancedVSeed;
|
|
11
11
|
const { chartType } = vseed;
|
|
12
12
|
const config = advancedVSeed.config?.[chartType]?.xAxis ?? {};
|
|
13
|
+
const { foldInfo, foldInfoList } = datasetReshapeInfo[0];
|
|
13
14
|
if (!result.axes) result.axes = [];
|
|
14
15
|
const isPivot = isPivotChart(vseed);
|
|
16
|
+
const xFoldInfo = foldInfoList?.length ? foldInfoList[0] : foldInfo;
|
|
15
17
|
const { autoFormat, numFormat = {} } = config;
|
|
16
18
|
const formatter = createNumFormatter(numFormat);
|
|
17
19
|
const percentFormatter = createNumFormatter({
|
|
@@ -27,7 +29,8 @@ const xLinear = (spec, context)=>{
|
|
|
27
29
|
orient: 'bottom',
|
|
28
30
|
formatMethod,
|
|
29
31
|
titleText,
|
|
30
|
-
isPivot
|
|
32
|
+
isPivot,
|
|
33
|
+
max: true === config.max ? xFoldInfo.statistics.max : config.max
|
|
31
34
|
});
|
|
32
35
|
result.axes = [
|
|
33
36
|
...result.axes,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/chart/pipes/axes/xLinear.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/xLinear.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport type { VChartSpecPipe, XLinearAxis } from 'src/types'\nimport { createNumFormatter, isAreaPercent, isBarPercent, isColumnPercent, isPivotChart } from 'src/pipeline/utils'\nimport { createLinearFormat, createLinearPercentFormat } from './format/linearFormat'\nimport { defaultTitleText } from './title/defaultTitleText'\nimport { linearAxisStyle } from './linearAxisStyle'\n\nexport const xLinear: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { encoding, dimensions = [], measures = [] } = advancedVSeed\n const { chartType } = vseed\n const config = (advancedVSeed.config?.[chartType as 'bar']?.xAxis ?? {}) as XLinearAxis\n\n if (!result.axes) {\n result.axes = []\n }\n const isPivot = isPivotChart(vseed)\n\n const { autoFormat, numFormat = {} } = config\n\n const formatter = createNumFormatter(numFormat)\n const percentFormatter = createNumFormatter({\n type: 'percent',\n })\n\n const formatMethod = (value: string) => {\n if (isBarPercent(vseed) || isColumnPercent(vseed) || isAreaPercent(vseed)) {\n return createLinearPercentFormat(value, autoFormat, numFormat, formatter, percentFormatter)\n }\n return createLinearFormat(value, autoFormat, numFormat, formatter)\n }\n\n const titleText = config.title?.titleText || defaultTitleText(measures, dimensions, encoding.x as string[])\n\n const linearAxis = linearAxisStyle({\n ...config,\n orient: 'bottom',\n formatMethod,\n titleText,\n isPivot,\n })\n\n result.axes = [...result.axes, linearAxis] as ISpec['axes']\n\n return result\n}\n"],"names":["xLinear","spec","context","result","advancedVSeed","vseed","encoding","dimensions","measures","chartType","config","isPivot","isPivotChart","autoFormat","numFormat","formatter","createNumFormatter","percentFormatter","formatMethod","value","isBarPercent","isColumnPercent","isAreaPercent","createLinearPercentFormat","createLinearFormat","titleText","defaultTitleText","linearAxis","linearAxisStyle"],"mappings":";;;;AAOO,MAAMA,UAA0B,CAACC,MAAMC;IAC5C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,QAAQ,EAAEC,aAAa,EAAE,EAAEC,WAAW,EAAE,EAAE,
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/axes/xLinear.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/xLinear.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport type { VChartSpecPipe, XLinearAxis } from 'src/types'\nimport { createNumFormatter, isAreaPercent, isBarPercent, isColumnPercent, isPivotChart } from 'src/pipeline/utils'\nimport { createLinearFormat, createLinearPercentFormat } from './format/linearFormat'\nimport { defaultTitleText } from './title/defaultTitleText'\nimport { linearAxisStyle } from './linearAxisStyle'\n\nexport const xLinear: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { encoding, dimensions = [], measures = [], datasetReshapeInfo } = advancedVSeed\n const { chartType } = vseed\n const config = (advancedVSeed.config?.[chartType as 'bar']?.xAxis ?? {}) as XLinearAxis\n const { foldInfo, foldInfoList } = datasetReshapeInfo[0]\n if (!result.axes) {\n result.axes = []\n }\n const isPivot = isPivotChart(vseed)\n\n const xFoldInfo = foldInfoList?.length ? foldInfoList[0] : foldInfo\n const { autoFormat, numFormat = {} } = config\n\n const formatter = createNumFormatter(numFormat)\n const percentFormatter = createNumFormatter({\n type: 'percent',\n })\n\n const formatMethod = (value: string) => {\n if (isBarPercent(vseed) || isColumnPercent(vseed) || isAreaPercent(vseed)) {\n return createLinearPercentFormat(value, autoFormat, numFormat, formatter, percentFormatter)\n }\n return createLinearFormat(value, autoFormat, numFormat, formatter)\n }\n\n const titleText = config.title?.titleText || defaultTitleText(measures, dimensions, encoding.x as string[])\n\n const linearAxis = linearAxisStyle({\n ...config,\n orient: 'bottom',\n formatMethod,\n titleText,\n isPivot,\n max: config.max === true ? xFoldInfo.statistics.max : config.max,\n })\n\n result.axes = [...result.axes, linearAxis] as ISpec['axes']\n\n return result\n}\n"],"names":["xLinear","spec","context","result","advancedVSeed","vseed","encoding","dimensions","measures","datasetReshapeInfo","chartType","config","foldInfo","foldInfoList","isPivot","isPivotChart","xFoldInfo","autoFormat","numFormat","formatter","createNumFormatter","percentFormatter","formatMethod","value","isBarPercent","isColumnPercent","isAreaPercent","createLinearPercentFormat","createLinearFormat","titleText","defaultTitleText","linearAxis","linearAxisStyle"],"mappings":";;;;AAOO,MAAMA,UAA0B,CAACC,MAAMC;IAC5C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,QAAQ,EAAEC,aAAa,EAAE,EAAEC,WAAW,EAAE,EAAEC,kBAAkB,EAAE,GAAGL;IACzE,MAAM,EAAEM,SAAS,EAAE,GAAGL;IACtB,MAAMM,SAAUP,cAAc,MAAM,EAAE,CAACM,UAAmB,EAAE,SAAS,CAAC;IACtE,MAAM,EAAEE,QAAQ,EAAEC,YAAY,EAAE,GAAGJ,kBAAkB,CAAC,EAAE;IACxD,IAAI,CAACN,OAAO,IAAI,EACdA,OAAO,IAAI,GAAG,EAAE;IAElB,MAAMW,UAAUC,aAAaV;IAE7B,MAAMW,YAAYH,cAAc,SAASA,YAAY,CAAC,EAAE,GAAGD;IAC3D,MAAM,EAAEK,UAAU,EAAEC,YAAY,CAAC,CAAC,EAAE,GAAGP;IAEvC,MAAMQ,YAAYC,mBAAmBF;IACrC,MAAMG,mBAAmBD,mBAAmB;QAC1C,MAAM;IACR;IAEA,MAAME,eAAe,CAACC;QACpB,IAAIC,aAAanB,UAAUoB,gBAAgBpB,UAAUqB,cAAcrB,QACjE,OAAOsB,0BAA0BJ,OAAON,YAAYC,WAAWC,WAAWE;QAE5E,OAAOO,mBAAmBL,OAAON,YAAYC,WAAWC;IAC1D;IAEA,MAAMU,YAAYlB,OAAO,KAAK,EAAE,aAAamB,iBAAiBtB,UAAUD,YAAYD,SAAS,CAAC;IAE9F,MAAMyB,aAAaC,gBAAgB;QACjC,GAAGrB,MAAM;QACT,QAAQ;QACRW;QACAO;QACAf;QACA,KAAKH,AAAe,SAAfA,OAAO,GAAG,GAAYK,UAAU,UAAU,CAAC,GAAG,GAAGL,OAAO,GAAG;IAClE;IAEAR,OAAO,IAAI,GAAG;WAAIA,OAAO,IAAI;QAAE4B;KAAW;IAE1C,OAAO5B;AACT"}
|
|
@@ -8,8 +8,10 @@ const yLinear = (spec, context)=>{
|
|
|
8
8
|
};
|
|
9
9
|
const { advancedVSeed, vseed } = context;
|
|
10
10
|
const { chartType } = vseed;
|
|
11
|
-
const { measures = [], dimensions = [], encoding } = advancedVSeed;
|
|
11
|
+
const { measures = [], dimensions = [], encoding, datasetReshapeInfo } = advancedVSeed;
|
|
12
12
|
const config = advancedVSeed.config?.[chartType]?.yAxis ?? {};
|
|
13
|
+
const { foldInfo, foldInfoList } = datasetReshapeInfo[0];
|
|
14
|
+
const yFoldInfo = foldInfoList?.length ? foldInfoList[1] : foldInfo;
|
|
13
15
|
if (!result.axes) result.axes = [];
|
|
14
16
|
const isPivot = isPivotChart(vseed);
|
|
15
17
|
const { autoFormat, numFormat = {} } = config;
|
|
@@ -27,7 +29,8 @@ const yLinear = (spec, context)=>{
|
|
|
27
29
|
orient: 'left',
|
|
28
30
|
formatMethod,
|
|
29
31
|
titleText,
|
|
30
|
-
isPivot
|
|
32
|
+
isPivot,
|
|
33
|
+
max: true === config.max ? yFoldInfo.statistics.max : config.max
|
|
31
34
|
});
|
|
32
35
|
result.axes = [
|
|
33
36
|
...result.axes,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/chart/pipes/axes/yLinear.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/yLinear.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport { createNumFormatter, isAreaPercent, isBarPercent, isColumnPercent, isPivotChart } from 'src/pipeline/utils'\nimport type { VChartSpecPipe, YLinearAxis } from 'src/types'\nimport { createLinearFormat, createLinearPercentFormat } from './format/linearFormat'\nimport { defaultTitleText } from './title/defaultTitleText'\nimport { linearAxisStyle } from './linearAxisStyle'\n\nexport const yLinear: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { chartType } = vseed\n const { measures = [], dimensions = [], encoding } = advancedVSeed\n const config = (advancedVSeed.config?.[chartType as 'column']?.yAxis ?? {}) as YLinearAxis\n\n if (!result.axes) {\n result.axes = []\n }\n const isPivot = isPivotChart(vseed)\n\n const { autoFormat, numFormat = {} } = config\n\n const formatter = createNumFormatter(numFormat)\n const percentFormatter = createNumFormatter({\n type: 'percent',\n })\n\n const formatMethod = (value: string) => {\n if (isBarPercent(vseed) || isColumnPercent(vseed) || isAreaPercent(vseed)) {\n return createLinearPercentFormat(value, autoFormat, numFormat, formatter, percentFormatter)\n }\n return createLinearFormat(value, autoFormat, numFormat, formatter)\n }\n\n const titleText = config.title?.titleText || defaultTitleText(measures, dimensions, encoding.y as string[])\n\n const linearAxis = linearAxisStyle({\n ...config,\n orient: 'left',\n formatMethod,\n titleText,\n isPivot,\n })\n\n result.axes = [...result.axes, linearAxis] as ISpec['axes']\n\n return result\n}\n"],"names":["yLinear","spec","context","result","advancedVSeed","vseed","chartType","measures","dimensions","encoding","config","isPivot","isPivotChart","autoFormat","numFormat","formatter","createNumFormatter","percentFormatter","formatMethod","value","isBarPercent","isColumnPercent","isAreaPercent","createLinearPercentFormat","createLinearFormat","titleText","defaultTitleText","linearAxis","linearAxisStyle"],"mappings":";;;;AAOO,MAAMA,UAA0B,CAACC,MAAMC;IAC5C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,SAAS,EAAE,GAAGD;IACtB,MAAM,EAAEE,WAAW,EAAE,EAAEC,aAAa,EAAE,EAAEC,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/axes/yLinear.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/axes/yLinear.ts"],"sourcesContent":["import type { ISpec } from '@visactor/vchart'\nimport { createNumFormatter, isAreaPercent, isBarPercent, isColumnPercent, isPivotChart } from 'src/pipeline/utils'\nimport type { VChartSpecPipe, YLinearAxis } from 'src/types'\nimport { createLinearFormat, createLinearPercentFormat } from './format/linearFormat'\nimport { defaultTitleText } from './title/defaultTitleText'\nimport { linearAxisStyle } from './linearAxisStyle'\n\nexport const yLinear: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISpec\n const { advancedVSeed, vseed } = context\n const { chartType } = vseed\n const { measures = [], dimensions = [], encoding, datasetReshapeInfo } = advancedVSeed\n const config = (advancedVSeed.config?.[chartType as 'column']?.yAxis ?? {}) as YLinearAxis\n const { foldInfo, foldInfoList } = datasetReshapeInfo[0]\n const yFoldInfo = foldInfoList?.length ? foldInfoList[1] : foldInfo\n if (!result.axes) {\n result.axes = []\n }\n const isPivot = isPivotChart(vseed)\n\n const { autoFormat, numFormat = {} } = config\n\n const formatter = createNumFormatter(numFormat)\n const percentFormatter = createNumFormatter({\n type: 'percent',\n })\n\n const formatMethod = (value: string) => {\n if (isBarPercent(vseed) || isColumnPercent(vseed) || isAreaPercent(vseed)) {\n return createLinearPercentFormat(value, autoFormat, numFormat, formatter, percentFormatter)\n }\n return createLinearFormat(value, autoFormat, numFormat, formatter)\n }\n\n const titleText = config.title?.titleText || defaultTitleText(measures, dimensions, encoding.y as string[])\n\n const linearAxis = linearAxisStyle({\n ...config,\n orient: 'left',\n formatMethod,\n titleText,\n isPivot,\n max: config.max === true ? yFoldInfo.statistics.max : config.max,\n })\n\n result.axes = [...result.axes, linearAxis] as ISpec['axes']\n\n return result\n}\n"],"names":["yLinear","spec","context","result","advancedVSeed","vseed","chartType","measures","dimensions","encoding","datasetReshapeInfo","config","foldInfo","foldInfoList","yFoldInfo","isPivot","isPivotChart","autoFormat","numFormat","formatter","createNumFormatter","percentFormatter","formatMethod","value","isBarPercent","isColumnPercent","isAreaPercent","createLinearPercentFormat","createLinearFormat","titleText","defaultTitleText","linearAxis","linearAxisStyle"],"mappings":";;;;AAOO,MAAMA,UAA0B,CAACC,MAAMC;IAC5C,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAEC,KAAK,EAAE,GAAGH;IACjC,MAAM,EAAEI,SAAS,EAAE,GAAGD;IACtB,MAAM,EAAEE,WAAW,EAAE,EAAEC,aAAa,EAAE,EAAEC,QAAQ,EAAEC,kBAAkB,EAAE,GAAGN;IACzE,MAAMO,SAAUP,cAAc,MAAM,EAAE,CAACE,UAAsB,EAAE,SAAS,CAAC;IACzE,MAAM,EAAEM,QAAQ,EAAEC,YAAY,EAAE,GAAGH,kBAAkB,CAAC,EAAE;IACxD,MAAMI,YAAYD,cAAc,SAASA,YAAY,CAAC,EAAE,GAAGD;IAC3D,IAAI,CAACT,OAAO,IAAI,EACdA,OAAO,IAAI,GAAG,EAAE;IAElB,MAAMY,UAAUC,aAAaX;IAE7B,MAAM,EAAEY,UAAU,EAAEC,YAAY,CAAC,CAAC,EAAE,GAAGP;IAEvC,MAAMQ,YAAYC,mBAAmBF;IACrC,MAAMG,mBAAmBD,mBAAmB;QAC1C,MAAM;IACR;IAEA,MAAME,eAAe,CAACC;QACpB,IAAIC,aAAanB,UAAUoB,gBAAgBpB,UAAUqB,cAAcrB,QACjE,OAAOsB,0BAA0BJ,OAAON,YAAYC,WAAWC,WAAWE;QAE5E,OAAOO,mBAAmBL,OAAON,YAAYC,WAAWC;IAC1D;IAEA,MAAMU,YAAYlB,OAAO,KAAK,EAAE,aAAamB,iBAAiBvB,UAAUC,YAAYC,SAAS,CAAC;IAE9F,MAAMsB,aAAaC,gBAAgB;QACjC,GAAGrB,MAAM;QACT,QAAQ;QACRW;QACAO;QACAd;QACA,KAAKJ,AAAe,SAAfA,OAAO,GAAG,GAAYG,UAAU,UAAU,CAAC,GAAG,GAAGH,OAAO,GAAG;IAClE;IAEAR,OAAO,IAAI,GAAG;WAAIA,OAAO,IAAI;QAAE4B;KAAW;IAE1C,OAAO5B;AACT"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
const datasetHierarchy = (spec, context)=>{
|
|
2
|
+
const result = {
|
|
3
|
+
...spec
|
|
4
|
+
};
|
|
5
|
+
const { advancedVSeed } = context;
|
|
6
|
+
const { datasetReshapeInfo, dataset } = advancedVSeed;
|
|
7
|
+
const { foldInfo } = datasetReshapeInfo[0];
|
|
8
|
+
const hierarchyFields = advancedVSeed.encoding?.hierarchy || [];
|
|
9
|
+
const measureKeys = advancedVSeed.measures?.map((m)=>m.id) || [];
|
|
10
|
+
if (!hierarchyFields.length) {
|
|
11
|
+
result.data = [
|
|
12
|
+
{
|
|
13
|
+
id: 'data',
|
|
14
|
+
values: dataset
|
|
15
|
+
}
|
|
16
|
+
];
|
|
17
|
+
return result;
|
|
18
|
+
}
|
|
19
|
+
const tree = buildTree(dataset, hierarchyFields, foldInfo, measureKeys);
|
|
20
|
+
result.data = [
|
|
21
|
+
{
|
|
22
|
+
id: 'data',
|
|
23
|
+
values: tree
|
|
24
|
+
}
|
|
25
|
+
];
|
|
26
|
+
return result;
|
|
27
|
+
};
|
|
28
|
+
const buildTree = (dataset, hierarchyFields, foldInfo, measureKeys = [])=>{
|
|
29
|
+
const { measureValue, measureId, measureName } = foldInfo;
|
|
30
|
+
const root = {
|
|
31
|
+
name: 'root',
|
|
32
|
+
children: []
|
|
33
|
+
};
|
|
34
|
+
dataset.forEach((datum)=>{
|
|
35
|
+
let currentNode = root;
|
|
36
|
+
for(let i = 0; i < hierarchyFields.length; i++){
|
|
37
|
+
const field = hierarchyFields[i];
|
|
38
|
+
const value = String(datum[field]);
|
|
39
|
+
let child = currentNode.children.find((c)=>c.name === value);
|
|
40
|
+
if (!child) {
|
|
41
|
+
child = {
|
|
42
|
+
name: value,
|
|
43
|
+
children: []
|
|
44
|
+
};
|
|
45
|
+
for(let j = 0; j <= i; j++){
|
|
46
|
+
const key = hierarchyFields[j];
|
|
47
|
+
child[key] = datum[key];
|
|
48
|
+
}
|
|
49
|
+
currentNode.children.push(child);
|
|
50
|
+
}
|
|
51
|
+
currentNode = child;
|
|
52
|
+
}
|
|
53
|
+
if (!currentNode.isLeaf) {
|
|
54
|
+
Object.assign(currentNode, datum);
|
|
55
|
+
currentNode.isLeaf = true;
|
|
56
|
+
if (measureValue) currentNode[measureValue] = 0;
|
|
57
|
+
measureKeys.forEach((key)=>{
|
|
58
|
+
currentNode[key] = 0;
|
|
59
|
+
});
|
|
60
|
+
currentNode._measureIds = new Set();
|
|
61
|
+
currentNode._measureNames = new Set();
|
|
62
|
+
}
|
|
63
|
+
if (measureValue && void 0 !== datum[measureValue]) currentNode[measureValue] += Number(datum[measureValue]);
|
|
64
|
+
measureKeys.forEach((key)=>{
|
|
65
|
+
if (void 0 !== datum[key]) currentNode[key] = (currentNode[key] || 0) + Number(datum[key]);
|
|
66
|
+
});
|
|
67
|
+
if (datum[measureId]) currentNode._measureIds.add(datum[measureId]);
|
|
68
|
+
if (datum[measureName]) currentNode._measureNames.add(datum[measureName]);
|
|
69
|
+
if (measureValue) currentNode.value = currentNode[measureValue];
|
|
70
|
+
});
|
|
71
|
+
const aggregate = (node)=>{
|
|
72
|
+
if (node.isLeaf) {
|
|
73
|
+
if (measureId && node._measureIds) {
|
|
74
|
+
node[measureId] = Array.from(node._measureIds).join('+');
|
|
75
|
+
delete node._measureIds;
|
|
76
|
+
}
|
|
77
|
+
if (measureName && node._measureNames) {
|
|
78
|
+
node[measureName] = Array.from(node._measureNames).join('+');
|
|
79
|
+
delete node._measureNames;
|
|
80
|
+
}
|
|
81
|
+
return node.value || 0;
|
|
82
|
+
}
|
|
83
|
+
if (node.children && node.children.length > 0) {
|
|
84
|
+
let sum = 0;
|
|
85
|
+
node.children.forEach((child)=>{
|
|
86
|
+
sum += aggregate(child);
|
|
87
|
+
measureKeys.forEach((key)=>{
|
|
88
|
+
node[key] = (node[key] || 0) + (child[key] || 0);
|
|
89
|
+
});
|
|
90
|
+
});
|
|
91
|
+
node.value = sum;
|
|
92
|
+
if (measureValue) node[measureValue] = sum;
|
|
93
|
+
if (measureId && node.children[0]) {
|
|
94
|
+
const childIds = new Set();
|
|
95
|
+
node.children.forEach((child)=>{
|
|
96
|
+
if (child[measureId]) child[measureId].split('+').forEach((id)=>childIds.add(id));
|
|
97
|
+
});
|
|
98
|
+
node[measureId] = Array.from(childIds).join('+');
|
|
99
|
+
const childNames = new Set();
|
|
100
|
+
node.children.forEach((child)=>{
|
|
101
|
+
if (child[measureName]) child[measureName].split('+').forEach((name)=>childNames.add(name));
|
|
102
|
+
});
|
|
103
|
+
node[measureName] = Array.from(childNames).join('+');
|
|
104
|
+
}
|
|
105
|
+
return sum;
|
|
106
|
+
}
|
|
107
|
+
return node.value || 0;
|
|
108
|
+
};
|
|
109
|
+
root.children.forEach(aggregate);
|
|
110
|
+
return root.children;
|
|
111
|
+
};
|
|
112
|
+
export { datasetHierarchy };
|
|
113
|
+
|
|
114
|
+
//# sourceMappingURL=datasetHierarchy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/dataset/datasetHierarchy.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/dataset/datasetHierarchy.ts"],"sourcesContent":["import type { VChartSpecPipe, Datum, FoldInfo } from 'src/types'\n\nexport const datasetHierarchy: VChartSpecPipe = (spec, context) => {\n const result = { ...spec }\n const { advancedVSeed } = context\n const { datasetReshapeInfo, dataset } = advancedVSeed\n const { foldInfo } = datasetReshapeInfo[0]\n\n // 1. 获取 hierarchy encoding 对应的字段\n // 在 advanced pipeline 中,encodingForHierarchy 已经确保了 dimensions 被正确映射到 'hierarchy' 通道\n const hierarchyFields = (advancedVSeed.encoding as Datum)?.hierarchy || []\n\n const measureKeys = advancedVSeed.measures?.map((m: any) => m.id) || []\n\n // 2. 如果没有 hierarchy 字段,直接返回原始数据(虽然这可能导致图表无法正确渲染,但比报错好)\n if (!hierarchyFields.length) {\n result.data = [{ id: 'data', values: dataset }]\n return result\n }\n\n // 3. 构建树形结构\n const tree = buildTree(dataset, hierarchyFields, foldInfo, measureKeys)\n\n result.data = [\n {\n id: 'data',\n values: tree,\n },\n ]\n\n return result\n}\n\n/**\n * @description 将平铺的数据集构建为树形结构\n * @param dataset 平铺的数据集\n * @param hierarchyFields 层级字段列表\n * @param measureValueField 指标值字段名\n * @param measureIdField 指标ID字段名\n */\nconst buildTree = (dataset: Datum[], hierarchyFields: string[], foldInfo: FoldInfo, measureKeys: string[] = []) => {\n const { measureValue, measureId, measureName } = foldInfo\n const root: Datum = { name: 'root', children: [] }\n\n dataset.forEach((datum) => {\n let currentNode = root\n\n // 遍历层级字段,构建路径\n for (let i = 0; i < hierarchyFields.length; i++) {\n const field = hierarchyFields[i]\n const value = String(datum[field]) // 确保值为字符串\n\n let child = currentNode.children.find((c: Datum) => c.name === value)\n\n if (!child) {\n child = { name: value, children: [] }\n // 确保父节点尽可能保留信息:保留当前层级及之前层级的所有维度字段\n for (let j = 0; j <= i; j++) {\n const key = hierarchyFields[j]\n child[key] = datum[key]\n }\n currentNode.children.push(child)\n }\n\n currentNode = child\n }\n\n // 叶子节点:聚合逻辑\n if (!currentNode.isLeaf) {\n // 第一次访问叶子节点:保留维度信息\n Object.assign(currentNode, datum)\n currentNode.isLeaf = true\n\n // 初始化累加器(防止后续叠加时使用了 datum 中的原始值作为初始值)\n if (measureValue) currentNode[measureValue] = 0\n measureKeys.forEach((key) => {\n currentNode[key] = 0\n })\n\n // 初始化 ID 集合用于后续 join\n currentNode._measureIds = new Set()\n currentNode._measureNames = new Set()\n }\n\n // 1. 聚合 measureValue (drawing measure)\n if (measureValue && datum[measureValue] !== undefined) {\n currentNode[measureValue] += Number(datum[measureValue])\n }\n\n // 2. 聚合各个 measure\n // 原来的逻辑:只聚合当前 measureId 对应的 measure,导致其他 measure(如 profit)在 folded 后的行中被忽略\n // const currentMeasureId = datum[measureId]\n // const currentMeasureValue = Number(datum[measureValue])\n // if (currentMeasureId && measureKeys.includes(currentMeasureId)) {\n // currentNode[currentMeasureId] = (currentNode[currentMeasureId] || 0) + currentMeasureValue\n // }\n\n // 新的逻辑:遍历所有 measureKey,如果 datum 中存在该字段,则进行聚合\n measureKeys.forEach((key) => {\n if (datum[key] !== undefined) {\n currentNode[key] = (currentNode[key] || 0) + Number(datum[key])\n }\n })\n\n // 3. 收集 ID 和 Name 信息\n if (datum[measureId]) currentNode._measureIds.add(datum[measureId])\n if (datum[measureName]) currentNode._measureNames.add(datum[measureName])\n\n // 4. 更新 value 字段 (用于图表映射)\n if (measureValue) {\n currentNode.value = currentNode[measureValue]\n }\n })\n\n // 后序遍历:自底向上聚合 value\n const aggregate = (node: Datum) => {\n // 处理叶子节点的 ID 集合\n if (node.isLeaf) {\n if (measureId && node._measureIds) {\n node[measureId] = Array.from(node._measureIds).join('+')\n delete node._measureIds\n }\n if (measureName && node._measureNames) {\n node[measureName] = Array.from(node._measureNames).join('+')\n delete node._measureNames\n }\n return node.value || 0\n }\n\n if (node.children && node.children.length > 0) {\n // node.isLeaf = false // 已经是 false 或 undefined,不需要显式设为 false,除非...\n let sum = 0\n node.children.forEach((child: Datum) => {\n sum += aggregate(child)\n\n // 聚合子节点的各个 measure 值到父节点\n measureKeys.forEach((key) => {\n node[key] = (node[key] || 0) + (child[key] || 0)\n })\n })\n\n node.value = sum\n\n // 为中间节点补充 measureValue 字段,保证 Tooltip 能取到值\n if (measureValue) {\n node[measureValue] = sum\n }\n\n // 为中间节点补充 measureIdField 字段\n if (measureId && node.children[0]) {\n // 收集所有子节点的 measureId\n const childIds = new Set()\n node.children.forEach((child: Datum) => {\n if (child[measureId]) {\n child[measureId].split('+').forEach((id: string) => childIds.add(id))\n }\n })\n node[measureId] = Array.from(childIds).join('+')\n\n // 收集所有子节点的 measureName\n const childNames = new Set()\n node.children.forEach((child: Datum) => {\n if (child[measureName]) {\n child[measureName].split('+').forEach((name: string) => childNames.add(name))\n }\n })\n node[measureName] = Array.from(childNames).join('+')\n }\n\n return sum\n }\n // 应该是不会走到这里的,因为叶子节点在上面已经处理了\n return node.value || 0\n }\n\n root.children.forEach(aggregate)\n\n return root.children\n}\n"],"names":["datasetHierarchy","spec","context","result","advancedVSeed","datasetReshapeInfo","dataset","foldInfo","hierarchyFields","measureKeys","m","tree","buildTree","measureValue","measureId","measureName","root","datum","currentNode","i","field","value","String","child","c","j","key","Object","Set","undefined","Number","aggregate","node","Array","sum","childIds","id","childNames","name"],"mappings":"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"}
|
|
@@ -6,4 +6,5 @@ import { datasetDualAxis } from "./datasetDualAxis.js";
|
|
|
6
6
|
import { datasetScatter } from "./datasetScatter.js";
|
|
7
7
|
import { datasetHistogram } from "./datasetHistogram.js";
|
|
8
8
|
import { datasetBoxplot } from "./datasetBoxplot.js";
|
|
9
|
-
|
|
9
|
+
import { datasetHierarchy } from "./datasetHierarchy.js";
|
|
10
|
+
export { datasetBoxplot, datasetDualAxis, datasetHierarchy, datasetHistogram, datasetPivot, datasetScatter, datasetXY, datasetYX, progressive };
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
const initCirclePacking = (spec, context)=>{
|
|
2
|
+
const result = {
|
|
3
|
+
...spec
|
|
4
|
+
};
|
|
5
|
+
const { advancedVSeed } = context;
|
|
6
|
+
const { datasetReshapeInfo } = advancedVSeed;
|
|
7
|
+
const { foldInfo } = datasetReshapeInfo[0];
|
|
8
|
+
result.type = 'circlePacking';
|
|
9
|
+
result.categoryField = 'name';
|
|
10
|
+
result.valueField = foldInfo.measureValue;
|
|
11
|
+
result.drill = true;
|
|
12
|
+
result.circlePacking = {
|
|
13
|
+
style: {
|
|
14
|
+
fillOpacity: (d)=>d.isLeaf ? 0.75 : 0.25
|
|
15
|
+
}
|
|
16
|
+
};
|
|
17
|
+
result.layoutPadding = [
|
|
18
|
+
0,
|
|
19
|
+
10,
|
|
20
|
+
10
|
|
21
|
+
];
|
|
22
|
+
result.padding = 0;
|
|
23
|
+
result.animationEnter = {
|
|
24
|
+
easing: 'cubicInOut'
|
|
25
|
+
};
|
|
26
|
+
result.animationExit = {
|
|
27
|
+
easing: 'cubicInOut'
|
|
28
|
+
};
|
|
29
|
+
result.animationUpdate = {
|
|
30
|
+
easing: 'cubicInOut'
|
|
31
|
+
};
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
export { initCirclePacking };
|
|
35
|
+
|
|
36
|
+
//# sourceMappingURL=circlePacking.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/init/circlePacking.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/circlePacking.ts"],"sourcesContent":["import type { VChartSpecPipe } from 'src/types'\nimport type { ICirclePackingChartSpec } from '@visactor/vchart'\n\nexport const initCirclePacking: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ICirclePackingChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { foldInfo } = datasetReshapeInfo[0]\n\n result.type = 'circlePacking'\n result.categoryField = 'name'\n result.valueField = foldInfo.measureValue\n // Style configuration\n result.drill = true\n result.circlePacking = {\n style: {\n fillOpacity: (d: any) => (d.isLeaf ? 0.75 : 0.25),\n },\n }\n result.layoutPadding = [0, 10, 10]\n result.padding = 0\n // Animation configuration\n result.animationEnter = {\n easing: 'cubicInOut',\n }\n result.animationExit = {\n easing: 'cubicInOut',\n }\n result.animationUpdate = {\n easing: 'cubicInOut',\n }\n\n return result\n}\n"],"names":["initCirclePacking","spec","context","result","advancedVSeed","datasetReshapeInfo","foldInfo","d"],"mappings":"AAGO,MAAMA,oBAAoC,CAACC,MAAMC;IACtD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAE,GAAGD;IAC/B,MAAM,EAAEE,QAAQ,EAAE,GAAGD,kBAAkB,CAAC,EAAE;IAE1CF,OAAO,IAAI,GAAG;IACdA,OAAO,aAAa,GAAG;IACvBA,OAAO,UAAU,GAAGG,SAAS,YAAY;IAEzCH,OAAO,KAAK,GAAG;IACfA,OAAO,aAAa,GAAG;QACrB,OAAO;YACL,aAAa,CAACI,IAAYA,EAAE,MAAM,GAAG,OAAO;QAC9C;IACF;IACAJ,OAAO,aAAa,GAAG;QAAC;QAAG;QAAI;KAAG;IAClCA,OAAO,OAAO,GAAG;IAEjBA,OAAO,cAAc,GAAG;QACtB,QAAQ;IACV;IACAA,OAAO,aAAa,GAAG;QACrB,QAAQ;IACV;IACAA,OAAO,eAAe,GAAG;QACvB,QAAQ;IACV;IAEA,OAAOA;AACT"}
|
|
@@ -14,4 +14,7 @@ export { initFunnel } from './funnel';
|
|
|
14
14
|
export { initPivot } from './pivot';
|
|
15
15
|
export { initDualAxis } from './dualAxis';
|
|
16
16
|
export { initHistogram } from './histogram';
|
|
17
|
+
export { initTreeMap } from './treeMap';
|
|
18
|
+
export { initSunburst } from './sunburst';
|
|
19
|
+
export { initCirclePacking } from './circlePacking';
|
|
17
20
|
export { initBoxplot } from './boxplot';
|
|
@@ -14,5 +14,8 @@ import { initFunnel } from "./funnel.js";
|
|
|
14
14
|
import { initPivot } from "./pivot.js";
|
|
15
15
|
import { initDualAxis } from "./dualAxis.js";
|
|
16
16
|
import { initHistogram } from "./histogram.js";
|
|
17
|
+
import { initTreeMap } from "./treeMap.js";
|
|
18
|
+
import { initSunburst } from "./sunburst.js";
|
|
19
|
+
import { initCirclePacking } from "./circlePacking.js";
|
|
17
20
|
import { initBoxplot } from "./boxplot.js";
|
|
18
|
-
export { initArea, initBar, initBarParallel, initBoxplot, initColumn, initColumnParallel, initDonut, initDualAxis, initFunnel, initHistogram, initLine, initPie, initPivot, initRadar, initRose, initRoseParallel, initScatter };
|
|
21
|
+
export { initArea, initBar, initBarParallel, initBoxplot, initCirclePacking, initColumn, initColumnParallel, initDonut, initDualAxis, initFunnel, initHistogram, initLine, initPie, initPivot, initRadar, initRose, initRoseParallel, initScatter, initSunburst, initTreeMap };
|
|
@@ -9,6 +9,10 @@ const initScatter = (spec, context)=>{
|
|
|
9
9
|
result.direction = 'vertical';
|
|
10
10
|
result.xField = foldInfoList?.[0].measureValue;
|
|
11
11
|
if (foldInfoList?.[1]) result.yField = foldInfoList[1].measureValue;
|
|
12
|
+
else if (unfoldInfo.encodingX) {
|
|
13
|
+
result.xField = unfoldInfo.encodingX;
|
|
14
|
+
result.yField = foldInfoList?.[0].measureValue;
|
|
15
|
+
}
|
|
12
16
|
result.seriesField = unfoldInfo.encodingColorId;
|
|
13
17
|
result.padding = 0;
|
|
14
18
|
result.region = [
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/chart/pipes/init/scatter.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/scatter.ts"],"sourcesContent":["import type { IScatterChartSpec } from '@visactor/vchart'\nimport type { VChartSpecPipe } from 'src/types'\n\nexport const initScatter: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as IScatterChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { unfoldInfo, foldInfoList } = datasetReshapeInfo[0]\n\n result.type = 'scatter'\n result.direction = 'vertical'\n result.xField = foldInfoList?.[0].measureValue\n if (foldInfoList?.[1]) {\n result.yField = foldInfoList[1].measureValue\n }\n\n result.seriesField = unfoldInfo.encodingColorId\n\n result.padding = 0\n result.region = [\n {\n clip: true,\n },\n ]\n result.animation = true\n\n return result\n}\n"],"names":["initScatter","spec","context","result","advancedVSeed","datasetReshapeInfo","unfoldInfo","foldInfoList"],"mappings":"AAGO,MAAMA,cAA8B,CAACC,MAAMC;IAChD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAE,GAAGD;IAC/B,MAAM,EAAEE,UAAU,EAAEC,YAAY,EAAE,GAAGF,kBAAkB,CAAC,EAAE;IAE1DF,OAAO,IAAI,GAAG;IACdA,OAAO,SAAS,GAAG;IACnBA,OAAO,MAAM,GAAGI,cAAc,CAAC,EAAE,CAAC;IAClC,IAAIA,cAAc,CAAC,EAAE,EACnBJ,OAAO,MAAM,GAAGI,YAAY,CAAC,EAAE,CAAC,YAAY;
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/init/scatter.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/scatter.ts"],"sourcesContent":["import type { IScatterChartSpec } from '@visactor/vchart'\nimport type { VChartSpecPipe } from 'src/types'\n\nexport const initScatter: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as IScatterChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { unfoldInfo, foldInfoList } = datasetReshapeInfo[0]\n\n result.type = 'scatter'\n result.direction = 'vertical'\n result.xField = foldInfoList?.[0].measureValue\n if (foldInfoList?.[1]) {\n result.yField = foldInfoList[1].measureValue\n } else if (unfoldInfo.encodingX) {\n result.xField = unfoldInfo.encodingX\n result.yField = foldInfoList?.[0].measureValue\n }\n\n result.seriesField = unfoldInfo.encodingColorId\n\n result.padding = 0\n result.region = [\n {\n clip: true,\n },\n ]\n result.animation = true\n\n return result\n}\n"],"names":["initScatter","spec","context","result","advancedVSeed","datasetReshapeInfo","unfoldInfo","foldInfoList"],"mappings":"AAGO,MAAMA,cAA8B,CAACC,MAAMC;IAChD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAE,GAAGD;IAC/B,MAAM,EAAEE,UAAU,EAAEC,YAAY,EAAE,GAAGF,kBAAkB,CAAC,EAAE;IAE1DF,OAAO,IAAI,GAAG;IACdA,OAAO,SAAS,GAAG;IACnBA,OAAO,MAAM,GAAGI,cAAc,CAAC,EAAE,CAAC;IAClC,IAAIA,cAAc,CAAC,EAAE,EACnBJ,OAAO,MAAM,GAAGI,YAAY,CAAC,EAAE,CAAC,YAAY;SACvC,IAAID,WAAW,SAAS,EAAE;QAC/BH,OAAO,MAAM,GAAGG,WAAW,SAAS;QACpCH,OAAO,MAAM,GAAGI,cAAc,CAAC,EAAE,CAAC;IACpC;IAEAJ,OAAO,WAAW,GAAGG,WAAW,eAAe;IAE/CH,OAAO,OAAO,GAAG;IACjBA,OAAO,MAAM,GAAG;QACd;YACE,MAAM;QACR;KACD;IACDA,OAAO,SAAS,GAAG;IAEnB,OAAOA;AACT"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
const initSunburst = (spec, context)=>{
|
|
2
|
+
const result = {
|
|
3
|
+
...spec
|
|
4
|
+
};
|
|
5
|
+
const { advancedVSeed } = context;
|
|
6
|
+
const { datasetReshapeInfo, encoding } = advancedVSeed;
|
|
7
|
+
const { foldInfo } = datasetReshapeInfo[0];
|
|
8
|
+
result.type = 'sunburst';
|
|
9
|
+
result.categoryField = 'name';
|
|
10
|
+
result.valueField = foldInfo.measureValue;
|
|
11
|
+
result.outerRadius = 1;
|
|
12
|
+
result.innerRadius = 0;
|
|
13
|
+
result.gap = 0;
|
|
14
|
+
result.offsetX = 0;
|
|
15
|
+
result.offsetY = 0;
|
|
16
|
+
result.drill = true;
|
|
17
|
+
result.padding = 0;
|
|
18
|
+
result.labelAutoVisible = {
|
|
19
|
+
enable: true,
|
|
20
|
+
circumference: 5
|
|
21
|
+
};
|
|
22
|
+
result.sunburst = {
|
|
23
|
+
visible: true,
|
|
24
|
+
style: {
|
|
25
|
+
fillOpacity: (datum)=>{
|
|
26
|
+
if (encoding.hierarchy?.length === 1) return 1;
|
|
27
|
+
return datum.isLeaf ? 0.4 : 0.8;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
};
|
|
31
|
+
result.animationEnter = {
|
|
32
|
+
easing: 'cubicInOut'
|
|
33
|
+
};
|
|
34
|
+
result.animationExit = {
|
|
35
|
+
easing: 'cubicInOut'
|
|
36
|
+
};
|
|
37
|
+
result.animationUpdate = {
|
|
38
|
+
easing: 'cubicInOut'
|
|
39
|
+
};
|
|
40
|
+
return result;
|
|
41
|
+
};
|
|
42
|
+
export { initSunburst };
|
|
43
|
+
|
|
44
|
+
//# sourceMappingURL=sunburst.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/init/sunburst.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/sunburst.ts"],"sourcesContent":["import type { VChartSpecPipe } from 'src/types'\nimport type { ISunburstChartSpec } from '@visactor/vchart'\n\nexport const initSunburst: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ISunburstChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo, encoding } = advancedVSeed\n const { foldInfo } = datasetReshapeInfo[0]\n\n result.type = 'sunburst'\n result.categoryField = 'name'\n result.valueField = foldInfo.measureValue\n result.outerRadius = 1\n result.innerRadius = 0\n result.gap = 0\n result.offsetX = 0\n result.offsetY = 0\n result.drill = true\n result.padding = 0\n result.labelAutoVisible = {\n enable: true,\n circumference: 5,\n }\n result.sunburst = {\n visible: true,\n style: {\n fillOpacity: (datum: any) => {\n if (encoding.hierarchy?.length === 1) {\n return 1\n }\n return datum.isLeaf ? 0.4 : 0.8\n },\n },\n }\n\n result.animationEnter = {\n easing: 'cubicInOut',\n }\n result.animationExit = {\n easing: 'cubicInOut',\n }\n result.animationUpdate = {\n easing: 'cubicInOut',\n }\n\n return result\n}\n"],"names":["initSunburst","spec","context","result","advancedVSeed","datasetReshapeInfo","encoding","foldInfo","datum"],"mappings":"AAGO,MAAMA,eAA+B,CAACC,MAAMC;IACjD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAEC,QAAQ,EAAE,GAAGF;IACzC,MAAM,EAAEG,QAAQ,EAAE,GAAGF,kBAAkB,CAAC,EAAE;IAE1CF,OAAO,IAAI,GAAG;IACdA,OAAO,aAAa,GAAG;IACvBA,OAAO,UAAU,GAAGI,SAAS,YAAY;IACzCJ,OAAO,WAAW,GAAG;IACrBA,OAAO,WAAW,GAAG;IACrBA,OAAO,GAAG,GAAG;IACbA,OAAO,OAAO,GAAG;IACjBA,OAAO,OAAO,GAAG;IACjBA,OAAO,KAAK,GAAG;IACfA,OAAO,OAAO,GAAG;IACjBA,OAAO,gBAAgB,GAAG;QACxB,QAAQ;QACR,eAAe;IACjB;IACAA,OAAO,QAAQ,GAAG;QAChB,SAAS;QACT,OAAO;YACL,aAAa,CAACK;gBACZ,IAAIF,SAAS,SAAS,EAAE,WAAW,GACjC,OAAO;gBAET,OAAOE,MAAM,MAAM,GAAG,MAAM;YAC9B;QACF;IACF;IAEAL,OAAO,cAAc,GAAG;QACtB,QAAQ;IACV;IACAA,OAAO,aAAa,GAAG;QACrB,QAAQ;IACV;IACAA,OAAO,eAAe,GAAG;QACvB,QAAQ;IACV;IAEA,OAAOA;AACT"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
const initTreeMap = (spec, context)=>{
|
|
2
|
+
const result = {
|
|
3
|
+
...spec
|
|
4
|
+
};
|
|
5
|
+
const { advancedVSeed } = context;
|
|
6
|
+
const { datasetReshapeInfo } = advancedVSeed;
|
|
7
|
+
const { foldInfo } = datasetReshapeInfo[0];
|
|
8
|
+
result.type = 'treemap';
|
|
9
|
+
result.categoryField = 'name';
|
|
10
|
+
result.valueField = foldInfo.measureValue;
|
|
11
|
+
result.padding = 0;
|
|
12
|
+
result.drill = true;
|
|
13
|
+
result.animationEnter = {
|
|
14
|
+
easing: 'cubicInOut'
|
|
15
|
+
};
|
|
16
|
+
result.animationExit = {
|
|
17
|
+
easing: 'cubicInOut'
|
|
18
|
+
};
|
|
19
|
+
result.animationUpdate = {
|
|
20
|
+
easing: 'cubicInOut'
|
|
21
|
+
};
|
|
22
|
+
return result;
|
|
23
|
+
};
|
|
24
|
+
export { initTreeMap };
|
|
25
|
+
|
|
26
|
+
//# sourceMappingURL=treeMap.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/init/treeMap.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/init/treeMap.ts"],"sourcesContent":["import type { VChartSpecPipe } from 'src/types'\nimport type { ITreemapChartSpec } from '@visactor/vchart'\n\nexport const initTreeMap: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ITreemapChartSpec\n const { advancedVSeed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { foldInfo } = datasetReshapeInfo[0]\n\n result.type = 'treemap'\n result.categoryField = 'name'\n result.valueField = foldInfo.measureValue\n result.padding = 0\n result.drill = true\n result.animationEnter = {\n easing: 'cubicInOut',\n }\n result.animationExit = {\n easing: 'cubicInOut',\n }\n result.animationUpdate = {\n easing: 'cubicInOut',\n }\n\n return result\n}\n"],"names":["initTreeMap","spec","context","result","advancedVSeed","datasetReshapeInfo","foldInfo"],"mappings":"AAGO,MAAMA,cAA8B,CAACC,MAAMC;IAChD,MAAMC,SAAS;QAAE,GAAGF,IAAI;IAAC;IACzB,MAAM,EAAEG,aAAa,EAAE,GAAGF;IAC1B,MAAM,EAAEG,kBAAkB,EAAE,GAAGD;IAC/B,MAAM,EAAEE,QAAQ,EAAE,GAAGD,kBAAkB,CAAC,EAAE;IAE1CF,OAAO,IAAI,GAAG;IACdA,OAAO,aAAa,GAAG;IACvBA,OAAO,UAAU,GAAGG,SAAS,YAAY;IACzCH,OAAO,OAAO,GAAG;IACjBA,OAAO,KAAK,GAAG;IACfA,OAAO,cAAc,GAAG;QACtB,QAAQ;IACV;IACAA,OAAO,aAAa,GAAG;QACrB,QAAQ;IACV;IACAA,OAAO,eAAe,GAAG;QACvB,QAAQ;IACV;IAEA,OAAOA;AACT"}
|
|
@@ -3,3 +3,7 @@ export { labelDualAxis } from './labelDualAxis';
|
|
|
3
3
|
export { labelScatter } from './labelScatter';
|
|
4
4
|
export { labelPie } from './labelPie';
|
|
5
5
|
export { labelBoxPlot } from './labelBoxPlot';
|
|
6
|
+
export { labelCirclePacking } from './labelCirclePacking';
|
|
7
|
+
export { labelSunburst } from './labelSunburst';
|
|
8
|
+
export { labelTreeMapLeaf } from './labelTreeMapLeaf';
|
|
9
|
+
export { labelTreeMapGroup } from './labelTreeMapGroup';
|
|
@@ -3,4 +3,8 @@ import { labelDualAxis } from "./labelDualAxis.js";
|
|
|
3
3
|
import { labelScatter } from "./labelScatter.js";
|
|
4
4
|
import { labelPie } from "./labelPie.js";
|
|
5
5
|
import { labelBoxPlot } from "./labelBoxPlot.js";
|
|
6
|
-
|
|
6
|
+
import { labelCirclePacking } from "./labelCirclePacking.js";
|
|
7
|
+
import { labelSunburst } from "./labelSunburst.js";
|
|
8
|
+
import { labelTreeMapLeaf } from "./labelTreeMapLeaf.js";
|
|
9
|
+
import { labelTreeMapGroup } from "./labelTreeMapGroup.js";
|
|
10
|
+
export { label, labelBoxPlot, labelCirclePacking, labelDualAxis, labelPie, labelScatter, labelSunburst, labelTreeMapGroup, labelTreeMapLeaf };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pipeline/spec/chart/pipes/label/label.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/label/label.ts"],"sourcesContent":["import type { ILineChartSpec } from '@visactor/vchart'\nimport { createFormatter, createFormatterByMeasure, DATUM_HIDE_KEY, findMeasureById } from '../../../../utils'\nimport type {\n Datum,\n Dimension,\n Dimensions,\n Encoding,\n FoldInfo,\n Formatter,\n Label,\n Measure,\n Measures,\n NumFormat,\n VChartSpecPipe,\n} from 'src/types'\nimport { isNumber, merge, uniqueBy } from 'remeda'\nimport { selector } from 'src/dataSelector'\nimport { MeasureId } from 'src/dataReshape/constant'\n\nexport const label: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ILineChartSpec\n const { advancedVSeed, vseed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { chartType, encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: Label }\n const foldInfo = datasetReshapeInfo[0].foldInfo as FoldInfo\n\n const { label } = baseConfig\n
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/label/label.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/label/label.ts"],"sourcesContent":["import type { ILineChartSpec } from '@visactor/vchart'\nimport { createFormatter, createFormatterByMeasure, DATUM_HIDE_KEY, findMeasureById } from '../../../../utils'\nimport type {\n Datum,\n Dimension,\n Dimensions,\n Encoding,\n FoldInfo,\n Formatter,\n Label,\n Measure,\n Measures,\n NumFormat,\n VChartSpecPipe,\n} from 'src/types'\nimport { isNumber, merge, uniqueBy } from 'remeda'\nimport { selector } from 'src/dataSelector'\nimport { MeasureId } from 'src/dataReshape/constant'\n\nexport const label: VChartSpecPipe = (spec, context) => {\n const result = { ...spec } as ILineChartSpec\n const { advancedVSeed, vseed } = context\n const { datasetReshapeInfo } = advancedVSeed\n const { chartType, encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: Label }\n const foldInfo = datasetReshapeInfo[0].foldInfo as FoldInfo\n\n const { label } = baseConfig\n result.label = buildLabel(\n label,\n vseed.measures,\n vseed.dimensions,\n advancedVSeed.dimensions!,\n advancedVSeed.measures!,\n encoding as Encoding,\n [foldInfo],\n ) as unknown as ILineChartSpec['label']\n\n return result\n}\n\nexport const generateMeasureValue = (\n value: number | string,\n measure: Measure,\n labelAutoFormat?: boolean,\n numFormat: NumFormat = {},\n) => {\n const format = merge(numFormat, measure.numFormat || measure.format)\n const mergedMeasure = { ...measure, numFormat: format, autoFormat: labelAutoFormat || measure.autoFormat }\n\n const formatter = createFormatterByMeasure(mergedMeasure)\n return formatter(value)\n}\n\nexport const generateMeasurePercent = (value: number | string, sum: number, formatter: Formatter) => {\n if (value === undefined || value === null) return String(value)\n const num = Number(value)\n if (Number.isNaN(num)) return String(value)\n\n const percentValue = num / sum\n return formatter(percentValue)\n}\n\nexport const buildLabel = (\n label: Label,\n vseedMeasures: Measures = [],\n vseedDimensions: Dimensions = [],\n advancedVSeedDimensions: Dimensions,\n advancedVSeedMeasures: Measures,\n encoding: Encoding,\n foldInfoList: (Pick<FoldInfo, 'measureId' | 'measureValue'> & Partial<Pick<FoldInfo, 'statistics'>>)[],\n) => {\n const {\n enable,\n wrap,\n showValue,\n showValuePercent,\n showDimension,\n labelOverlap,\n labelColorSmartInvert,\n labelStroke,\n labelColor,\n labelFontSize,\n labelFontWeight,\n labelBackgroundColor,\n labelPosition,\n autoFormat,\n numFormat = {},\n } = label\n\n const hasDimLabelEncoding = vseedDimensions.some((item) => encoding.label?.includes(item.id))\n\n const labelDims = uniqueBy(\n hasDimLabelEncoding\n ? vseedDimensions.filter((item) => encoding.label?.includes(item.id))\n : showDimension\n ? advancedVSeedDimensions.filter((d) => d.id !== MeasureId && d.encoding !== 'row' && d.encoding !== 'column')\n : [],\n (item: Dimension) => item.id,\n )\n\n const labelMeas = uniqueBy(\n vseedMeasures.filter((item) => encoding.label?.includes(item.id)),\n (item: Measure) => item.id,\n )\n\n const percentFormat: NumFormat = merge(numFormat, {\n type: 'percent',\n } as NumFormat)\n\n const percentFormatter = createFormatter(percentFormat)\n\n const result = {\n visible: enable,\n dataFilter: (data: Datum[]) => {\n return data.filter((entry) => {\n return entry.data?.[DATUM_HIDE_KEY] !== true && selector(entry.data as Datum, label.selector, 'Or')\n })\n },\n formatMethod: (_: unknown, datum: Datum) => {\n const result = []\n\n const dimLabels = labelDims.map((item: Dimension) => {\n const id = item.id\n return datum[id] as number | string\n })\n\n const meaLabels = labelMeas.map((item: Measure) =>\n generateMeasureValue(datum[item.id] as number | string, item, autoFormat, numFormat),\n )\n\n result.push(...dimLabels)\n\n foldInfoList.forEach((foldInfo) => {\n const { measureId, measureValue, statistics } = foldInfo\n const measure = findMeasureById(advancedVSeedMeasures, datum[measureId] as string)\n if (measure) {\n const measureValueLabel = generateMeasureValue(\n datum[measureValue] as number | string,\n measure,\n autoFormat,\n numFormat,\n )\n\n if (showValue) {\n result.push(measureValueLabel)\n }\n if (showValuePercent) {\n if (isNumber(datum['__VCHART_ARC_RATIO'])) {\n // 饼图/环图需要使用实际占比数据\n result.push(generateMeasurePercent(datum['__VCHART_ARC_RATIO'], 1, percentFormatter))\n } else if (statistics && isNumber(statistics.sum)) {\n result.push(\n generateMeasurePercent(datum[measureValue] as number | string, statistics.sum, percentFormatter),\n )\n }\n }\n }\n })\n\n result.push(...meaLabels)\n\n if (wrap) {\n return result\n }\n return result.join(' ')\n },\n syncState: true,\n position: labelPosition,\n style: {\n stroke: labelStroke,\n fill: labelColor,\n fontSize: labelFontSize,\n fontWeight: labelFontWeight,\n background: labelBackgroundColor,\n },\n smartInvert: labelColorSmartInvert,\n }\n\n if (labelColorSmartInvert) {\n ;(result.style as any).lineWidth = 2 // label 边框线宽度,不设置这个会导致智能反色失败\n }\n\n if (labelOverlap) {\n ;(result as any).overlap = {\n hideOnHit: true,\n clampForce: true,\n }\n }\n\n return result\n}\n"],"names":["label","spec","context","result","advancedVSeed","vseed","datasetReshapeInfo","chartType","encoding","baseConfig","foldInfo","buildLabel","generateMeasureValue","value","measure","labelAutoFormat","numFormat","format","merge","mergedMeasure","formatter","createFormatterByMeasure","generateMeasurePercent","sum","String","num","Number","percentValue","vseedMeasures","vseedDimensions","advancedVSeedDimensions","advancedVSeedMeasures","foldInfoList","enable","wrap","showValue","showValuePercent","showDimension","labelOverlap","labelColorSmartInvert","labelStroke","labelColor","labelFontSize","labelFontWeight","labelBackgroundColor","labelPosition","autoFormat","hasDimLabelEncoding","item","labelDims","uniqueBy","d","MeasureId","labelMeas","percentFormat","percentFormatter","createFormatter","data","entry","DATUM_HIDE_KEY","selector","_","datum","dimLabels","id","meaLabels","measureId","measureValue","statistics","findMeasureById","measureValueLabel","isNumber"],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { label as external_label_js_label } from "./label.js";
|
|
2
|
+
const labelCirclePacking = (spec, context)=>{
|
|
3
|
+
const { advancedVSeed } = context;
|
|
4
|
+
const { chartType } = advancedVSeed;
|
|
5
|
+
const baseConfig = advancedVSeed.config[chartType];
|
|
6
|
+
const { label } = baseConfig;
|
|
7
|
+
const result = external_label_js_label(spec, context);
|
|
8
|
+
if (label?.enable) {
|
|
9
|
+
const labelSpec = result.label;
|
|
10
|
+
result.label = {
|
|
11
|
+
...labelSpec,
|
|
12
|
+
style: {
|
|
13
|
+
...labelSpec?.style,
|
|
14
|
+
fontSize: 10,
|
|
15
|
+
visible: (d)=>1 === d.depth
|
|
16
|
+
}
|
|
17
|
+
};
|
|
18
|
+
}
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
export { labelCirclePacking };
|
|
22
|
+
|
|
23
|
+
//# sourceMappingURL=labelCirclePacking.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/label/labelCirclePacking.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/label/labelCirclePacking.ts"],"sourcesContent":["import type { ILineChartSpec } from '@visactor/vchart'\nimport type { Label, VChartSpecPipe } from 'src/types'\nimport { label as commonLabel } from './label'\n\nexport const labelCirclePacking: VChartSpecPipe = (spec, context) => {\n const { advancedVSeed } = context\n const { chartType } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: Label }\n const { label } = baseConfig\n\n // Reuse common label logic to build basic label config\n const result = commonLabel(spec, context) as ILineChartSpec\n\n // If label is enabled, override with circlePacking specific logic\n if (label?.enable) {\n const labelSpec = result.label as any\n result.label = {\n ...labelSpec,\n style: {\n ...labelSpec?.style,\n fontSize: 10,\n visible: (d: any) => {\n return d.depth === 1\n },\n },\n }\n }\n\n return result\n}\n"],"names":["labelCirclePacking","spec","context","advancedVSeed","chartType","baseConfig","label","result","commonLabel","labelSpec","d"],"mappings":";AAIO,MAAMA,qBAAqC,CAACC,MAAMC;IACvD,MAAM,EAAEC,aAAa,EAAE,GAAGD;IAC1B,MAAM,EAAEE,SAAS,EAAE,GAAGD;IACtB,MAAME,aAAaF,cAAc,MAAM,CAACC,UAAU;IAClD,MAAM,EAAEE,KAAK,EAAE,GAAGD;IAGlB,MAAME,SAASC,wBAAYP,MAAMC;IAGjC,IAAII,OAAO,QAAQ;QACjB,MAAMG,YAAYF,OAAO,KAAK;QAC9BA,OAAO,KAAK,GAAG;YACb,GAAGE,SAAS;YACZ,OAAO;gBACL,GAAGA,WAAW,KAAK;gBACnB,UAAU;gBACV,SAAS,CAACC,IACDA,AAAY,MAAZA,EAAE,KAAK;YAElB;QACF;IACF;IAEA,OAAOH;AACT"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { label as external_label_js_label } from "./label.js";
|
|
2
|
+
const labelSunburst = (spec, context)=>{
|
|
3
|
+
const { advancedVSeed } = context;
|
|
4
|
+
const { chartType, encoding } = advancedVSeed;
|
|
5
|
+
const baseConfig = advancedVSeed.config[chartType];
|
|
6
|
+
const { label } = baseConfig;
|
|
7
|
+
const result = external_label_js_label(spec, context);
|
|
8
|
+
if (label?.enable) {
|
|
9
|
+
const labelSpec = result.label;
|
|
10
|
+
result.label = {
|
|
11
|
+
...labelSpec,
|
|
12
|
+
style: {
|
|
13
|
+
...labelSpec?.style,
|
|
14
|
+
fontSize: 12,
|
|
15
|
+
fillOpacity: (datum)=>{
|
|
16
|
+
if (encoding.hierarchy?.length === 1) return 1;
|
|
17
|
+
return datum.isLeaf ? 0.4 : 0.6;
|
|
18
|
+
}
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
}
|
|
22
|
+
return result;
|
|
23
|
+
};
|
|
24
|
+
export { labelSunburst };
|
|
25
|
+
|
|
26
|
+
//# sourceMappingURL=labelSunburst.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"pipeline/spec/chart/pipes/label/labelSunburst.js","sources":["webpack://@visactor/vseed/./src/pipeline/spec/chart/pipes/label/labelSunburst.ts"],"sourcesContent":["import type { ILineChartSpec } from '@visactor/vchart'\nimport type { Label, VChartSpecPipe } from 'src/types'\nimport { label as commonLabel } from './label'\n\nexport const labelSunburst: VChartSpecPipe = (spec, context) => {\n const { advancedVSeed } = context\n const { chartType, encoding } = advancedVSeed\n const baseConfig = advancedVSeed.config[chartType] as { label: Label }\n const { label } = baseConfig\n\n // Reuse common label logic\n const result = commonLabel(spec, context) as ILineChartSpec\n\n // Override with sunburst specific logic\n if (label?.enable) {\n const labelSpec = result.label as any\n result.label = {\n ...labelSpec,\n style: {\n ...labelSpec?.style,\n fontSize: 12,\n fillOpacity: (datum: any) => {\n if (encoding.hierarchy?.length === 1) {\n return 1\n }\n return datum.isLeaf ? 0.4 : 0.6\n },\n },\n }\n }\n\n return result\n}\n"],"names":["labelSunburst","spec","context","advancedVSeed","chartType","encoding","baseConfig","label","result","commonLabel","labelSpec","datum"],"mappings":";AAIO,MAAMA,gBAAgC,CAACC,MAAMC;IAClD,MAAM,EAAEC,aAAa,EAAE,GAAGD;IAC1B,MAAM,EAAEE,SAAS,EAAEC,QAAQ,EAAE,GAAGF;IAChC,MAAMG,aAAaH,cAAc,MAAM,CAACC,UAAU;IAClD,MAAM,EAAEG,KAAK,EAAE,GAAGD;IAGlB,MAAME,SAASC,wBAAYR,MAAMC;IAGjC,IAAIK,OAAO,QAAQ;QACjB,MAAMG,YAAYF,OAAO,KAAK;QAC9BA,OAAO,KAAK,GAAG;YACb,GAAGE,SAAS;YACZ,OAAO;gBACL,GAAGA,WAAW,KAAK;gBACnB,UAAU;gBACV,aAAa,CAACC;oBACZ,IAAIN,SAAS,SAAS,EAAE,WAAW,GACjC,OAAO;oBAET,OAAOM,MAAM,MAAM,GAAG,MAAM;gBAC9B;YACF;QACF;IACF;IAEA,OAAOH;AACT"}
|