semiotic 2.0.3 → 3.0.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CLAUDE.md +530 -0
- package/README.md +190 -37
- package/ai/cli.js +48 -0
- package/ai/dist/ai/componentRegistry.js +45 -0
- package/ai/dist/ai/mcp-server.js +99 -0
- package/ai/dist/ai/renderHOCToSVG.js +77 -0
- package/ai/dist/src/components/Annotation.js +358 -0
- package/ai/dist/src/components/AnnotationLayer/AnnotationLayer.js +369 -0
- package/ai/dist/src/components/Axis/Axis.js +373 -0
- package/ai/dist/src/components/Axis/axisTitle.js +14 -0
- package/ai/dist/src/components/Axis/index.js +7 -0
- package/ai/dist/src/components/Axis/summaryGraphic.js +37 -0
- package/ai/dist/src/components/Brush.js +84 -0
- package/ai/dist/src/components/DividedLine.js +65 -0
- package/ai/dist/src/components/FacetController.js +259 -0
- package/ai/dist/src/components/Frame.js +139 -0
- package/ai/dist/src/components/InteractionLayer.js +328 -0
- package/ai/dist/src/components/Legend.js +140 -0
- package/ai/dist/src/components/MiniMap.js +75 -0
- package/ai/dist/src/components/MinimapXYFrame.js +99 -0
- package/ai/dist/src/components/NetworkFrame.js +335 -0
- package/ai/dist/src/components/OrdinalFrame.js +437 -0
- package/ai/dist/src/components/ResponsiveFrame.js +68 -0
- package/ai/dist/src/components/ResponsiveMinimapXYFrame.js +11 -0
- package/ai/dist/src/components/ResponsiveNetworkFrame.js +11 -0
- package/ai/dist/src/components/ResponsiveOrdinalFrame.js +11 -0
- package/ai/dist/src/components/ResponsiveXYFrame.js +10 -0
- package/ai/dist/src/components/SparkFrame.js +113 -0
- package/ai/dist/src/components/SparkNetworkFrame.js +11 -0
- package/ai/dist/src/components/SparkOrdinalFrame.js +11 -0
- package/ai/dist/src/components/SparkXYFrame.js +11 -0
- package/ai/dist/src/components/Tooltip/Tooltip.js +304 -0
- package/ai/dist/src/components/TooltipPositioner/index.js +132 -0
- package/ai/dist/src/components/VisualizationLayer.js +395 -0
- package/ai/dist/src/components/XYFrame.js +524 -0
- package/ai/dist/src/components/annotationLayerBehavior/annotationHandling.js +73 -0
- package/ai/dist/src/components/annotationLayerBehavior/d3labeler.js +254 -0
- package/ai/dist/src/components/annotationRules/baseRules.js +150 -0
- package/ai/dist/src/components/annotationRules/networkframeRules.js +198 -0
- package/ai/dist/src/components/annotationRules/orframeRules.js +695 -0
- package/ai/dist/src/components/annotationRules/xyframeRules.js +299 -0
- package/ai/dist/src/components/batchWork.js +35 -0
- package/ai/dist/src/components/charts/index.js +96 -0
- package/ai/dist/src/components/charts/network/ChordDiagram.js +245 -0
- package/ai/dist/src/components/charts/network/CirclePack.js +177 -0
- package/ai/dist/src/components/charts/network/ForceDirectedGraph.js +248 -0
- package/ai/dist/src/components/charts/network/SankeyDiagram.js +305 -0
- package/ai/dist/src/components/charts/network/TreeDiagram.js +268 -0
- package/ai/dist/src/components/charts/network/Treemap.js +177 -0
- package/ai/dist/src/components/charts/ordinal/BarChart.js +191 -0
- package/ai/dist/src/components/charts/ordinal/BoxPlot.js +235 -0
- package/ai/dist/src/components/charts/ordinal/DonutChart.js +178 -0
- package/ai/dist/src/components/charts/ordinal/DotPlot.js +194 -0
- package/ai/dist/src/components/charts/ordinal/GroupedBarChart.js +194 -0
- package/ai/dist/src/components/charts/ordinal/PieChart.js +155 -0
- package/ai/dist/src/components/charts/ordinal/StackedBarChart.js +213 -0
- package/ai/dist/src/components/charts/ordinal/SwarmPlot.js +219 -0
- package/ai/dist/src/components/charts/realtime/RealtimeBarChart.js +91 -0
- package/ai/dist/src/components/charts/realtime/RealtimeLineChart.js +73 -0
- package/ai/dist/src/components/charts/realtime/RealtimeSwarmChart.js +85 -0
- package/ai/dist/src/components/charts/realtime/RealtimeWaterfallChart.js +86 -0
- package/ai/dist/src/components/charts/shared/ChartError.js +72 -0
- package/ai/dist/src/components/charts/shared/colorUtils.js +138 -0
- package/ai/dist/src/components/charts/shared/formatUtils.js +176 -0
- package/ai/dist/src/components/charts/shared/hooks.js +49 -0
- package/ai/dist/src/components/charts/shared/legendUtils.js +57 -0
- package/ai/dist/src/components/charts/shared/types.js +2 -0
- package/ai/dist/src/components/charts/shared/validateChartData.js +82 -0
- package/ai/dist/src/components/charts/shared/validateProps.js +640 -0
- package/ai/dist/src/components/charts/xy/AreaChart.js +220 -0
- package/ai/dist/src/components/charts/xy/BubbleChart.js +222 -0
- package/ai/dist/src/components/charts/xy/Heatmap.js +230 -0
- package/ai/dist/src/components/charts/xy/LineChart.js +302 -0
- package/ai/dist/src/components/charts/xy/Scatterplot.js +136 -0
- package/ai/dist/src/components/charts/xy/StackedAreaChart.js +220 -0
- package/ai/dist/src/components/constants/coordinateNames.js +11 -0
- package/ai/dist/src/components/constants/frame_props.js +251 -0
- package/ai/dist/src/components/constants/jsx.js +71 -0
- package/ai/dist/src/components/data/dataFunctions.js +473 -0
- package/ai/dist/src/components/data/multiAccessorUtils.js +14 -0
- package/ai/dist/src/components/data/networkPipelineCache.js +43 -0
- package/ai/dist/src/components/data/ordinalPipelineCache.js +53 -0
- package/ai/dist/src/components/data/unflowedFunctions.js +5 -0
- package/ai/dist/src/components/data/xyPipelineCache.js +49 -0
- package/ai/dist/src/components/generic_utilities/functions.js +5 -0
- package/ai/dist/src/components/index.js +145 -0
- package/ai/dist/src/components/interactionLayerBehavior/InteractionCanvas.js +128 -0
- package/ai/dist/src/components/processing/InteractionItems.js +223 -0
- package/ai/dist/src/components/processing/hierarchyUtils.js +104 -0
- package/ai/dist/src/components/processing/layouts/chordLayout.js +58 -0
- package/ai/dist/src/components/processing/layouts/forceLayout.js +142 -0
- package/ai/dist/src/components/processing/layouts/hierarchyLayout.js +31 -0
- package/ai/dist/src/components/processing/layouts/index.js +32 -0
- package/ai/dist/src/components/processing/layouts/sankeyLayout.js +96 -0
- package/ai/dist/src/components/processing/layouts/simpleLayouts.js +34 -0
- package/ai/dist/src/components/processing/layouts/types.js +2 -0
- package/ai/dist/src/components/processing/network.js +771 -0
- package/ai/dist/src/components/processing/networkDefaults.js +39 -0
- package/ai/dist/src/components/processing/networkLayoutHelpers.js +98 -0
- package/ai/dist/src/components/processing/ordinal.js +889 -0
- package/ai/dist/src/components/processing/ordinalConstants.js +23 -0
- package/ai/dist/src/components/processing/ordinalOverlays.js +88 -0
- package/ai/dist/src/components/processing/ordinalRenderPipeline.js +196 -0
- package/ai/dist/src/components/processing/xyDrawing.js +484 -0
- package/ai/dist/src/components/realtime/BinAccumulator.js +36 -0
- package/ai/dist/src/components/realtime/IncrementalExtent.js +55 -0
- package/ai/dist/src/components/realtime/RealtimeFrame.js +710 -0
- package/ai/dist/src/components/realtime/RingBuffer.js +104 -0
- package/ai/dist/src/components/realtime/renderers/barRenderer.js +133 -0
- package/ai/dist/src/components/realtime/renderers/candlestickRenderer.js +7 -0
- package/ai/dist/src/components/realtime/renderers/lineRenderer.js +164 -0
- package/ai/dist/src/components/realtime/renderers/swarmRenderer.js +91 -0
- package/ai/dist/src/components/realtime/renderers/types.js +2 -0
- package/ai/dist/src/components/realtime/renderers/waterfallRenderer.js +163 -0
- package/ai/dist/src/components/realtime/types.js +2 -0
- package/ai/dist/src/components/semiotic-ai.js +66 -0
- package/ai/dist/src/components/semiotic-network.js +30 -0
- package/ai/dist/src/components/semiotic-ordinal.js +28 -0
- package/ai/dist/src/components/semiotic-realtime.js +37 -0
- package/ai/dist/src/components/semiotic-server.js +8 -0
- package/ai/dist/src/components/semiotic-xy.js +41 -0
- package/ai/dist/src/components/semiotic.js +101 -0
- package/ai/dist/src/components/server/renderToStaticSVG.js +392 -0
- package/ai/dist/src/components/store/TooltipStore.js +13 -0
- package/ai/dist/src/components/store/createStore.js +77 -0
- package/ai/dist/src/components/svg/SvgHelper.js +308 -0
- package/ai/dist/src/components/svg/areaDrawing.js +312 -0
- package/ai/dist/src/components/svg/boxplotRenderer.js +441 -0
- package/ai/dist/src/components/svg/bucketizedRenderer.js +677 -0
- package/ai/dist/src/components/svg/ckbinsRenderer.js +92 -0
- package/ai/dist/src/components/svg/ckmeans.js +238 -0
- package/ai/dist/src/components/svg/contourLayout.js +73 -0
- package/ai/dist/src/components/svg/contourRenderer.js +53 -0
- package/ai/dist/src/components/svg/edgeGenerators.js +181 -0
- package/ai/dist/src/components/svg/frameFunctions.js +579 -0
- package/ai/dist/src/components/svg/graphAlgorithms.js +138 -0
- package/ai/dist/src/components/svg/hexbinLayout.js +163 -0
- package/ai/dist/src/components/svg/lineDrawing.js +427 -0
- package/ai/dist/src/components/svg/networkDrawing.js +207 -0
- package/ai/dist/src/components/svg/nodeGenerators.js +131 -0
- package/ai/dist/src/components/svg/pieceDrawing.js +110 -0
- package/ai/dist/src/components/svg/pieceLayouts.js +588 -0
- package/ai/dist/src/components/svg/sankeyLinks.js +143 -0
- package/ai/dist/src/components/svg/summaryAxis.js +48 -0
- package/ai/dist/src/components/svg/summaryLayouts.js +202 -0
- package/ai/dist/src/components/svg/swarmLayout.js +128 -0
- package/ai/dist/src/components/types/annotationTypes.js +2 -0
- package/ai/dist/src/components/types/canvasTypes.js +2 -0
- package/ai/dist/src/components/types/generalTypes.js +2 -0
- package/ai/dist/src/components/types/interactionTypes.js +2 -0
- package/ai/dist/src/components/types/legendTypes.js +2 -0
- package/ai/dist/src/components/types/networkTypes.js +2 -0
- package/ai/dist/src/components/types/ordinalTypes.js +2 -0
- package/ai/dist/src/components/types/xyTypes.js +2 -0
- package/ai/dist/src/components/useBoundingRect.js +24 -0
- package/ai/dist/src/components/useDerivedStateFromProps.js +25 -0
- package/ai/dist/src/components/useLegacyUnmountCallback.js +21 -0
- package/ai/dist/src/components/visualizationLayerBehavior/axis.js +249 -0
- package/ai/dist/src/components/visualizationLayerBehavior/general.js +435 -0
- package/ai/dist/src/setupTests.js +4 -0
- package/ai/examples.md +394 -0
- package/ai/schema.json +1178 -0
- package/ai/system-prompt.md +38 -0
- package/dist/AnnotationLayer/AnnotationLayer.d.ts +0 -1
- package/dist/Axis/axisTitle.d.ts +3 -3
- package/dist/Axis/summaryGraphic.d.ts +1 -1
- package/dist/FacetController.d.ts +1 -1
- package/dist/MinimapXYFrame.d.ts +2 -2
- package/dist/NetworkFrame.d.ts +5 -1
- package/dist/OrdinalFrame.d.ts +5 -1
- package/dist/ResponsiveFrame.d.ts +2 -2
- package/dist/ResponsiveMinimapXYFrame.d.ts +3 -6
- package/dist/ResponsiveNetworkFrame.d.ts +3 -6
- package/dist/ResponsiveOrdinalFrame.d.ts +3 -6
- package/dist/ResponsiveXYFrame.d.ts +3 -6
- package/dist/SparkFrame.d.ts +1 -1
- package/dist/SparkNetworkFrame.d.ts +3 -3
- package/dist/SparkOrdinalFrame.d.ts +3 -3
- package/dist/SparkXYFrame.d.ts +3 -3
- package/dist/Tooltip/Tooltip.d.ts +141 -0
- package/dist/TooltipPositioner/index.d.ts +1 -1
- package/dist/VisualizationLayer.d.ts +3 -3
- package/dist/XYFrame.d.ts +5 -1
- package/dist/annotationLayerBehavior/annotationHandling.d.ts +2 -2
- package/dist/annotationRules/networkframeRules.d.ts +2 -2
- package/dist/annotationRules/orframeRules.d.ts +2 -4
- package/dist/annotationRules/xyframeRules.d.ts +2 -2
- package/dist/batchWork.d.ts +1 -1
- package/dist/charts/index.d.ts +62 -0
- package/dist/charts/network/ChordDiagram.d.ts +181 -0
- package/dist/charts/network/CirclePack.d.ts +103 -0
- package/dist/charts/network/ForceDirectedGraph.d.ts +192 -0
- package/dist/charts/network/SankeyDiagram.d.ts +195 -0
- package/dist/charts/network/TreeDiagram.d.ts +200 -0
- package/dist/charts/network/Treemap.d.ts +98 -0
- package/dist/charts/ordinal/BarChart.d.ts +119 -0
- package/dist/charts/ordinal/BoxPlot.d.ts +125 -0
- package/dist/charts/ordinal/DonutChart.d.ts +95 -0
- package/dist/charts/ordinal/DotPlot.d.ts +128 -0
- package/dist/charts/ordinal/GroupedBarChart.d.ts +113 -0
- package/dist/charts/ordinal/PieChart.d.ts +83 -0
- package/dist/charts/ordinal/StackedBarChart.d.ts +119 -0
- package/dist/charts/ordinal/SwarmPlot.d.ts +137 -0
- package/dist/charts/realtime/RealtimeBarChart.d.ts +102 -0
- package/dist/charts/realtime/RealtimeLineChart.d.ts +78 -0
- package/dist/charts/realtime/RealtimeSwarmChart.d.ts +88 -0
- package/dist/charts/realtime/RealtimeWaterfallChart.d.ts +85 -0
- package/dist/charts/shared/ChartError.d.ts +19 -0
- package/dist/charts/shared/colorUtils.d.ts +62 -0
- package/dist/charts/shared/formatUtils.d.ts +82 -0
- package/dist/charts/shared/hooks.d.ts +20 -0
- package/dist/charts/shared/legendUtils.d.ts +32 -0
- package/dist/charts/shared/types.d.ts +58 -0
- package/dist/charts/shared/validateChartData.d.ts +41 -0
- package/dist/charts/shared/validateProps.d.ts +18 -0
- package/dist/charts/xy/AreaChart.d.ts +127 -0
- package/dist/charts/xy/BubbleChart.d.ts +157 -0
- package/dist/charts/xy/Heatmap.d.ts +153 -0
- package/dist/charts/xy/LineChart.d.ts +193 -0
- package/dist/charts/xy/Scatterplot.d.ts +50 -0
- package/dist/charts/xy/StackedAreaChart.d.ts +131 -0
- package/dist/constants/frame_props.d.ts +9 -0
- package/dist/constants/jsx.d.ts +2 -2
- package/dist/data/dataFunctions.d.ts +11 -12
- package/dist/data/networkPipelineCache.d.ts +27 -0
- package/dist/data/ordinalPipelineCache.d.ts +33 -0
- package/dist/data/xyPipelineCache.d.ts +35 -0
- package/dist/index.d.ts +70 -62
- package/dist/interactionLayerBehavior/InteractionCanvas.d.ts +1 -1
- package/dist/network.js +8520 -0
- package/dist/network.js.map +1 -0
- package/dist/network.min.js +1 -0
- package/dist/network.module.js +8484 -0
- package/dist/network.module.js.map +1 -0
- package/dist/network.module.min.js +1 -0
- package/dist/ordinal.js +9276 -0
- package/dist/ordinal.js.map +1 -0
- package/dist/ordinal.min.js +1 -0
- package/dist/ordinal.module.js +9242 -0
- package/dist/ordinal.module.js.map +1 -0
- package/dist/ordinal.module.min.js +1 -0
- package/dist/processing/InteractionItems.d.ts +5 -4
- package/dist/processing/hierarchyUtils.d.ts +16 -0
- package/dist/processing/layouts/chordLayout.d.ts +2 -0
- package/dist/processing/layouts/forceLayout.d.ts +3 -0
- package/dist/processing/layouts/hierarchyLayout.d.ts +10 -0
- package/dist/processing/layouts/index.d.ts +8 -0
- package/dist/processing/layouts/sankeyLayout.d.ts +8 -0
- package/dist/processing/layouts/simpleLayouts.d.ts +7 -0
- package/dist/processing/layouts/types.d.ts +17 -0
- package/dist/processing/network.d.ts +25 -28
- package/dist/processing/networkDefaults.d.ts +36 -0
- package/dist/processing/networkLayoutHelpers.d.ts +54 -0
- package/dist/processing/ordinal.d.ts +43 -43
- package/dist/processing/ordinalConstants.d.ts +33 -0
- package/dist/processing/ordinalOverlays.d.ts +33 -0
- package/dist/processing/ordinalRenderPipeline.d.ts +148 -0
- package/dist/processing/xyDrawing.d.ts +46 -41
- package/dist/realtime/BinAccumulator.d.ts +8 -0
- package/dist/realtime/IncrementalExtent.d.ts +13 -0
- package/dist/realtime/RealtimeFrame.d.ts +4 -0
- package/dist/realtime/RingBuffer.d.ts +19 -0
- package/dist/realtime/renderers/barRenderer.d.ts +2 -0
- package/dist/realtime/renderers/candlestickRenderer.d.ts +2 -0
- package/dist/realtime/renderers/lineRenderer.d.ts +2 -0
- package/dist/realtime/renderers/swarmRenderer.d.ts +2 -0
- package/dist/realtime/renderers/types.d.ts +9 -0
- package/dist/realtime/renderers/waterfallRenderer.d.ts +3 -0
- package/dist/realtime/types.d.ts +113 -0
- package/dist/realtime.js +1598 -0
- package/dist/realtime.js.map +1 -0
- package/dist/realtime.min.js +1 -0
- package/dist/realtime.module.js +1566 -0
- package/dist/realtime.module.js.map +1 -0
- package/dist/realtime.module.min.js +1 -0
- package/dist/semiotic-ai.d.ts +28 -0
- package/dist/semiotic-ai.js +18722 -0
- package/dist/semiotic-ai.js.map +1 -0
- package/dist/semiotic-ai.min.js +1 -0
- package/dist/semiotic-ai.module.js +18668 -0
- package/dist/semiotic-ai.module.js.map +1 -0
- package/dist/semiotic-ai.module.min.js +1 -0
- package/dist/semiotic-network.d.ts +19 -0
- package/dist/semiotic-ordinal.d.ts +18 -0
- package/dist/semiotic-realtime.d.ts +23 -0
- package/dist/semiotic-server.d.ts +1 -0
- package/dist/semiotic-xy.d.ts +24 -0
- package/dist/semiotic.d.ts +19 -3
- package/dist/semiotic.js +18707 -12983
- package/dist/semiotic.js.map +1 -0
- package/dist/semiotic.min.js +1 -0
- package/dist/semiotic.module.js +18651 -12953
- package/dist/semiotic.module.js.map +1 -0
- package/dist/semiotic.module.min.js +1 -0
- package/dist/server/renderToStaticSVG.d.ts +9 -0
- package/dist/server.js +8360 -0
- package/dist/server.js.map +1 -0
- package/dist/server.min.js +1 -0
- package/dist/server.module.js +8331 -0
- package/dist/server.module.js.map +1 -0
- package/dist/server.module.min.js +1 -0
- package/dist/svg/SvgHelper.d.ts +1 -5
- package/dist/svg/areaDrawing.d.ts +3 -13
- package/dist/svg/boxplotRenderer.d.ts +15 -0
- package/dist/svg/bucketizedRenderer.d.ts +16 -0
- package/dist/svg/ckbinsRenderer.d.ts +20 -0
- package/dist/svg/contourLayout.d.ts +6 -0
- package/dist/svg/contourRenderer.d.ts +12 -0
- package/dist/svg/edgeGenerators.d.ts +51 -0
- package/dist/svg/frameFunctions.d.ts +17 -28
- package/dist/svg/graphAlgorithms.d.ts +14 -0
- package/dist/svg/hexbinLayout.d.ts +7 -0
- package/dist/svg/lineDrawing.d.ts +8 -8
- package/dist/svg/networkDrawing.d.ts +5 -123
- package/dist/svg/nodeGenerators.d.ts +58 -0
- package/dist/svg/pieceDrawing.d.ts +1 -2
- package/dist/svg/pieceLayouts.d.ts +5 -23
- package/dist/svg/sankeyLinks.d.ts +3 -0
- package/dist/svg/summaryAxis.d.ts +6 -0
- package/dist/svg/summaryLayouts.d.ts +36 -57
- package/dist/svg/swarmLayout.d.ts +13 -0
- package/dist/types/annotationTypes.d.ts +13 -18
- package/dist/types/canvasTypes.d.ts +1 -1
- package/dist/types/generalTypes.d.ts +37 -35
- package/dist/types/interactionTypes.d.ts +7 -9
- package/dist/types/legendTypes.d.ts +2 -2
- package/dist/types/networkTypes.d.ts +40 -30
- package/dist/types/ordinalTypes.d.ts +27 -18
- package/dist/types/xyTypes.d.ts +13 -16
- package/dist/useLegacyUnmountCallback.d.ts +2 -1
- package/dist/visualizationLayerBehavior/axis.d.ts +3 -5
- package/dist/visualizationLayerBehavior/general.d.ts +8 -12
- package/dist/xy.js +7944 -0
- package/dist/xy.js.map +1 -0
- package/dist/xy.min.js +1 -0
- package/dist/xy.module.js +7903 -0
- package/dist/xy.module.js.map +1 -0
- package/dist/xy.module.min.js +1 -0
- package/package.json +116 -66
- package/dist/AnnotationLayer/helpers.d.ts +0 -6
- package/dist/AnnotationLayer/index.d.ts +0 -2
- package/dist/Mark/Mark.d.ts +0 -3
- package/dist/Mark/Mark.types.d.ts +0 -10
- package/dist/Mark/constants/markTransition.d.ts +0 -10
- package/dist/Mark/markBehavior/drawing.d.ts +0 -13
- package/dist/SpanOrDiv.d.ts +0 -10
- package/dist/components/Annotation.d.ts +0 -3
- package/dist/components/AnnotationLayer/AnnotationLayer.d.ts +0 -26
- package/dist/components/Axis/Axis.d.ts +0 -7
- package/dist/components/Axis/axisTitle.d.ts +0 -10
- package/dist/components/Axis/index.d.ts +0 -2
- package/dist/components/Axis/summaryGraphic.d.ts +0 -17
- package/dist/components/Brush.d.ts +0 -12
- package/dist/components/DividedLine.d.ts +0 -16
- package/dist/components/FacetController.d.ts +0 -12
- package/dist/components/Frame.d.ts +0 -2
- package/dist/components/InteractionLayer.d.ts +0 -3
- package/dist/components/Legend.d.ts +0 -3
- package/dist/components/Mark/Mark.d.ts +0 -3
- package/dist/components/Mark/Mark.types.d.ts +0 -10
- package/dist/components/Mark/markBehavior/drawing.d.ts +0 -13
- package/dist/components/MiniMap.d.ts +0 -14
- package/dist/components/MinimapXYFrame.d.ts +0 -10
- package/dist/components/NetworkFrame.d.ts +0 -4
- package/dist/components/OrdinalFrame.d.ts +0 -4
- package/dist/components/ResponsiveFrame.d.ts +0 -22
- package/dist/components/ResponsiveMinimapXYFrame.d.ts +0 -6
- package/dist/components/ResponsiveNetworkFrame.d.ts +0 -6
- package/dist/components/ResponsiveOrdinalFrame.d.ts +0 -6
- package/dist/components/ResponsiveXYFrame.d.ts +0 -6
- package/dist/components/SpanOrDiv.d.ts +0 -10
- package/dist/components/SparkFrame.d.ts +0 -14
- package/dist/components/SparkNetworkFrame.d.ts +0 -5
- package/dist/components/SparkOrdinalFrame.d.ts +0 -5
- package/dist/components/SparkXYFrame.d.ts +0 -5
- package/dist/components/TooltipPositioner/index.d.ts +0 -7
- package/dist/components/VisualizationLayer.d.ts +0 -33
- package/dist/components/XYFrame.d.ts +0 -4
- package/dist/components/annotationLayerBehavior/annotationHandling.d.ts +0 -19
- package/dist/components/annotationLayerBehavior/d3labeler.d.ts +0 -9
- package/dist/components/annotationRules/baseRules.d.ts +0 -25
- package/dist/components/annotationRules/networkframeRules.d.ts +0 -48
- package/dist/components/annotationRules/orframeRules.d.ts +0 -105
- package/dist/components/annotationRules/xyframeRules.d.ts +0 -117
- package/dist/components/batchWork.d.ts +0 -6
- package/dist/components/constants/coordinateNames.d.ts +0 -8
- package/dist/components/constants/frame_props.d.ts +0 -4
- package/dist/components/constants/jsx.d.ts +0 -19
- package/dist/components/data/dataFunctions.d.ts +0 -46
- package/dist/components/data/multiAccessorUtils.d.ts +0 -1
- package/dist/components/data/unflowedFunctions.d.ts +0 -1
- package/dist/components/generic_utilities/functions.d.ts +0 -1
- package/dist/components/index.d.ts +0 -125
- package/dist/components/interactionLayerBehavior/InteractionCanvas.d.ts +0 -20
- package/dist/components/processing/InteractionItems.d.ts +0 -12
- package/dist/components/processing/network.d.ts +0 -114
- package/dist/components/processing/ordinal.d.ts +0 -102
- package/dist/components/processing/xyDrawing.d.ts +0 -135
- package/dist/components/semiotic.d.ts +0 -35
- package/dist/components/store/TooltipStore.d.ts +0 -2
- package/dist/components/store/createStore.d.ts +0 -1
- package/dist/components/svg/SvgHelper.d.ts +0 -37
- package/dist/components/svg/areaDrawing.d.ts +0 -31
- package/dist/components/svg/ckmeans.d.ts +0 -69
- package/dist/components/svg/frameFunctions.d.ts +0 -119
- package/dist/components/svg/lineDrawing.d.ts +0 -99
- package/dist/components/svg/networkDrawing.d.ts +0 -134
- package/dist/components/svg/pieceDrawing.d.ts +0 -13
- package/dist/components/svg/pieceLayouts.d.ts +0 -71
- package/dist/components/svg/summaryLayouts.d.ts +0 -74
- package/dist/components/types/annotationTypes.d.ts +0 -140
- package/dist/components/types/canvasTypes.d.ts +0 -9
- package/dist/components/types/generalTypes.d.ts +0 -236
- package/dist/components/types/interactionTypes.d.ts +0 -74
- package/dist/components/types/legendTypes.d.ts +0 -20
- package/dist/components/types/networkTypes.d.ts +0 -165
- package/dist/components/types/ordinalTypes.d.ts +0 -103
- package/dist/components/types/xyTypes.d.ts +0 -118
- package/dist/components/useBoundingRect.d.ts +0 -2
- package/dist/components/useDerivedStateFromProps.d.ts +0 -1
- package/dist/components/useLegacyUnmountCallback.d.ts +0 -1
- package/dist/components/visualizationLayerBehavior/axis.d.ts +0 -38
- package/dist/components/visualizationLayerBehavior/general.d.ts +0 -84
- package/dist/setupTests.d.ts +0 -1
|
@@ -0,0 +1,200 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { NetworkFrameProps } from "../../types/networkTypes";
|
|
3
|
+
import type { BaseChartProps, ChartAccessor, Accessor } from "../shared/types";
|
|
4
|
+
import { type TooltipProp } from "../../Tooltip/Tooltip";
|
|
5
|
+
/**
|
|
6
|
+
* TreeDiagram component props
|
|
7
|
+
*/
|
|
8
|
+
export interface TreeDiagramProps<TNode extends Record<string, any> = Record<string, any>, TEdge extends Record<string, any> = Record<string, any>> extends BaseChartProps {
|
|
9
|
+
/**
|
|
10
|
+
* Hierarchical data structure
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* {
|
|
14
|
+
* name: 'root',
|
|
15
|
+
* children: [
|
|
16
|
+
* {name: 'A', children: [{name: 'A1'}, {name: 'A2'}]},
|
|
17
|
+
* {name: 'B'}
|
|
18
|
+
* ]
|
|
19
|
+
* }
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
data: TNode;
|
|
23
|
+
/**
|
|
24
|
+
* Tree layout algorithm
|
|
25
|
+
* - "tree": standard tree layout
|
|
26
|
+
* - "cluster": cluster (dendrogram) layout
|
|
27
|
+
* - "partition": partition (icicle/sunburst) layout
|
|
28
|
+
* - "treemap": treemap layout (@deprecated — use the standalone {@link Treemap} component instead)
|
|
29
|
+
* - "circlepack": circle packing layout (@deprecated — use the standalone {@link CirclePack} component instead)
|
|
30
|
+
* @default "tree"
|
|
31
|
+
*/
|
|
32
|
+
layout?: "tree" | "cluster" | "partition" | "treemap" | "circlepack";
|
|
33
|
+
/**
|
|
34
|
+
* Projection orientation
|
|
35
|
+
* - "vertical": top to bottom
|
|
36
|
+
* - "horizontal": left to right
|
|
37
|
+
* - "radial": radial layout (circular)
|
|
38
|
+
* @default "vertical"
|
|
39
|
+
*/
|
|
40
|
+
orientation?: "vertical" | "horizontal" | "radial";
|
|
41
|
+
/**
|
|
42
|
+
* Field name or function to access children array
|
|
43
|
+
* @default "children"
|
|
44
|
+
*/
|
|
45
|
+
childrenAccessor?: ChartAccessor<TNode, TNode[]>;
|
|
46
|
+
/**
|
|
47
|
+
* Field name or function to access node value for sizing
|
|
48
|
+
* Used by treemap and circlepack layouts
|
|
49
|
+
* @default "value"
|
|
50
|
+
*/
|
|
51
|
+
valueAccessor?: Accessor<number>;
|
|
52
|
+
/**
|
|
53
|
+
* Field name or function to access node identifier
|
|
54
|
+
* @default "name"
|
|
55
|
+
*/
|
|
56
|
+
nodeIdAccessor?: ChartAccessor<TNode, string>;
|
|
57
|
+
/**
|
|
58
|
+
* Field name or function to determine node color
|
|
59
|
+
* @example
|
|
60
|
+
* ```ts
|
|
61
|
+
* colorBy="category"
|
|
62
|
+
* colorBy={d => d.depth}
|
|
63
|
+
* ```
|
|
64
|
+
*/
|
|
65
|
+
colorBy?: ChartAccessor<TNode, string | number>;
|
|
66
|
+
/**
|
|
67
|
+
* Color scheme for nodes or custom colors array
|
|
68
|
+
* @default "category10"
|
|
69
|
+
*/
|
|
70
|
+
colorScheme?: string | string[];
|
|
71
|
+
/**
|
|
72
|
+
* Color nodes by depth level
|
|
73
|
+
* @default false
|
|
74
|
+
*/
|
|
75
|
+
colorByDepth?: boolean;
|
|
76
|
+
/**
|
|
77
|
+
* Edge style
|
|
78
|
+
* - "line": straight lines
|
|
79
|
+
* - "curve": curved lines
|
|
80
|
+
* @default "curve"
|
|
81
|
+
*/
|
|
82
|
+
edgeStyle?: "line" | "curve";
|
|
83
|
+
/**
|
|
84
|
+
* Label accessor for nodes
|
|
85
|
+
* @default Uses nodeIdAccessor
|
|
86
|
+
*/
|
|
87
|
+
nodeLabel?: ChartAccessor<TNode, string>;
|
|
88
|
+
/**
|
|
89
|
+
* Show node labels
|
|
90
|
+
* @default true
|
|
91
|
+
*/
|
|
92
|
+
showLabels?: boolean;
|
|
93
|
+
/**
|
|
94
|
+
* Node size for tree/cluster layouts
|
|
95
|
+
* @default 5
|
|
96
|
+
*/
|
|
97
|
+
nodeSize?: number;
|
|
98
|
+
/**
|
|
99
|
+
* Enable hover annotations
|
|
100
|
+
* @default true
|
|
101
|
+
*/
|
|
102
|
+
enableHover?: boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Tooltip configuration
|
|
105
|
+
*/
|
|
106
|
+
tooltip?: TooltipProp;
|
|
107
|
+
/**
|
|
108
|
+
* Additional NetworkFrame props for advanced customization
|
|
109
|
+
* For full control, consider using NetworkFrame directly
|
|
110
|
+
* @see https://semiotic.nteract.io/guides/network-frame
|
|
111
|
+
*/
|
|
112
|
+
frameProps?: Partial<Omit<NetworkFrameProps, "edges" | "size">>;
|
|
113
|
+
}
|
|
114
|
+
/**
|
|
115
|
+
* TreeDiagram - Visualize hierarchical data structures
|
|
116
|
+
*
|
|
117
|
+
* A simplified wrapper around NetworkFrame for creating tree diagrams.
|
|
118
|
+
* Perfect for organizational charts, file systems, taxonomies, and
|
|
119
|
+
* any hierarchical data.
|
|
120
|
+
*
|
|
121
|
+
* @example
|
|
122
|
+
* ```tsx
|
|
123
|
+
* // Simple tree
|
|
124
|
+
* <TreeDiagram
|
|
125
|
+
* data={{
|
|
126
|
+
* name: 'Root',
|
|
127
|
+
* children: [
|
|
128
|
+
* {name: 'A', children: [{name: 'A1'}, {name: 'A2'}]},
|
|
129
|
+
* {name: 'B'}
|
|
130
|
+
* ]
|
|
131
|
+
* }}
|
|
132
|
+
* />
|
|
133
|
+
* ```
|
|
134
|
+
*
|
|
135
|
+
* @example
|
|
136
|
+
* ```tsx
|
|
137
|
+
* // Horizontal cluster (dendrogram)
|
|
138
|
+
* <TreeDiagram
|
|
139
|
+
* data={hierarchicalData}
|
|
140
|
+
* layout="cluster"
|
|
141
|
+
* orientation="horizontal"
|
|
142
|
+
* colorByDepth={true}
|
|
143
|
+
* />
|
|
144
|
+
* ```
|
|
145
|
+
*
|
|
146
|
+
* @example
|
|
147
|
+
* ```tsx
|
|
148
|
+
* // Radial tree
|
|
149
|
+
* <TreeDiagram
|
|
150
|
+
* data={hierarchicalData}
|
|
151
|
+
* layout="tree"
|
|
152
|
+
* orientation="radial"
|
|
153
|
+
* colorBy="category"
|
|
154
|
+
* nodeSize={8}
|
|
155
|
+
* />
|
|
156
|
+
* ```
|
|
157
|
+
*
|
|
158
|
+
* @example
|
|
159
|
+
* ```tsx
|
|
160
|
+
* // Treemap with sizing
|
|
161
|
+
* <TreeDiagram
|
|
162
|
+
* data={hierarchicalData}
|
|
163
|
+
* layout="treemap"
|
|
164
|
+
* valueAccessor="size"
|
|
165
|
+
* colorBy="type"
|
|
166
|
+
* />
|
|
167
|
+
* ```
|
|
168
|
+
*
|
|
169
|
+
* @example
|
|
170
|
+
* ```tsx
|
|
171
|
+
* // Circle pack
|
|
172
|
+
* <TreeDiagram
|
|
173
|
+
* data={hierarchicalData}
|
|
174
|
+
* layout="circlepack"
|
|
175
|
+
* valueAccessor="value"
|
|
176
|
+
* colorByDepth={true}
|
|
177
|
+
* />
|
|
178
|
+
* ```
|
|
179
|
+
*
|
|
180
|
+
* @remarks
|
|
181
|
+
* This component wraps {@link NetworkFrame} with sensible defaults for tree diagrams.
|
|
182
|
+
* Different layouts are suited for different use cases:
|
|
183
|
+
* - **tree/cluster**: Good for organizational structures, phylogenetic trees
|
|
184
|
+
* - **treemap**: Good for showing proportional sizes (disk usage, budget allocation)
|
|
185
|
+
* - **partition**: Good for hierarchical proportions (icicle or sunburst charts)
|
|
186
|
+
* - **circlepack**: Good for nested hierarchies with size encoding
|
|
187
|
+
*
|
|
188
|
+
* **Data Requirements:**
|
|
189
|
+
* - Data must be hierarchical JSON with a children property (or custom accessor)
|
|
190
|
+
* - For treemap/circlepack, nodes should have a value property for sizing
|
|
191
|
+
*
|
|
192
|
+
* **Breadcrumb to advanced usage:**
|
|
193
|
+
* - Use the `frameProps` prop to pass any NetworkFrame prop
|
|
194
|
+
* - See NetworkFrame documentation: https://semiotic.nteract.io/guides/network-frame
|
|
195
|
+
* - All NetworkFrame props are available via `frameProps`
|
|
196
|
+
*
|
|
197
|
+
* @param props - TreeDiagram configuration
|
|
198
|
+
* @returns Rendered tree diagram
|
|
199
|
+
*/
|
|
200
|
+
export declare function TreeDiagram<TNode extends Record<string, any> = Record<string, any>, TEdge extends Record<string, any> = Record<string, any>>(props: TreeDiagramProps<TNode, TEdge>): React.JSX.Element;
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { NetworkFrameProps } from "../../types/networkTypes";
|
|
3
|
+
import type { BaseChartProps, ChartAccessor, Accessor } from "../shared/types";
|
|
4
|
+
import { type TooltipProp } from "../../Tooltip/Tooltip";
|
|
5
|
+
/**
|
|
6
|
+
* Treemap component props
|
|
7
|
+
*/
|
|
8
|
+
export interface TreemapProps<TNode extends Record<string, any> = Record<string, any>, TEdge extends Record<string, any> = Record<string, any>> extends BaseChartProps {
|
|
9
|
+
/**
|
|
10
|
+
* Hierarchical data structure with children and values.
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* {
|
|
14
|
+
* name: 'root',
|
|
15
|
+
* children: [
|
|
16
|
+
* {name: 'A', value: 100},
|
|
17
|
+
* {name: 'B', children: [{name: 'B1', value: 50}, {name: 'B2', value: 30}]}
|
|
18
|
+
* ]
|
|
19
|
+
* }
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
data: TNode;
|
|
23
|
+
/**
|
|
24
|
+
* Field name or function to access children array
|
|
25
|
+
* @default "children"
|
|
26
|
+
*/
|
|
27
|
+
childrenAccessor?: ChartAccessor<TNode, TNode[]>;
|
|
28
|
+
/**
|
|
29
|
+
* Field name or function to access node value for sizing
|
|
30
|
+
* @default "value"
|
|
31
|
+
*/
|
|
32
|
+
valueAccessor?: Accessor<number>;
|
|
33
|
+
/**
|
|
34
|
+
* Field name or function to access node identifier
|
|
35
|
+
* @default "name"
|
|
36
|
+
*/
|
|
37
|
+
nodeIdAccessor?: ChartAccessor<TNode, string>;
|
|
38
|
+
/**
|
|
39
|
+
* Field name or function to determine node color
|
|
40
|
+
*/
|
|
41
|
+
colorBy?: ChartAccessor<TNode, string | number>;
|
|
42
|
+
/**
|
|
43
|
+
* Color scheme for nodes or custom colors array
|
|
44
|
+
* @default "category10"
|
|
45
|
+
*/
|
|
46
|
+
colorScheme?: string | string[];
|
|
47
|
+
/**
|
|
48
|
+
* Color nodes by hierarchy depth level
|
|
49
|
+
* @default false
|
|
50
|
+
*/
|
|
51
|
+
colorByDepth?: boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Show labels on treemap cells
|
|
54
|
+
* @default true
|
|
55
|
+
*/
|
|
56
|
+
showLabels?: boolean;
|
|
57
|
+
/**
|
|
58
|
+
* Node label accessor
|
|
59
|
+
* @default Uses nodeIdAccessor
|
|
60
|
+
*/
|
|
61
|
+
nodeLabel?: ChartAccessor<TNode, string>;
|
|
62
|
+
/**
|
|
63
|
+
* Enable hover annotations
|
|
64
|
+
* @default true
|
|
65
|
+
*/
|
|
66
|
+
enableHover?: boolean;
|
|
67
|
+
/**
|
|
68
|
+
* Tooltip configuration
|
|
69
|
+
*/
|
|
70
|
+
tooltip?: TooltipProp;
|
|
71
|
+
/**
|
|
72
|
+
* Additional NetworkFrame props for advanced customization
|
|
73
|
+
* For full control, consider using NetworkFrame directly
|
|
74
|
+
*/
|
|
75
|
+
frameProps?: Partial<Omit<NetworkFrameProps, "edges" | "size">>;
|
|
76
|
+
}
|
|
77
|
+
/**
|
|
78
|
+
* Treemap - Visualize hierarchical data as nested rectangles.
|
|
79
|
+
*
|
|
80
|
+
* A simplified wrapper around NetworkFrame with treemap layout.
|
|
81
|
+
* Each rectangle's area is proportional to its value.
|
|
82
|
+
*
|
|
83
|
+
* @example
|
|
84
|
+
* ```tsx
|
|
85
|
+
* <Treemap
|
|
86
|
+
* data={{
|
|
87
|
+
* name: 'root',
|
|
88
|
+
* children: [
|
|
89
|
+
* {name: 'A', value: 100},
|
|
90
|
+
* {name: 'B', value: 200},
|
|
91
|
+
* {name: 'C', value: 150}
|
|
92
|
+
* ]
|
|
93
|
+
* }}
|
|
94
|
+
* colorBy="name"
|
|
95
|
+
* />
|
|
96
|
+
* ```
|
|
97
|
+
*/
|
|
98
|
+
export declare function Treemap<TNode extends Record<string, any> = Record<string, any>, TEdge extends Record<string, any> = Record<string, any>>(props: TreemapProps<TNode, TEdge>): React.JSX.Element;
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { OrdinalFrameProps } from "../../types/ordinalTypes";
|
|
3
|
+
import type { BaseChartProps, ChartAccessor } from "../shared/types";
|
|
4
|
+
import { type TooltipProp } from "../../Tooltip/Tooltip";
|
|
5
|
+
/**
|
|
6
|
+
* BarChart component props
|
|
7
|
+
*/
|
|
8
|
+
export interface BarChartProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps {
|
|
9
|
+
/**
|
|
10
|
+
* Array of data points. Each point should have a category and value.
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* [{category: 'A', value: 10}, {category: 'B', value: 20}]
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
data: TDatum[];
|
|
17
|
+
/**
|
|
18
|
+
* Field name or function to access category values
|
|
19
|
+
* @default "category"
|
|
20
|
+
*/
|
|
21
|
+
categoryAccessor?: ChartAccessor<TDatum, string>;
|
|
22
|
+
/**
|
|
23
|
+
* Field name or function to access numeric values
|
|
24
|
+
* @default "value"
|
|
25
|
+
*/
|
|
26
|
+
valueAccessor?: ChartAccessor<TDatum, number>;
|
|
27
|
+
/**
|
|
28
|
+
* Chart orientation
|
|
29
|
+
* @default "vertical"
|
|
30
|
+
*/
|
|
31
|
+
orientation?: "vertical" | "horizontal";
|
|
32
|
+
/**
|
|
33
|
+
* Label for the category axis
|
|
34
|
+
*/
|
|
35
|
+
categoryLabel?: string;
|
|
36
|
+
/**
|
|
37
|
+
* Label for the value axis
|
|
38
|
+
*/
|
|
39
|
+
valueLabel?: string;
|
|
40
|
+
/**
|
|
41
|
+
* Format function for value axis tick labels
|
|
42
|
+
*/
|
|
43
|
+
valueFormat?: (d: number | string) => string;
|
|
44
|
+
/**
|
|
45
|
+
* Field name or function to determine bar color
|
|
46
|
+
* @example
|
|
47
|
+
* ```ts
|
|
48
|
+
* colorBy="category" // Use category field
|
|
49
|
+
* colorBy={d => d.value > 10 ? 'green' : 'red'} // Use function
|
|
50
|
+
* ```
|
|
51
|
+
*/
|
|
52
|
+
colorBy?: ChartAccessor<TDatum, string>;
|
|
53
|
+
/**
|
|
54
|
+
* Color scheme for categorical data or custom colors array
|
|
55
|
+
* @default "category10"
|
|
56
|
+
*/
|
|
57
|
+
colorScheme?: string | string[];
|
|
58
|
+
/**
|
|
59
|
+
* Sort bars by value
|
|
60
|
+
* @default false
|
|
61
|
+
* @example
|
|
62
|
+
* ```ts
|
|
63
|
+
* sort="asc" // Ascending
|
|
64
|
+
* sort="desc" // Descending
|
|
65
|
+
* sort={true} // Descending (default)
|
|
66
|
+
* sort={(a, b) => a.value - b.value} // Custom function
|
|
67
|
+
* ```
|
|
68
|
+
*/
|
|
69
|
+
sort?: boolean | "asc" | "desc" | ((a: Record<string, any>, b: Record<string, any>) => number);
|
|
70
|
+
/**
|
|
71
|
+
* Padding between bars (in pixels)
|
|
72
|
+
* @default 5
|
|
73
|
+
*/
|
|
74
|
+
barPadding?: number;
|
|
75
|
+
/**
|
|
76
|
+
* Enable hover annotations
|
|
77
|
+
* @default true
|
|
78
|
+
*/
|
|
79
|
+
enableHover?: boolean;
|
|
80
|
+
/**
|
|
81
|
+
* Show grid lines
|
|
82
|
+
* @default false
|
|
83
|
+
*/
|
|
84
|
+
showGrid?: boolean;
|
|
85
|
+
/**
|
|
86
|
+
* Show legend
|
|
87
|
+
* @default true (when colorBy is specified)
|
|
88
|
+
*/
|
|
89
|
+
showLegend?: boolean;
|
|
90
|
+
/**
|
|
91
|
+
* Tooltip configuration
|
|
92
|
+
*/
|
|
93
|
+
tooltip?: TooltipProp;
|
|
94
|
+
/**
|
|
95
|
+
* Additional OrdinalFrame props for advanced customization
|
|
96
|
+
* For full control, consider using OrdinalFrame directly
|
|
97
|
+
* @see https://semiotic.nteract.io/guides/ordinal-frame
|
|
98
|
+
*/
|
|
99
|
+
frameProps?: Partial<Omit<OrdinalFrameProps, "data" | "size">>;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* BarChart - Visualize categorical data with bars.
|
|
103
|
+
*
|
|
104
|
+
* A simplified wrapper around OrdinalFrame for creating bar charts.
|
|
105
|
+
*
|
|
106
|
+
* @example
|
|
107
|
+
* ```tsx
|
|
108
|
+
* <BarChart
|
|
109
|
+
* data={[
|
|
110
|
+
* {category: 'A', value: 10},
|
|
111
|
+
* {category: 'B', value: 20},
|
|
112
|
+
* {category: 'C', value: 15}
|
|
113
|
+
* ]}
|
|
114
|
+
* categoryLabel="Category"
|
|
115
|
+
* valueLabel="Value"
|
|
116
|
+
* />
|
|
117
|
+
* ```
|
|
118
|
+
*/
|
|
119
|
+
export declare function BarChart<TDatum extends Record<string, any> = Record<string, any>>(props: BarChartProps<TDatum>): React.JSX.Element;
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { OrdinalFrameProps } from "../../types/ordinalTypes";
|
|
3
|
+
import type { BaseChartProps, ChartAccessor } from "../shared/types";
|
|
4
|
+
import { type TooltipProp } from "../../Tooltip/Tooltip";
|
|
5
|
+
/**
|
|
6
|
+
* BoxPlot component props
|
|
7
|
+
*/
|
|
8
|
+
export interface BoxPlotProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps {
|
|
9
|
+
/**
|
|
10
|
+
* Array of data points with category and value.
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* [
|
|
14
|
+
* {category: 'Group A', value: 10},
|
|
15
|
+
* {category: 'Group A', value: 12},
|
|
16
|
+
* {category: 'Group A', value: 15},
|
|
17
|
+
* {category: 'Group B', value: 20}
|
|
18
|
+
* ]
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
data: TDatum[];
|
|
22
|
+
/**
|
|
23
|
+
* Field name or function to access category values
|
|
24
|
+
* @default "category"
|
|
25
|
+
*/
|
|
26
|
+
categoryAccessor?: ChartAccessor<TDatum, string>;
|
|
27
|
+
/**
|
|
28
|
+
* Field name or function to access numeric values
|
|
29
|
+
* @default "value"
|
|
30
|
+
*/
|
|
31
|
+
valueAccessor?: ChartAccessor<TDatum, number>;
|
|
32
|
+
/**
|
|
33
|
+
* Chart orientation
|
|
34
|
+
* @default "vertical"
|
|
35
|
+
*/
|
|
36
|
+
orientation?: "vertical" | "horizontal";
|
|
37
|
+
/**
|
|
38
|
+
* Label for the category axis
|
|
39
|
+
*/
|
|
40
|
+
categoryLabel?: string;
|
|
41
|
+
/**
|
|
42
|
+
* Label for the value axis
|
|
43
|
+
*/
|
|
44
|
+
valueLabel?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Format function for value axis tick labels
|
|
47
|
+
*/
|
|
48
|
+
valueFormat?: (d: number | string) => string;
|
|
49
|
+
/**
|
|
50
|
+
* Field name or function to determine box color
|
|
51
|
+
* @example
|
|
52
|
+
* ```ts
|
|
53
|
+
* colorBy="category"
|
|
54
|
+
* colorBy={d => d.group}
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
colorBy?: ChartAccessor<TDatum, string>;
|
|
58
|
+
/**
|
|
59
|
+
* Color scheme for categorical data or custom colors array
|
|
60
|
+
* @default "category10"
|
|
61
|
+
*/
|
|
62
|
+
colorScheme?: string | string[];
|
|
63
|
+
/**
|
|
64
|
+
* Show outlier points
|
|
65
|
+
* @default true
|
|
66
|
+
*/
|
|
67
|
+
showOutliers?: boolean;
|
|
68
|
+
/**
|
|
69
|
+
* Outlier point radius
|
|
70
|
+
* @default 3
|
|
71
|
+
*/
|
|
72
|
+
outlierRadius?: number;
|
|
73
|
+
/**
|
|
74
|
+
* Padding between categories (in pixels)
|
|
75
|
+
* @default 20
|
|
76
|
+
*/
|
|
77
|
+
categoryPadding?: number;
|
|
78
|
+
/**
|
|
79
|
+
* Enable hover annotations
|
|
80
|
+
* @default true
|
|
81
|
+
*/
|
|
82
|
+
enableHover?: boolean;
|
|
83
|
+
/**
|
|
84
|
+
* Show grid lines
|
|
85
|
+
* @default false
|
|
86
|
+
*/
|
|
87
|
+
showGrid?: boolean;
|
|
88
|
+
/**
|
|
89
|
+
* Show legend
|
|
90
|
+
* @default true (when colorBy is specified)
|
|
91
|
+
*/
|
|
92
|
+
showLegend?: boolean;
|
|
93
|
+
/**
|
|
94
|
+
* Tooltip configuration
|
|
95
|
+
*/
|
|
96
|
+
tooltip?: TooltipProp;
|
|
97
|
+
/**
|
|
98
|
+
* Additional OrdinalFrame props for advanced customization
|
|
99
|
+
* For full control, consider using OrdinalFrame directly
|
|
100
|
+
* @see https://semiotic.nteract.io/guides/ordinal-frame
|
|
101
|
+
*/
|
|
102
|
+
frameProps?: Partial<Omit<OrdinalFrameProps, "data" | "size">>;
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* BoxPlot - Visualize statistical distributions with box-and-whisker plots.
|
|
106
|
+
*
|
|
107
|
+
* A simplified wrapper around OrdinalFrame for creating box plots.
|
|
108
|
+
*
|
|
109
|
+
* @example
|
|
110
|
+
* ```tsx
|
|
111
|
+
* <BoxPlot
|
|
112
|
+
* data={[
|
|
113
|
+
* {category: 'Group A', value: 10},
|
|
114
|
+
* {category: 'Group A', value: 12},
|
|
115
|
+
* {category: 'Group A', value: 15},
|
|
116
|
+
* {category: 'Group A', value: 18},
|
|
117
|
+
* {category: 'Group B', value: 20},
|
|
118
|
+
* {category: 'Group B', value: 22}
|
|
119
|
+
* ]}
|
|
120
|
+
* categoryLabel="Group"
|
|
121
|
+
* valueLabel="Value"
|
|
122
|
+
* />
|
|
123
|
+
* ```
|
|
124
|
+
*/
|
|
125
|
+
export declare function BoxPlot<TDatum extends Record<string, any> = Record<string, any>>(props: BoxPlotProps<TDatum>): React.JSX.Element;
|
|
@@ -0,0 +1,95 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { OrdinalFrameProps } from "../../types/ordinalTypes";
|
|
3
|
+
import type { BaseChartProps, ChartAccessor } from "../shared/types";
|
|
4
|
+
import { type TooltipProp } from "../../Tooltip/Tooltip";
|
|
5
|
+
/**
|
|
6
|
+
* DonutChart component props
|
|
7
|
+
*/
|
|
8
|
+
export interface DonutChartProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps {
|
|
9
|
+
/**
|
|
10
|
+
* Array of data points, one per slice.
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* [{category: 'A', value: 30}, {category: 'B', value: 50}, {category: 'C', value: 20}]
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
data: TDatum[];
|
|
17
|
+
/**
|
|
18
|
+
* Field name or function to access slice labels
|
|
19
|
+
* @default "category"
|
|
20
|
+
*/
|
|
21
|
+
categoryAccessor?: ChartAccessor<TDatum, string>;
|
|
22
|
+
/**
|
|
23
|
+
* Field name or function to access slice values
|
|
24
|
+
* @default "value"
|
|
25
|
+
*/
|
|
26
|
+
valueAccessor?: ChartAccessor<TDatum, number>;
|
|
27
|
+
/**
|
|
28
|
+
* Inner radius in pixels. Controls the donut hole size.
|
|
29
|
+
* @default 60
|
|
30
|
+
*/
|
|
31
|
+
innerRadius?: number;
|
|
32
|
+
/**
|
|
33
|
+
* Content to render in the center of the donut (e.g. a total label)
|
|
34
|
+
*/
|
|
35
|
+
centerContent?: React.ReactNode;
|
|
36
|
+
/**
|
|
37
|
+
* Field name or function to determine slice color
|
|
38
|
+
* @default categoryAccessor
|
|
39
|
+
*/
|
|
40
|
+
colorBy?: ChartAccessor<TDatum, string>;
|
|
41
|
+
/**
|
|
42
|
+
* Color scheme for categorical data or custom colors array
|
|
43
|
+
* @default "category10"
|
|
44
|
+
*/
|
|
45
|
+
colorScheme?: string | string[];
|
|
46
|
+
/**
|
|
47
|
+
* Starting angle offset in degrees
|
|
48
|
+
* @default 0
|
|
49
|
+
*/
|
|
50
|
+
startAngle?: number;
|
|
51
|
+
/**
|
|
52
|
+
* Padding between slices (in pixels)
|
|
53
|
+
* @default 2
|
|
54
|
+
*/
|
|
55
|
+
slicePadding?: number;
|
|
56
|
+
/**
|
|
57
|
+
* Enable hover annotations
|
|
58
|
+
* @default true
|
|
59
|
+
*/
|
|
60
|
+
enableHover?: boolean;
|
|
61
|
+
/**
|
|
62
|
+
* Show legend
|
|
63
|
+
* @default true
|
|
64
|
+
*/
|
|
65
|
+
showLegend?: boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Tooltip configuration
|
|
68
|
+
*/
|
|
69
|
+
tooltip?: TooltipProp;
|
|
70
|
+
/**
|
|
71
|
+
* Additional OrdinalFrame props for advanced customization
|
|
72
|
+
* For full control, consider using OrdinalFrame directly
|
|
73
|
+
*/
|
|
74
|
+
frameProps?: Partial<Omit<OrdinalFrameProps, "data" | "size">>;
|
|
75
|
+
}
|
|
76
|
+
/**
|
|
77
|
+
* DonutChart - Visualize proportions as slices of a ring.
|
|
78
|
+
*
|
|
79
|
+
* A simplified wrapper around OrdinalFrame with radial projection and
|
|
80
|
+
* an inner radius to create a donut shape.
|
|
81
|
+
*
|
|
82
|
+
* @example
|
|
83
|
+
* ```tsx
|
|
84
|
+
* <DonutChart
|
|
85
|
+
* data={[
|
|
86
|
+
* {category: 'A', value: 30},
|
|
87
|
+
* {category: 'B', value: 50},
|
|
88
|
+
* {category: 'C', value: 20}
|
|
89
|
+
* ]}
|
|
90
|
+
* innerRadius={80}
|
|
91
|
+
* centerContent={<span>Total: 100</span>}
|
|
92
|
+
* />
|
|
93
|
+
* ```
|
|
94
|
+
*/
|
|
95
|
+
export declare function DonutChart<TDatum extends Record<string, any> = Record<string, any>>(props: DonutChartProps<TDatum>): React.JSX.Element;
|