semiotic 2.0.2 → 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/Annotation.d.ts +3 -0
- package/dist/AnnotationLayer/AnnotationLayer.d.ts +25 -0
- package/dist/Axis/Axis.d.ts +7 -0
- package/dist/Axis/axisTitle.d.ts +10 -0
- package/dist/Axis/index.d.ts +2 -0
- package/dist/Axis/summaryGraphic.d.ts +17 -0
- package/dist/Brush.d.ts +12 -0
- package/dist/DividedLine.d.ts +16 -0
- package/dist/FacetController.d.ts +12 -0
- package/dist/Frame.d.ts +2 -0
- package/dist/InteractionLayer.d.ts +3 -0
- package/dist/Legend.d.ts +3 -0
- package/dist/MiniMap.d.ts +14 -0
- package/dist/MinimapXYFrame.d.ts +10 -0
- package/dist/NetworkFrame.d.ts +8 -0
- package/dist/OrdinalFrame.d.ts +8 -0
- package/dist/ResponsiveFrame.d.ts +22 -0
- package/dist/ResponsiveMinimapXYFrame.d.ts +3 -0
- package/dist/ResponsiveNetworkFrame.d.ts +3 -0
- package/dist/ResponsiveOrdinalFrame.d.ts +3 -0
- package/dist/ResponsiveXYFrame.d.ts +3 -0
- package/dist/SparkFrame.d.ts +14 -0
- package/dist/SparkNetworkFrame.d.ts +5 -0
- package/dist/SparkOrdinalFrame.d.ts +5 -0
- package/dist/SparkXYFrame.d.ts +5 -0
- package/dist/Tooltip/Tooltip.d.ts +141 -0
- package/dist/TooltipPositioner/index.d.ts +7 -0
- package/dist/VisualizationLayer.d.ts +33 -0
- package/dist/XYFrame.d.ts +8 -0
- package/dist/annotationLayerBehavior/annotationHandling.d.ts +19 -0
- package/dist/annotationLayerBehavior/d3labeler.d.ts +9 -0
- package/dist/annotationRules/baseRules.d.ts +25 -0
- package/dist/annotationRules/networkframeRules.d.ts +48 -0
- package/dist/annotationRules/orframeRules.d.ts +103 -0
- package/dist/annotationRules/xyframeRules.d.ts +117 -0
- package/dist/batchWork.d.ts +6 -0
- 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/coordinateNames.d.ts +8 -0
- package/dist/constants/frame_props.d.ts +13 -0
- package/dist/constants/jsx.d.ts +19 -0
- package/dist/data/dataFunctions.d.ts +45 -0
- package/dist/data/multiAccessorUtils.d.ts +1 -0
- package/dist/data/networkPipelineCache.d.ts +27 -0
- package/dist/data/ordinalPipelineCache.d.ts +33 -0
- package/dist/data/unflowedFunctions.d.ts +1 -0
- package/dist/data/xyPipelineCache.d.ts +35 -0
- package/dist/generic_utilities/functions.d.ts +1 -0
- package/dist/index.d.ts +133 -0
- package/dist/interactionLayerBehavior/InteractionCanvas.d.ts +20 -0
- 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 +13 -0
- 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 +111 -0
- package/dist/processing/networkDefaults.d.ts +36 -0
- package/dist/processing/networkLayoutHelpers.d.ts +54 -0
- package/dist/processing/ordinal.d.ts +102 -0
- 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 +140 -0
- 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 +51 -0
- package/dist/semiotic.js +18723 -12996
- package/dist/semiotic.js.map +1 -0
- package/dist/semiotic.min.js +1 -0
- package/dist/semiotic.module.js +18666 -12965
- 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/store/TooltipStore.d.ts +2 -0
- package/dist/store/createStore.d.ts +1 -0
- package/dist/svg/SvgHelper.d.ts +33 -0
- package/dist/svg/areaDrawing.d.ts +21 -0
- 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/ckmeans.d.ts +69 -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 +108 -0
- package/dist/svg/graphAlgorithms.d.ts +14 -0
- package/dist/svg/hexbinLayout.d.ts +7 -0
- package/dist/svg/lineDrawing.d.ts +99 -0
- package/dist/svg/networkDrawing.d.ts +16 -0
- package/dist/svg/nodeGenerators.d.ts +58 -0
- package/dist/svg/pieceDrawing.d.ts +12 -0
- package/dist/svg/pieceLayouts.d.ts +53 -0
- package/dist/svg/sankeyLinks.d.ts +3 -0
- package/dist/svg/summaryAxis.d.ts +6 -0
- package/dist/svg/summaryLayouts.d.ts +53 -0
- package/dist/svg/swarmLayout.d.ts +13 -0
- package/dist/types/annotationTypes.d.ts +135 -0
- package/dist/types/canvasTypes.d.ts +9 -0
- package/dist/types/generalTypes.d.ts +238 -0
- package/dist/types/interactionTypes.d.ts +72 -0
- package/dist/types/legendTypes.d.ts +20 -0
- package/dist/types/networkTypes.d.ts +175 -0
- package/dist/types/ordinalTypes.d.ts +112 -0
- package/dist/types/xyTypes.d.ts +115 -0
- package/dist/useBoundingRect.d.ts +2 -0
- package/dist/useDerivedStateFromProps.d.ts +1 -0
- package/dist/useLegacyUnmountCallback.d.ts +2 -0
- package/dist/visualizationLayerBehavior/axis.d.ts +36 -0
- package/dist/visualizationLayerBehavior/general.d.ts +80 -0
- 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 -65
|
@@ -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;
|
|
@@ -0,0 +1,128 @@
|
|
|
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
|
+
* DotPlot component props
|
|
7
|
+
*/
|
|
8
|
+
export interface DotPlotProps<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: 'Item A', value: 25},
|
|
15
|
+
* {category: 'Item B', value: 40},
|
|
16
|
+
* {category: 'Item C', value: 15}
|
|
17
|
+
* ]
|
|
18
|
+
* ```
|
|
19
|
+
*/
|
|
20
|
+
data: TDatum[];
|
|
21
|
+
/**
|
|
22
|
+
* Field name or function to access category values
|
|
23
|
+
* @default "category"
|
|
24
|
+
*/
|
|
25
|
+
categoryAccessor?: ChartAccessor<TDatum, string>;
|
|
26
|
+
/**
|
|
27
|
+
* Field name or function to access numeric values
|
|
28
|
+
* @default "value"
|
|
29
|
+
*/
|
|
30
|
+
valueAccessor?: ChartAccessor<TDatum, number>;
|
|
31
|
+
/**
|
|
32
|
+
* Chart orientation
|
|
33
|
+
* @default "horizontal"
|
|
34
|
+
*/
|
|
35
|
+
orientation?: "vertical" | "horizontal";
|
|
36
|
+
/**
|
|
37
|
+
* Label for the category axis
|
|
38
|
+
*/
|
|
39
|
+
categoryLabel?: string;
|
|
40
|
+
/**
|
|
41
|
+
* Label for the value axis
|
|
42
|
+
*/
|
|
43
|
+
valueLabel?: string;
|
|
44
|
+
/**
|
|
45
|
+
* Format function for value axis tick labels
|
|
46
|
+
*/
|
|
47
|
+
valueFormat?: (d: number | string) => string;
|
|
48
|
+
/**
|
|
49
|
+
* Field name or function to determine dot color
|
|
50
|
+
* @example
|
|
51
|
+
* ```ts
|
|
52
|
+
* colorBy="type"
|
|
53
|
+
* colorBy={d => d.value > 20 ? 'high' : 'low'}
|
|
54
|
+
* ```
|
|
55
|
+
*/
|
|
56
|
+
colorBy?: ChartAccessor<TDatum, string>;
|
|
57
|
+
/**
|
|
58
|
+
* Color scheme for categorical data or custom colors array
|
|
59
|
+
* @default "category10"
|
|
60
|
+
*/
|
|
61
|
+
colorScheme?: string | string[];
|
|
62
|
+
/**
|
|
63
|
+
* Sort categories by value
|
|
64
|
+
* @default true
|
|
65
|
+
* @example
|
|
66
|
+
* ```ts
|
|
67
|
+
* sort="asc" // Ascending
|
|
68
|
+
* sort="desc" // Descending
|
|
69
|
+
* sort={true} // Descending (default)
|
|
70
|
+
* sort={(a, b) => a.value - b.value} // Custom function
|
|
71
|
+
* ```
|
|
72
|
+
*/
|
|
73
|
+
sort?: boolean | "asc" | "desc" | ((a: Record<string, any>, b: Record<string, any>) => number);
|
|
74
|
+
/**
|
|
75
|
+
* Dot radius
|
|
76
|
+
* @default 5
|
|
77
|
+
*/
|
|
78
|
+
dotRadius?: number;
|
|
79
|
+
/**
|
|
80
|
+
* Padding between categories (in pixels)
|
|
81
|
+
* @default 10
|
|
82
|
+
*/
|
|
83
|
+
categoryPadding?: number;
|
|
84
|
+
/**
|
|
85
|
+
* Enable hover annotations
|
|
86
|
+
* @default true
|
|
87
|
+
*/
|
|
88
|
+
enableHover?: boolean;
|
|
89
|
+
/**
|
|
90
|
+
* Show grid lines
|
|
91
|
+
* @default true
|
|
92
|
+
*/
|
|
93
|
+
showGrid?: boolean;
|
|
94
|
+
/**
|
|
95
|
+
* Show legend
|
|
96
|
+
* @default true (when colorBy is specified)
|
|
97
|
+
*/
|
|
98
|
+
showLegend?: boolean;
|
|
99
|
+
/**
|
|
100
|
+
* Tooltip configuration
|
|
101
|
+
*/
|
|
102
|
+
tooltip?: TooltipProp;
|
|
103
|
+
/**
|
|
104
|
+
* Additional OrdinalFrame props for advanced customization
|
|
105
|
+
* For full control, consider using OrdinalFrame directly
|
|
106
|
+
* @see https://semiotic.nteract.io/guides/ordinal-frame
|
|
107
|
+
*/
|
|
108
|
+
frameProps?: Partial<Omit<OrdinalFrameProps, "data" | "size">>;
|
|
109
|
+
}
|
|
110
|
+
/**
|
|
111
|
+
* DotPlot - Visualize categorical data with Cleveland dot plots.
|
|
112
|
+
*
|
|
113
|
+
* A simplified wrapper around OrdinalFrame for creating dot plots.
|
|
114
|
+
*
|
|
115
|
+
* @example
|
|
116
|
+
* ```tsx
|
|
117
|
+
* <DotPlot
|
|
118
|
+
* data={[
|
|
119
|
+
* {category: 'Item A', value: 25},
|
|
120
|
+
* {category: 'Item B', value: 40},
|
|
121
|
+
* {category: 'Item C', value: 15}
|
|
122
|
+
* ]}
|
|
123
|
+
* categoryLabel="Items"
|
|
124
|
+
* valueLabel="Value"
|
|
125
|
+
* />
|
|
126
|
+
* ```
|
|
127
|
+
*/
|
|
128
|
+
export declare function DotPlot<TDatum extends Record<string, any> = Record<string, any>>(props: DotPlotProps<TDatum>): React.JSX.Element;
|
|
@@ -0,0 +1,113 @@
|
|
|
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
|
+
* GroupedBarChart component props
|
|
7
|
+
*/
|
|
8
|
+
export interface GroupedBarChartProps<TDatum extends Record<string, any> = Record<string, any>> extends BaseChartProps {
|
|
9
|
+
/**
|
|
10
|
+
* Array of data points with category, group, and value.
|
|
11
|
+
* @example
|
|
12
|
+
* ```ts
|
|
13
|
+
* [
|
|
14
|
+
* {category: 'Q1', product: 'A', value: 100},
|
|
15
|
+
* {category: 'Q1', product: 'B', value: 150},
|
|
16
|
+
* {category: 'Q2', product: 'A', value: 120},
|
|
17
|
+
* {category: 'Q2', product: 'B', value: 180}
|
|
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 group values (for grouping bars side by side)
|
|
29
|
+
*/
|
|
30
|
+
groupBy: ChartAccessor<TDatum, string>;
|
|
31
|
+
/**
|
|
32
|
+
* Field name or function to access numeric values
|
|
33
|
+
* @default "value"
|
|
34
|
+
*/
|
|
35
|
+
valueAccessor?: ChartAccessor<TDatum, number>;
|
|
36
|
+
/**
|
|
37
|
+
* Chart orientation
|
|
38
|
+
* @default "vertical"
|
|
39
|
+
*/
|
|
40
|
+
orientation?: "vertical" | "horizontal";
|
|
41
|
+
/**
|
|
42
|
+
* Label for the category axis
|
|
43
|
+
*/
|
|
44
|
+
categoryLabel?: string;
|
|
45
|
+
/**
|
|
46
|
+
* Label for the value axis
|
|
47
|
+
*/
|
|
48
|
+
valueLabel?: string;
|
|
49
|
+
/**
|
|
50
|
+
* Format function for value axis tick labels
|
|
51
|
+
*/
|
|
52
|
+
valueFormat?: (d: number | string) => string;
|
|
53
|
+
/**
|
|
54
|
+
* Field name or function to determine bar color
|
|
55
|
+
* @default groupBy value
|
|
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
|
+
* Padding between bar groups (in pixels)
|
|
65
|
+
* @default 5
|
|
66
|
+
*/
|
|
67
|
+
barPadding?: number;
|
|
68
|
+
/**
|
|
69
|
+
* Enable hover annotations
|
|
70
|
+
* @default true
|
|
71
|
+
*/
|
|
72
|
+
enableHover?: boolean;
|
|
73
|
+
/**
|
|
74
|
+
* Show grid lines
|
|
75
|
+
* @default false
|
|
76
|
+
*/
|
|
77
|
+
showGrid?: boolean;
|
|
78
|
+
/**
|
|
79
|
+
* Show legend for groups
|
|
80
|
+
* @default true
|
|
81
|
+
*/
|
|
82
|
+
showLegend?: boolean;
|
|
83
|
+
/**
|
|
84
|
+
* Tooltip configuration
|
|
85
|
+
*/
|
|
86
|
+
tooltip?: TooltipProp;
|
|
87
|
+
/**
|
|
88
|
+
* Additional OrdinalFrame props for advanced customization
|
|
89
|
+
* For full control, consider using OrdinalFrame directly
|
|
90
|
+
*/
|
|
91
|
+
frameProps?: Partial<Omit<OrdinalFrameProps, "data" | "size">>;
|
|
92
|
+
}
|
|
93
|
+
/**
|
|
94
|
+
* GroupedBarChart - Visualize comparisons across categories with side-by-side bars.
|
|
95
|
+
*
|
|
96
|
+
* A simplified wrapper around OrdinalFrame using clusterbar type.
|
|
97
|
+
*
|
|
98
|
+
* @example
|
|
99
|
+
* ```tsx
|
|
100
|
+
* <GroupedBarChart
|
|
101
|
+
* data={[
|
|
102
|
+
* {category: 'Q1', product: 'A', value: 100},
|
|
103
|
+
* {category: 'Q1', product: 'B', value: 150},
|
|
104
|
+
* {category: 'Q2', product: 'A', value: 120},
|
|
105
|
+
* {category: 'Q2', product: 'B', value: 180}
|
|
106
|
+
* ]}
|
|
107
|
+
* groupBy="product"
|
|
108
|
+
* categoryLabel="Quarter"
|
|
109
|
+
* valueLabel="Sales"
|
|
110
|
+
* />
|
|
111
|
+
* ```
|
|
112
|
+
*/
|
|
113
|
+
export declare function GroupedBarChart<TDatum extends Record<string, any> = Record<string, any>>(props: GroupedBarChartProps<TDatum>): React.JSX.Element;
|
|
@@ -0,0 +1,83 @@
|
|
|
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
|
+
* PieChart component props
|
|
7
|
+
*/
|
|
8
|
+
export interface PieChartProps<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
|
+
* Field name or function to determine slice color
|
|
29
|
+
* @default categoryAccessor
|
|
30
|
+
*/
|
|
31
|
+
colorBy?: ChartAccessor<TDatum, string>;
|
|
32
|
+
/**
|
|
33
|
+
* Color scheme for categorical data or custom colors array
|
|
34
|
+
* @default "category10"
|
|
35
|
+
*/
|
|
36
|
+
colorScheme?: string | string[];
|
|
37
|
+
/**
|
|
38
|
+
* Starting angle offset in degrees
|
|
39
|
+
* @default 0
|
|
40
|
+
*/
|
|
41
|
+
startAngle?: number;
|
|
42
|
+
/**
|
|
43
|
+
* Padding between slices (in pixels)
|
|
44
|
+
* @default 2
|
|
45
|
+
*/
|
|
46
|
+
slicePadding?: number;
|
|
47
|
+
/**
|
|
48
|
+
* Enable hover annotations
|
|
49
|
+
* @default true
|
|
50
|
+
*/
|
|
51
|
+
enableHover?: boolean;
|
|
52
|
+
/**
|
|
53
|
+
* Show legend
|
|
54
|
+
* @default true
|
|
55
|
+
*/
|
|
56
|
+
showLegend?: boolean;
|
|
57
|
+
/**
|
|
58
|
+
* Tooltip configuration
|
|
59
|
+
*/
|
|
60
|
+
tooltip?: TooltipProp;
|
|
61
|
+
/**
|
|
62
|
+
* Additional OrdinalFrame props for advanced customization
|
|
63
|
+
* For full control, consider using OrdinalFrame directly
|
|
64
|
+
*/
|
|
65
|
+
frameProps?: Partial<Omit<OrdinalFrameProps, "data" | "size">>;
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* PieChart - Visualize proportions as slices of a circle.
|
|
69
|
+
*
|
|
70
|
+
* A simplified wrapper around OrdinalFrame with radial projection.
|
|
71
|
+
*
|
|
72
|
+
* @example
|
|
73
|
+
* ```tsx
|
|
74
|
+
* <PieChart
|
|
75
|
+
* data={[
|
|
76
|
+
* {category: 'A', value: 30},
|
|
77
|
+
* {category: 'B', value: 50},
|
|
78
|
+
* {category: 'C', value: 20}
|
|
79
|
+
* ]}
|
|
80
|
+
* />
|
|
81
|
+
* ```
|
|
82
|
+
*/
|
|
83
|
+
export declare function PieChart<TDatum extends Record<string, any> = Record<string, any>>(props: PieChartProps<TDatum>): React.JSX.Element;
|