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,127 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { XYFrameProps } from "../../types/xyTypes";
|
|
3
|
+
import type { BaseChartProps, AxisConfig, ChartAccessor } from "../shared/types";
|
|
4
|
+
import { type TooltipProp } from "../../Tooltip/Tooltip";
|
|
5
|
+
/**
|
|
6
|
+
* AreaChart component props
|
|
7
|
+
*/
|
|
8
|
+
export interface AreaChartProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps, AxisConfig {
|
|
9
|
+
/**
|
|
10
|
+
* Array of data points, grouped by category.
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* // Multiple areas with grouping
|
|
14
|
+
* [{x: 1, y: 10, category: 'A'}, {x: 2, y: 20, category: 'A'}, {x: 1, y: 15, category: 'B'}]
|
|
15
|
+
* ```
|
|
16
|
+
*/
|
|
17
|
+
data: TDatum[];
|
|
18
|
+
/**
|
|
19
|
+
* Field name or function to access x values
|
|
20
|
+
* @default "x"
|
|
21
|
+
*/
|
|
22
|
+
xAccessor?: ChartAccessor<TDatum, number>;
|
|
23
|
+
/**
|
|
24
|
+
* Field name or function to access y values
|
|
25
|
+
* @default "y"
|
|
26
|
+
*/
|
|
27
|
+
yAccessor?: ChartAccessor<TDatum, number>;
|
|
28
|
+
/**
|
|
29
|
+
* Field name or function to group data into multiple areas
|
|
30
|
+
* @example
|
|
31
|
+
* ```ts
|
|
32
|
+
* areaBy="category" // Group by category field
|
|
33
|
+
* areaBy={d => d.group} // Use function
|
|
34
|
+
* ```
|
|
35
|
+
*/
|
|
36
|
+
areaBy?: ChartAccessor<TDatum, string>;
|
|
37
|
+
/**
|
|
38
|
+
* Field name in area objects that contains coordinate arrays
|
|
39
|
+
* Used when data is in area objects format
|
|
40
|
+
* @default "coordinates"
|
|
41
|
+
*/
|
|
42
|
+
lineDataAccessor?: string;
|
|
43
|
+
/**
|
|
44
|
+
* Field name or function to determine area color
|
|
45
|
+
* @example
|
|
46
|
+
* ```ts
|
|
47
|
+
* colorBy="category"
|
|
48
|
+
* colorBy={d => d.label}
|
|
49
|
+
* ```
|
|
50
|
+
*/
|
|
51
|
+
colorBy?: ChartAccessor<TDatum, string>;
|
|
52
|
+
/**
|
|
53
|
+
* Color scheme for categorical data or custom colors array
|
|
54
|
+
* @default "category10"
|
|
55
|
+
*/
|
|
56
|
+
colorScheme?: string | string[];
|
|
57
|
+
/**
|
|
58
|
+
* Curve interpolation type
|
|
59
|
+
* @default "monotoneX"
|
|
60
|
+
*/
|
|
61
|
+
curve?: "linear" | "monotoneX" | "monotoneY" | "step" | "stepAfter" | "stepBefore" | "basis" | "cardinal" | "catmullRom";
|
|
62
|
+
/**
|
|
63
|
+
* Area opacity
|
|
64
|
+
* @default 0.7
|
|
65
|
+
*/
|
|
66
|
+
areaOpacity?: number;
|
|
67
|
+
/**
|
|
68
|
+
* Show line on top of area
|
|
69
|
+
* @default true
|
|
70
|
+
*/
|
|
71
|
+
showLine?: boolean;
|
|
72
|
+
/**
|
|
73
|
+
* Line stroke width when showLine is true
|
|
74
|
+
* @default 2
|
|
75
|
+
*/
|
|
76
|
+
lineWidth?: number;
|
|
77
|
+
/**
|
|
78
|
+
* Enable hover annotations
|
|
79
|
+
* @default true
|
|
80
|
+
*/
|
|
81
|
+
enableHover?: boolean;
|
|
82
|
+
/**
|
|
83
|
+
* Show grid lines
|
|
84
|
+
* @default false
|
|
85
|
+
*/
|
|
86
|
+
showGrid?: boolean;
|
|
87
|
+
/**
|
|
88
|
+
* Show legend for multiple areas
|
|
89
|
+
* @default true (when multiple areas)
|
|
90
|
+
*/
|
|
91
|
+
showLegend?: boolean;
|
|
92
|
+
/**
|
|
93
|
+
* Tooltip configuration
|
|
94
|
+
*/
|
|
95
|
+
tooltip?: TooltipProp;
|
|
96
|
+
/**
|
|
97
|
+
* Additional XYFrame props for advanced customization
|
|
98
|
+
* For full control, consider using XYFrame directly
|
|
99
|
+
* @see https://semiotic.nteract.io/guides/xy-frame
|
|
100
|
+
*/
|
|
101
|
+
frameProps?: Partial<Omit<XYFrameProps, "lines" | "size">>;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* AreaChart - Visualize quantities over continuous intervals with overlapping filled areas
|
|
105
|
+
*
|
|
106
|
+
* Each series fills from its line down to the baseline. Multiple series overlap
|
|
107
|
+
* with transparency so all shapes remain visible.
|
|
108
|
+
*
|
|
109
|
+
* For stacked areas use {@link StackedAreaChart}.
|
|
110
|
+
*
|
|
111
|
+
* @example
|
|
112
|
+
* ```tsx
|
|
113
|
+
* <AreaChart
|
|
114
|
+
* data={[
|
|
115
|
+
* {x: 1, y: 10, category: 'A'},
|
|
116
|
+
* {x: 2, y: 20, category: 'A'},
|
|
117
|
+
* {x: 1, y: 15, category: 'B'},
|
|
118
|
+
* {x: 2, y: 25, category: 'B'}
|
|
119
|
+
* ]}
|
|
120
|
+
* areaBy="category"
|
|
121
|
+
* colorBy="category"
|
|
122
|
+
* xLabel="Time"
|
|
123
|
+
* yLabel="Value"
|
|
124
|
+
* />
|
|
125
|
+
* ```
|
|
126
|
+
*/
|
|
127
|
+
export declare function AreaChart<TDatum extends Record<string, any> = Record<string, any>>(props: AreaChartProps<TDatum>): React.JSX.Element;
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { XYFrameProps } from "../../types/xyTypes";
|
|
3
|
+
import type { BaseChartProps, AxisConfig, ChartAccessor } from "../shared/types";
|
|
4
|
+
import { type TooltipProp } from "../../Tooltip/Tooltip";
|
|
5
|
+
/**
|
|
6
|
+
* BubbleChart component props
|
|
7
|
+
*/
|
|
8
|
+
export interface BubbleChartProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps, AxisConfig {
|
|
9
|
+
/**
|
|
10
|
+
* Array of data points. Each point should have x, y, and size properties.
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* [{x: 1, y: 10, size: 50, category: 'A'}, {x: 2, y: 20, size: 30, category: 'B'}]
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
data: TDatum[];
|
|
17
|
+
/**
|
|
18
|
+
* Field name or function to access x values
|
|
19
|
+
* @default "x"
|
|
20
|
+
*/
|
|
21
|
+
xAccessor?: ChartAccessor<TDatum, number>;
|
|
22
|
+
/**
|
|
23
|
+
* Field name or function to access y values
|
|
24
|
+
* @default "y"
|
|
25
|
+
*/
|
|
26
|
+
yAccessor?: ChartAccessor<TDatum, number>;
|
|
27
|
+
/**
|
|
28
|
+
* Field name or function to determine bubble size (required)
|
|
29
|
+
* @example
|
|
30
|
+
* ```ts
|
|
31
|
+
* sizeBy="population"
|
|
32
|
+
* sizeBy={d => Math.sqrt(d.value)}
|
|
33
|
+
* ```
|
|
34
|
+
*/
|
|
35
|
+
sizeBy: ChartAccessor<TDatum, number>;
|
|
36
|
+
/**
|
|
37
|
+
* Min and max radius for bubbles
|
|
38
|
+
* @default [5, 40]
|
|
39
|
+
*/
|
|
40
|
+
sizeRange?: [number, number];
|
|
41
|
+
/**
|
|
42
|
+
* Field name or function to determine bubble color
|
|
43
|
+
* @example
|
|
44
|
+
* ```ts
|
|
45
|
+
* colorBy="category"
|
|
46
|
+
* colorBy={d => d.value > 10 ? 'red' : 'blue'}
|
|
47
|
+
* ```
|
|
48
|
+
*/
|
|
49
|
+
colorBy?: ChartAccessor<TDatum, string>;
|
|
50
|
+
/**
|
|
51
|
+
* Color scheme for categorical data or custom colors array
|
|
52
|
+
* @default "category10"
|
|
53
|
+
*/
|
|
54
|
+
colorScheme?: string | string[];
|
|
55
|
+
/**
|
|
56
|
+
* Bubble opacity
|
|
57
|
+
* @default 0.6
|
|
58
|
+
*/
|
|
59
|
+
bubbleOpacity?: number;
|
|
60
|
+
/**
|
|
61
|
+
* Bubble stroke width
|
|
62
|
+
* @default 1
|
|
63
|
+
*/
|
|
64
|
+
bubbleStrokeWidth?: number;
|
|
65
|
+
/**
|
|
66
|
+
* Bubble stroke color
|
|
67
|
+
* @default "white"
|
|
68
|
+
*/
|
|
69
|
+
bubbleStrokeColor?: string;
|
|
70
|
+
/**
|
|
71
|
+
* Enable hover annotations
|
|
72
|
+
* @default true
|
|
73
|
+
*/
|
|
74
|
+
enableHover?: boolean;
|
|
75
|
+
/**
|
|
76
|
+
* Show grid lines
|
|
77
|
+
* @default false
|
|
78
|
+
*/
|
|
79
|
+
showGrid?: boolean;
|
|
80
|
+
/**
|
|
81
|
+
* Show legend
|
|
82
|
+
* @default true (when colorBy is specified)
|
|
83
|
+
*/
|
|
84
|
+
showLegend?: boolean;
|
|
85
|
+
/**
|
|
86
|
+
* Tooltip configuration
|
|
87
|
+
*/
|
|
88
|
+
tooltip?: TooltipProp;
|
|
89
|
+
/**
|
|
90
|
+
* Additional XYFrame props for advanced customization
|
|
91
|
+
* For full control, consider using XYFrame directly
|
|
92
|
+
* @see https://semiotic.nteract.io/guides/xy-frame
|
|
93
|
+
*/
|
|
94
|
+
frameProps?: Partial<Omit<XYFrameProps, "points" | "size">>;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* BubbleChart - Visualize three dimensions of data using x, y, and size
|
|
98
|
+
*
|
|
99
|
+
* A simplified wrapper around XYFrame for creating bubble charts. Perfect for
|
|
100
|
+
* showing relationships between three continuous variables or comparing
|
|
101
|
+
* magnitudes across categories.
|
|
102
|
+
*
|
|
103
|
+
* @example
|
|
104
|
+
* ```tsx
|
|
105
|
+
* // Simple bubble chart
|
|
106
|
+
* <BubbleChart
|
|
107
|
+
* data={[
|
|
108
|
+
* {x: 1, y: 10, size: 50, name: 'A'},
|
|
109
|
+
* {x: 2, y: 20, size: 30, name: 'B'},
|
|
110
|
+
* {x: 3, y: 15, size: 70, name: 'C'}
|
|
111
|
+
* ]}
|
|
112
|
+
* sizeBy="size"
|
|
113
|
+
* xLabel="Time"
|
|
114
|
+
* yLabel="Value"
|
|
115
|
+
* />
|
|
116
|
+
* ```
|
|
117
|
+
*
|
|
118
|
+
* @example
|
|
119
|
+
* ```tsx
|
|
120
|
+
* // With color encoding
|
|
121
|
+
* <BubbleChart
|
|
122
|
+
* data={data}
|
|
123
|
+
* sizeBy="population"
|
|
124
|
+
* colorBy="continent"
|
|
125
|
+
* sizeRange={[5, 50]}
|
|
126
|
+
* bubbleOpacity={0.7}
|
|
127
|
+
* xLabel="GDP per Capita"
|
|
128
|
+
* yLabel="Life Expectancy"
|
|
129
|
+
* />
|
|
130
|
+
* ```
|
|
131
|
+
*
|
|
132
|
+
* @example
|
|
133
|
+
* ```tsx
|
|
134
|
+
* // Advanced: Override XYFrame props
|
|
135
|
+
* <BubbleChart
|
|
136
|
+
* data={data}
|
|
137
|
+
* sizeBy="value"
|
|
138
|
+
* frameProps={{
|
|
139
|
+
* customPointMark: ({ d }) => <circle r={d.r} fill="gold" />
|
|
140
|
+
* }}
|
|
141
|
+
* />
|
|
142
|
+
* ```
|
|
143
|
+
*
|
|
144
|
+
* @remarks
|
|
145
|
+
* This component wraps {@link XYFrame} with sensible defaults for bubble charts.
|
|
146
|
+
* For more advanced features like custom marks, annotations, or complex interactions,
|
|
147
|
+
* use XYFrame directly.
|
|
148
|
+
*
|
|
149
|
+
* **Breadcrumb to advanced usage:**
|
|
150
|
+
* - Use the `frameProps` prop to pass any XYFrame prop
|
|
151
|
+
* - See XYFrame documentation: https://semiotic.nteract.io/guides/xy-frame
|
|
152
|
+
* - All XYFrame props are available via `frameProps`
|
|
153
|
+
*
|
|
154
|
+
* @param props - BubbleChart configuration
|
|
155
|
+
* @returns Rendered bubble chart
|
|
156
|
+
*/
|
|
157
|
+
export declare function BubbleChart<TDatum extends Record<string, any> = Record<string, any>>(props: BubbleChartProps<TDatum>): React.JSX.Element;
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { XYFrameProps } from "../../types/xyTypes";
|
|
3
|
+
import type { BaseChartProps, ChartAccessor } from "../shared/types";
|
|
4
|
+
import { type TooltipProp } from "../../Tooltip/Tooltip";
|
|
5
|
+
/**
|
|
6
|
+
* Heatmap component props
|
|
7
|
+
*/
|
|
8
|
+
export interface HeatmapProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps {
|
|
9
|
+
/**
|
|
10
|
+
* Array of data points with x, y, and value properties.
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* [{x: 1, y: 1, value: 10}, {x: 1, y: 2, value: 20}, {x: 2, y: 1, value: 15}]
|
|
14
|
+
* ```
|
|
15
|
+
*/
|
|
16
|
+
data: TDatum[];
|
|
17
|
+
/**
|
|
18
|
+
* Field name or function to access x values
|
|
19
|
+
* @default "x"
|
|
20
|
+
*/
|
|
21
|
+
xAccessor?: ChartAccessor<TDatum, number>;
|
|
22
|
+
/**
|
|
23
|
+
* Field name or function to access y values
|
|
24
|
+
* @default "y"
|
|
25
|
+
*/
|
|
26
|
+
yAccessor?: ChartAccessor<TDatum, number>;
|
|
27
|
+
/**
|
|
28
|
+
* Field name or function to access cell values
|
|
29
|
+
* @default "value"
|
|
30
|
+
*/
|
|
31
|
+
valueAccessor?: ChartAccessor<TDatum, number>;
|
|
32
|
+
/**
|
|
33
|
+
* Label for the x-axis
|
|
34
|
+
*/
|
|
35
|
+
xLabel?: string;
|
|
36
|
+
/**
|
|
37
|
+
* Label for the y-axis
|
|
38
|
+
*/
|
|
39
|
+
yLabel?: string;
|
|
40
|
+
/**
|
|
41
|
+
* Format function for x-axis tick labels
|
|
42
|
+
*/
|
|
43
|
+
xFormat?: (d: any) => string;
|
|
44
|
+
/**
|
|
45
|
+
* Format function for y-axis tick labels
|
|
46
|
+
*/
|
|
47
|
+
yFormat?: (d: any) => string;
|
|
48
|
+
/**
|
|
49
|
+
* Color scheme for the heatmap
|
|
50
|
+
* @default "blues"
|
|
51
|
+
*/
|
|
52
|
+
colorScheme?: "blues" | "reds" | "greens" | "viridis" | "custom";
|
|
53
|
+
/**
|
|
54
|
+
* Custom color scale (used when colorScheme is "custom")
|
|
55
|
+
* @example
|
|
56
|
+
* ```ts
|
|
57
|
+
* customColorScale={scaleSequential(interpolatePlasma).domain([0, 100])}
|
|
58
|
+
* ```
|
|
59
|
+
*/
|
|
60
|
+
customColorScale?: any;
|
|
61
|
+
/**
|
|
62
|
+
* Show values in cells
|
|
63
|
+
* @default false
|
|
64
|
+
*/
|
|
65
|
+
showValues?: boolean;
|
|
66
|
+
/**
|
|
67
|
+
* Format function for cell value labels
|
|
68
|
+
*/
|
|
69
|
+
valueFormat?: (d: number) => string;
|
|
70
|
+
/**
|
|
71
|
+
* Cell border color
|
|
72
|
+
* @default "#fff"
|
|
73
|
+
*/
|
|
74
|
+
cellBorderColor?: string;
|
|
75
|
+
/**
|
|
76
|
+
* Cell border width
|
|
77
|
+
* @default 1
|
|
78
|
+
*/
|
|
79
|
+
cellBorderWidth?: number;
|
|
80
|
+
/**
|
|
81
|
+
* Enable hover annotations
|
|
82
|
+
* @default true
|
|
83
|
+
*/
|
|
84
|
+
enableHover?: boolean;
|
|
85
|
+
/**
|
|
86
|
+
* Tooltip configuration
|
|
87
|
+
*/
|
|
88
|
+
tooltip?: TooltipProp;
|
|
89
|
+
/**
|
|
90
|
+
* Additional XYFrame props for advanced customization
|
|
91
|
+
* For full control, consider using XYFrame directly
|
|
92
|
+
* @see https://semiotic.nteract.io/guides/xy-frame
|
|
93
|
+
*/
|
|
94
|
+
frameProps?: Partial<Omit<XYFrameProps, "summaries" | "size">>;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Heatmap - Visualize matrix data with color-encoded cells
|
|
98
|
+
*
|
|
99
|
+
* A simplified wrapper around XYFrame for creating heatmaps. Perfect for
|
|
100
|
+
* showing patterns, correlations, and distributions in 2D data.
|
|
101
|
+
*
|
|
102
|
+
* @example
|
|
103
|
+
* ```tsx
|
|
104
|
+
* // Simple heatmap
|
|
105
|
+
* <Heatmap
|
|
106
|
+
* data={[
|
|
107
|
+
* {x: 1, y: 1, value: 10},
|
|
108
|
+
* {x: 1, y: 2, value: 20},
|
|
109
|
+
* {x: 2, y: 1, value: 15},
|
|
110
|
+
* {x: 2, y: 2, value: 25}
|
|
111
|
+
* ]}
|
|
112
|
+
* xLabel="Time"
|
|
113
|
+
* yLabel="Category"
|
|
114
|
+
* />
|
|
115
|
+
* ```
|
|
116
|
+
*
|
|
117
|
+
* @example
|
|
118
|
+
* ```tsx
|
|
119
|
+
* // With custom color scheme and value labels
|
|
120
|
+
* <Heatmap
|
|
121
|
+
* data={data}
|
|
122
|
+
* colorScheme="viridis"
|
|
123
|
+
* showValues={true}
|
|
124
|
+
* valueFormat={d => d.toFixed(1)}
|
|
125
|
+
* />
|
|
126
|
+
* ```
|
|
127
|
+
*
|
|
128
|
+
* @example
|
|
129
|
+
* ```tsx
|
|
130
|
+
* // Advanced: Custom color scale
|
|
131
|
+
* <Heatmap
|
|
132
|
+
* data={data}
|
|
133
|
+
* colorScheme="custom"
|
|
134
|
+
* customColorScale={
|
|
135
|
+
* scaleSequential(interpolatePlasma).domain([0, 100])
|
|
136
|
+
* }
|
|
137
|
+
* />
|
|
138
|
+
* ```
|
|
139
|
+
*
|
|
140
|
+
* @remarks
|
|
141
|
+
* This component wraps {@link XYFrame} with sensible defaults for heatmaps.
|
|
142
|
+
* For more advanced features like hexbins, contours, or custom summaries,
|
|
143
|
+
* use XYFrame directly.
|
|
144
|
+
*
|
|
145
|
+
* **Breadcrumb to advanced usage:**
|
|
146
|
+
* - Use the `frameProps` prop to pass any XYFrame prop
|
|
147
|
+
* - See XYFrame documentation: https://semiotic.nteract.io/guides/xy-frame
|
|
148
|
+
* - All XYFrame props are available via `frameProps`
|
|
149
|
+
*
|
|
150
|
+
* @param props - Heatmap configuration
|
|
151
|
+
* @returns Rendered heatmap
|
|
152
|
+
*/
|
|
153
|
+
export declare function Heatmap<TDatum extends Record<string, any> = Record<string, any>>(props: HeatmapProps<TDatum>): React.JSX.Element;
|
|
@@ -0,0 +1,193 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { XYFrameProps } from "../../types/xyTypes";
|
|
3
|
+
import type { BaseChartProps, AxisConfig, ChartAccessor } from "../shared/types";
|
|
4
|
+
import { type TooltipProp } from "../../Tooltip/Tooltip";
|
|
5
|
+
/**
|
|
6
|
+
* LineChart component props
|
|
7
|
+
*/
|
|
8
|
+
export interface LineChartProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps, AxisConfig {
|
|
9
|
+
/**
|
|
10
|
+
* Array of data points or array of line objects with coordinates.
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* // Simple format (single line)
|
|
14
|
+
* [{x: 1, y: 10}, {x: 2, y: 20}]
|
|
15
|
+
*
|
|
16
|
+
* // Multiple lines with grouping
|
|
17
|
+
* [{x: 1, y: 10, series: 'A'}, {x: 2, y: 20, series: 'A'}, {x: 1, y: 15, series: 'B'}]
|
|
18
|
+
*
|
|
19
|
+
* // Line objects format
|
|
20
|
+
* [{label: 'Series A', coordinates: [{x: 1, y: 10}, {x: 2, y: 20}]}]
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
data: TDatum[];
|
|
24
|
+
/**
|
|
25
|
+
* Field name or function to access x values
|
|
26
|
+
* @default "x"
|
|
27
|
+
*/
|
|
28
|
+
xAccessor?: ChartAccessor<TDatum, number>;
|
|
29
|
+
/**
|
|
30
|
+
* Field name or function to access y values
|
|
31
|
+
* @default "y"
|
|
32
|
+
*/
|
|
33
|
+
yAccessor?: ChartAccessor<TDatum, number>;
|
|
34
|
+
/**
|
|
35
|
+
* Field name or function to group data into multiple lines
|
|
36
|
+
* @example
|
|
37
|
+
* ```ts
|
|
38
|
+
* lineBy="series" // Group by series field
|
|
39
|
+
* lineBy={d => d.category} // Use function
|
|
40
|
+
* ```
|
|
41
|
+
*/
|
|
42
|
+
lineBy?: ChartAccessor<TDatum, string>;
|
|
43
|
+
/**
|
|
44
|
+
* Field name in line objects that contains coordinate arrays
|
|
45
|
+
* Used when data is in line objects format
|
|
46
|
+
* @default "coordinates"
|
|
47
|
+
*/
|
|
48
|
+
lineDataAccessor?: string;
|
|
49
|
+
/**
|
|
50
|
+
* Field name or function to determine line color
|
|
51
|
+
* @example
|
|
52
|
+
* ```ts
|
|
53
|
+
* colorBy="series"
|
|
54
|
+
* colorBy={d => d.label}
|
|
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
|
+
* Curve interpolation type
|
|
65
|
+
* @default "linear"
|
|
66
|
+
*/
|
|
67
|
+
curve?: "linear" | "monotoneX" | "monotoneY" | "step" | "stepAfter" | "stepBefore" | "basis" | "cardinal" | "catmullRom";
|
|
68
|
+
/**
|
|
69
|
+
* Show points on the line
|
|
70
|
+
* @default false
|
|
71
|
+
*/
|
|
72
|
+
showPoints?: boolean;
|
|
73
|
+
/**
|
|
74
|
+
* Point radius when showPoints is true
|
|
75
|
+
* @default 3
|
|
76
|
+
*/
|
|
77
|
+
pointRadius?: number;
|
|
78
|
+
/**
|
|
79
|
+
* Fill area under the line
|
|
80
|
+
* @default false
|
|
81
|
+
*/
|
|
82
|
+
fillArea?: boolean;
|
|
83
|
+
/**
|
|
84
|
+
* Area opacity when fillArea is true
|
|
85
|
+
* @default 0.3
|
|
86
|
+
*/
|
|
87
|
+
areaOpacity?: number;
|
|
88
|
+
/**
|
|
89
|
+
* Line stroke width
|
|
90
|
+
* @default 2
|
|
91
|
+
*/
|
|
92
|
+
lineWidth?: number;
|
|
93
|
+
/**
|
|
94
|
+
* Enable hover annotations
|
|
95
|
+
* @default true
|
|
96
|
+
*/
|
|
97
|
+
enableHover?: boolean;
|
|
98
|
+
/**
|
|
99
|
+
* Show grid lines
|
|
100
|
+
* @default false
|
|
101
|
+
*/
|
|
102
|
+
showGrid?: boolean;
|
|
103
|
+
/**
|
|
104
|
+
* Show legend for multiple lines
|
|
105
|
+
* @default true (when multiple lines)
|
|
106
|
+
*/
|
|
107
|
+
showLegend?: boolean;
|
|
108
|
+
/**
|
|
109
|
+
* Tooltip configuration
|
|
110
|
+
*/
|
|
111
|
+
tooltip?: TooltipProp;
|
|
112
|
+
/**
|
|
113
|
+
* Additional XYFrame props for advanced customization
|
|
114
|
+
* For full control, consider using XYFrame directly
|
|
115
|
+
* @see https://semiotic.nteract.io/guides/xy-frame
|
|
116
|
+
*/
|
|
117
|
+
frameProps?: Partial<Omit<XYFrameProps, "lines" | "size">>;
|
|
118
|
+
}
|
|
119
|
+
/**
|
|
120
|
+
* LineChart - Visualize trends and time series data with lines
|
|
121
|
+
*
|
|
122
|
+
* A simplified wrapper around XYFrame for creating line charts. Perfect for
|
|
123
|
+
* showing trends, comparisons, and temporal patterns in your data.
|
|
124
|
+
*
|
|
125
|
+
* @example
|
|
126
|
+
* ```tsx
|
|
127
|
+
* // Simple line chart
|
|
128
|
+
* <LineChart
|
|
129
|
+
* data={[
|
|
130
|
+
* {x: 1, y: 10},
|
|
131
|
+
* {x: 2, y: 20},
|
|
132
|
+
* {x: 3, y: 15}
|
|
133
|
+
* ]}
|
|
134
|
+
* xLabel="Time"
|
|
135
|
+
* yLabel="Value"
|
|
136
|
+
* />
|
|
137
|
+
* ```
|
|
138
|
+
*
|
|
139
|
+
* @example
|
|
140
|
+
* ```tsx
|
|
141
|
+
* // Multiple lines with grouping
|
|
142
|
+
* <LineChart
|
|
143
|
+
* data={[
|
|
144
|
+
* {x: 1, y: 10, series: 'A'},
|
|
145
|
+
* {x: 2, y: 20, series: 'A'},
|
|
146
|
+
* {x: 1, y: 15, series: 'B'},
|
|
147
|
+
* {x: 2, y: 25, series: 'B'}
|
|
148
|
+
* ]}
|
|
149
|
+
* lineBy="series"
|
|
150
|
+
* colorBy="series"
|
|
151
|
+
* xLabel="Time"
|
|
152
|
+
* yLabel="Value"
|
|
153
|
+
* />
|
|
154
|
+
* ```
|
|
155
|
+
*
|
|
156
|
+
* @example
|
|
157
|
+
* ```tsx
|
|
158
|
+
* // Area chart with custom curve
|
|
159
|
+
* <LineChart
|
|
160
|
+
* data={data}
|
|
161
|
+
* curve="monotoneX"
|
|
162
|
+
* fillArea={true}
|
|
163
|
+
* areaOpacity={0.3}
|
|
164
|
+
* showPoints={true}
|
|
165
|
+
* />
|
|
166
|
+
* ```
|
|
167
|
+
*
|
|
168
|
+
* @example
|
|
169
|
+
* ```tsx
|
|
170
|
+
* // Advanced: Override XYFrame props
|
|
171
|
+
* <LineChart
|
|
172
|
+
* data={data}
|
|
173
|
+
* frameProps={{
|
|
174
|
+
* lineType: { type: "line", interpolator: d3.curveCardinal },
|
|
175
|
+
* customLineMark: ({ d }) => <path stroke="red" />
|
|
176
|
+
* }}
|
|
177
|
+
* />
|
|
178
|
+
* ```
|
|
179
|
+
*
|
|
180
|
+
* @remarks
|
|
181
|
+
* This component wraps {@link XYFrame} with sensible defaults for line charts.
|
|
182
|
+
* For more advanced features like custom marks, annotations, or complex interactions,
|
|
183
|
+
* use XYFrame directly.
|
|
184
|
+
*
|
|
185
|
+
* **Breadcrumb to advanced usage:**
|
|
186
|
+
* - Use the `frameProps` prop to pass any XYFrame prop
|
|
187
|
+
* - See XYFrame documentation: https://semiotic.nteract.io/guides/xy-frame
|
|
188
|
+
* - All XYFrame props are available via `frameProps`
|
|
189
|
+
*
|
|
190
|
+
* @param props - LineChart configuration
|
|
191
|
+
* @returns Rendered line chart
|
|
192
|
+
*/
|
|
193
|
+
export declare function LineChart<TDatum extends Record<string, any> = Record<string, any>>(props: LineChartProps<TDatum>): React.JSX.Element;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
import * as React from "react";
|
|
2
|
+
import type { XYFrameProps } from "../../types/xyTypes";
|
|
3
|
+
import type { BaseChartProps, AxisConfig, ChartAccessor } from "../shared/types";
|
|
4
|
+
import { type TooltipProp } from "../../Tooltip/Tooltip";
|
|
5
|
+
/**
|
|
6
|
+
* Scatterplot component props
|
|
7
|
+
*/
|
|
8
|
+
export interface ScatterplotProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps, AxisConfig {
|
|
9
|
+
/** Array of data points. Each point should have x and y properties. */
|
|
10
|
+
data: TDatum[];
|
|
11
|
+
/** Field name or function to access x values @default "x" */
|
|
12
|
+
xAccessor?: ChartAccessor<TDatum, number>;
|
|
13
|
+
/** Field name or function to access y values @default "y" */
|
|
14
|
+
yAccessor?: ChartAccessor<TDatum, number>;
|
|
15
|
+
/** Field name or function to determine point color */
|
|
16
|
+
colorBy?: ChartAccessor<TDatum, string>;
|
|
17
|
+
/** Color scheme for categorical data or custom colors array @default "category10" */
|
|
18
|
+
colorScheme?: string | string[];
|
|
19
|
+
/** Field name or function to determine point size */
|
|
20
|
+
sizeBy?: ChartAccessor<TDatum, number>;
|
|
21
|
+
/** Min and max radius for points @default [3, 15] */
|
|
22
|
+
sizeRange?: [number, number];
|
|
23
|
+
/** Default point radius when sizeBy is not specified @default 5 */
|
|
24
|
+
pointRadius?: number;
|
|
25
|
+
/** Point opacity @default 0.8 */
|
|
26
|
+
pointOpacity?: number;
|
|
27
|
+
/** Enable hover annotations @default true */
|
|
28
|
+
enableHover?: boolean;
|
|
29
|
+
/** Show grid lines @default false */
|
|
30
|
+
showGrid?: boolean;
|
|
31
|
+
/** Show legend @default true (when colorBy is specified) */
|
|
32
|
+
showLegend?: boolean;
|
|
33
|
+
/** Tooltip configuration */
|
|
34
|
+
tooltip?: TooltipProp;
|
|
35
|
+
/** Additional XYFrame props for advanced customization */
|
|
36
|
+
frameProps?: Partial<Omit<XYFrameProps, "points" | "size">>;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Scatterplot - Visualize relationships between two continuous variables
|
|
40
|
+
*
|
|
41
|
+
* @example
|
|
42
|
+
* ```tsx
|
|
43
|
+
* <Scatterplot
|
|
44
|
+
* data={[{x: 1, y: 10}, {x: 2, y: 20}]}
|
|
45
|
+
* xLabel="Time"
|
|
46
|
+
* yLabel="Value"
|
|
47
|
+
* />
|
|
48
|
+
* ```
|
|
49
|
+
*/
|
|
50
|
+
export declare function Scatterplot<TDatum extends Record<string, any> = Record<string, any>>(props: ScatterplotProps<TDatum>): React.JSX.Element;
|