@mstone6969/graph 0.0.0-stage → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1027) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +382 -2
  3. package/dist/GraphType.js +648 -0
  4. package/dist/catalog-4UP2YFNR.cjs +7 -0
  5. package/dist/catalog.js +40 -0
  6. package/dist/charts/bars/BandChart.js +103 -0
  7. package/dist/charts/bars/BarChart.js +155 -0
  8. package/dist/charts/bars/BarFrame.js +70 -0
  9. package/dist/charts/bars/BarRows.js +91 -0
  10. package/dist/charts/bars/BulletBar.js +184 -0
  11. package/dist/charts/bars/ButterflyChart.js +85 -0
  12. package/dist/charts/bars/DateBarChart.js +149 -0
  13. package/dist/charts/bars/DivergingBarChart.js +226 -0
  14. package/dist/charts/bars/DotPlot.js +167 -0
  15. package/dist/charts/bars/DumbbellChart.js +160 -0
  16. package/dist/charts/bars/ErrorBarColumn.js +147 -0
  17. package/dist/charts/bars/FacetedBarChart.js +179 -0
  18. package/dist/charts/bars/GroupedStackedBar.js +156 -0
  19. package/dist/charts/bars/HistogramBar.js +217 -0
  20. package/dist/charts/bars/IconlessRankBar.js +139 -0
  21. package/dist/charts/bars/LollipopChart.js +130 -0
  22. package/dist/charts/bars/MarimekkoBar.js +191 -0
  23. package/dist/charts/bars/MirrorChart.js +170 -0
  24. package/dist/charts/bars/ParetoBar.js +143 -0
  25. package/dist/charts/bars/PercentChangeBar.js +174 -0
  26. package/dist/charts/bars/PopulationPyramid.js +101 -0
  27. package/dist/charts/bars/ProgressBars.js +180 -0
  28. package/dist/charts/bars/RangeBarChart.js +197 -0
  29. package/dist/charts/bars/TripleBarOverlay.js +145 -0
  30. package/dist/charts/bars/WaterfallChart.js +214 -0
  31. package/dist/charts/bars/index.js +50 -0
  32. package/dist/charts/business/SparkBar.js +281 -0
  33. package/dist/charts/business/TornadoChart.js +436 -0
  34. package/dist/charts/business/index.js +5 -0
  35. package/dist/charts/comparison/BandValueChart.js +153 -0
  36. package/dist/charts/comparison/BarMeanChart.js +130 -0
  37. package/dist/charts/comparison/CycleChart.js +227 -0
  38. package/dist/charts/comparison/DeviationChart.js +137 -0
  39. package/dist/charts/comparison/EffectForestPlot.js +207 -0
  40. package/dist/charts/comparison/ErrorBarChart.js +134 -0
  41. package/dist/charts/comparison/FloatingBarChart.js +150 -0
  42. package/dist/charts/comparison/GaugeBarsComparison.js +196 -0
  43. package/dist/charts/comparison/IntervalChart.js +146 -0
  44. package/dist/charts/comparison/MeanLineChart.js +142 -0
  45. package/dist/charts/comparison/PairedBarChart.js +179 -0
  46. package/dist/charts/comparison/PanelChart.js +70 -0
  47. package/dist/charts/comparison/RadarLikeProfileChart.js +152 -0
  48. package/dist/charts/comparison/RangeDotChart.js +131 -0
  49. package/dist/charts/comparison/RankedDotChart.js +128 -0
  50. package/dist/charts/comparison/SlopeGraphRanked.js +195 -0
  51. package/dist/charts/comparison/SmallMultipleBars.js +134 -0
  52. package/dist/charts/comparison/SpanChart.js +118 -0
  53. package/dist/charts/comparison/TableLensChart.js +203 -0
  54. package/dist/charts/comparison/Tally.js +129 -0
  55. package/dist/charts/comparison/TrellisChart.js +158 -0
  56. package/dist/charts/comparison/index.js +43 -0
  57. package/dist/charts/comparison/settleMarks.js +9 -0
  58. package/dist/charts/demography/DemographyMarks.js +31 -0
  59. package/dist/charts/demography/LexisCells.js +143 -0
  60. package/dist/charts/demography/LexisDiagram.js +488 -0
  61. package/dist/charts/demography/Nomogram.js +447 -0
  62. package/dist/charts/demography/NomogramLaw.js +221 -0
  63. package/dist/charts/demography/NomogramScale.js +116 -0
  64. package/dist/charts/demography/NomogramSolver.js +73 -0
  65. package/dist/charts/demography/index.js +9 -0
  66. package/dist/charts/density/BinnedDotChart.js +109 -0
  67. package/dist/charts/density/ContourChart.js +112 -0
  68. package/dist/charts/density/ContourLabels.js +41 -0
  69. package/dist/charts/density/ConvexLayers.js +140 -0
  70. package/dist/charts/density/DelaunayMesh.js +186 -0
  71. package/dist/charts/density/DensityContourChart.js +107 -0
  72. package/dist/charts/density/DensityEnums.js +45 -0
  73. package/dist/charts/density/DensityScatter.js +118 -0
  74. package/dist/charts/density/DotDensityChart.js +250 -0
  75. package/dist/charts/density/DotLattice.js +74 -0
  76. package/dist/charts/density/FieldChart.js +58 -0
  77. package/dist/charts/density/FieldContours.js +56 -0
  78. package/dist/charts/density/FieldLevels.js +66 -0
  79. package/dist/charts/density/FilledContour.js +90 -0
  80. package/dist/charts/density/GeoFreeShadedSurface.js +108 -0
  81. package/dist/charts/density/GradientFieldChart.js +156 -0
  82. package/dist/charts/density/GridFieldChart.js +103 -0
  83. package/dist/charts/density/HexbinChart.js +128 -0
  84. package/dist/charts/density/IsolineChart.js +165 -0
  85. package/dist/charts/density/KernelDensity2D.js +193 -0
  86. package/dist/charts/density/KernelField.js +63 -0
  87. package/dist/charts/density/MarchingSquaresChart.js +203 -0
  88. package/dist/charts/density/PlaneGeometry.js +91 -0
  89. package/dist/charts/density/PointDensityChart.js +116 -0
  90. package/dist/charts/density/QuadtreeChart.js +147 -0
  91. package/dist/charts/density/RasterDensity.js +140 -0
  92. package/dist/charts/density/ShadeRaster.js +27 -0
  93. package/dist/charts/density/StippleDensity.js +121 -0
  94. package/dist/charts/density/SunflowerPlot.js +94 -0
  95. package/dist/charts/density/TileMapDensity.js +119 -0
  96. package/dist/charts/density/TwoDHistogram.js +231 -0
  97. package/dist/charts/density/VoronoiDiagram.js +124 -0
  98. package/dist/charts/density/index.js +57 -0
  99. package/dist/charts/distribution/AxisFrame.js +89 -0
  100. package/dist/charts/distribution/BackToBackHistogram.js +100 -0
  101. package/dist/charts/distribution/BarcodePlot.js +104 -0
  102. package/dist/charts/distribution/BeanPlot.js +92 -0
  103. package/dist/charts/distribution/BeeswarmChart.js +155 -0
  104. package/dist/charts/distribution/BinnedChart.js +51 -0
  105. package/dist/charts/distribution/BoxPlot.js +186 -0
  106. package/dist/charts/distribution/BoxenChart.js +96 -0
  107. package/dist/charts/distribution/CumulativeDistribution.js +122 -0
  108. package/dist/charts/distribution/DensityChart.js +143 -0
  109. package/dist/charts/distribution/DensityStrip.js +124 -0
  110. package/dist/charts/distribution/DistributionChart.js +187 -0
  111. package/dist/charts/distribution/DistributionSamples.js +11 -0
  112. package/dist/charts/distribution/DistributionStats.js +225 -0
  113. package/dist/charts/distribution/DotStackBase.js +65 -0
  114. package/dist/charts/distribution/Dotplot.js +77 -0
  115. package/dist/charts/distribution/FrequencyPolygon.js +132 -0
  116. package/dist/charts/distribution/HalfEyePlot.js +133 -0
  117. package/dist/charts/distribution/HistogramChart.js +146 -0
  118. package/dist/charts/distribution/KdeBand.js +56 -0
  119. package/dist/charts/distribution/LetterValueBase.js +51 -0
  120. package/dist/charts/distribution/LetterValuePlot.js +103 -0
  121. package/dist/charts/distribution/ParetoChart.js +248 -0
  122. package/dist/charts/distribution/QuantileDotplot.js +62 -0
  123. package/dist/charts/distribution/RaincloudChart.js +136 -0
  124. package/dist/charts/distribution/RidgeSlabs3DChart.js +169 -0
  125. package/dist/charts/distribution/RidgelineChart.js +154 -0
  126. package/dist/charts/distribution/SinaPlot.js +106 -0
  127. package/dist/charts/distribution/StemLeaf.js +249 -0
  128. package/dist/charts/distribution/StripPlot.js +113 -0
  129. package/dist/charts/distribution/Violin3DChart.js +135 -0
  130. package/dist/charts/distribution/ViolinChart.js +88 -0
  131. package/dist/charts/distribution/enums.js +299 -0
  132. package/dist/charts/distribution/index.js +53 -0
  133. package/dist/charts/earthscience/BaseflowSeparation.js +104 -0
  134. package/dist/charts/earthscience/EarthSample.js +79 -0
  135. package/dist/charts/earthscience/Hydrograph.js +442 -0
  136. package/dist/charts/earthscience/SimplexContours.js +94 -0
  137. package/dist/charts/earthscience/SimplexField.js +118 -0
  138. package/dist/charts/earthscience/TernaryContour.js +262 -0
  139. package/dist/charts/earthscience/index.js +6 -0
  140. package/dist/charts/engineering/BodePlot.js +211 -0
  141. package/dist/charts/engineering/ComplexMath.js +50 -0
  142. package/dist/charts/engineering/ConstellationDiagram.js +260 -0
  143. package/dist/charts/engineering/EngineeringChart.js +296 -0
  144. package/dist/charts/engineering/EyeDiagram.js +270 -0
  145. package/dist/charts/engineering/FatigueSNCurve.js +231 -0
  146. package/dist/charts/engineering/FrequencyResponseChart.js +46 -0
  147. package/dist/charts/engineering/GoodmanDiagram.js +250 -0
  148. package/dist/charts/engineering/HysteresisLoopChart.js +236 -0
  149. package/dist/charts/engineering/IVCurveChart.js +197 -0
  150. package/dist/charts/engineering/LoadLineChart.js +247 -0
  151. package/dist/charts/engineering/MohrCircle.js +256 -0
  152. package/dist/charts/engineering/MollierChart.js +235 -0
  153. package/dist/charts/engineering/MoodyDiagram.js +238 -0
  154. package/dist/charts/engineering/NicholsChart.js +190 -0
  155. package/dist/charts/engineering/NyquistHelix3D.js +149 -0
  156. package/dist/charts/engineering/NyquistPlot.js +201 -0
  157. package/dist/charts/engineering/PoleZeroPlot.js +124 -0
  158. package/dist/charts/engineering/PsychrometricChart.js +258 -0
  159. package/dist/charts/engineering/PumpCurveChart.js +310 -0
  160. package/dist/charts/engineering/RootLocusPlot.js +135 -0
  161. package/dist/charts/engineering/SParameterChart.js +214 -0
  162. package/dist/charts/engineering/SParameterData.js +69 -0
  163. package/dist/charts/engineering/SPlaneChart.js +71 -0
  164. package/dist/charts/engineering/SmithChart.js +259 -0
  165. package/dist/charts/engineering/SteamModel.js +154 -0
  166. package/dist/charts/engineering/StepResponseChart.js +201 -0
  167. package/dist/charts/engineering/StressStrainChart.js +243 -0
  168. package/dist/charts/engineering/ThermalProfileChart.js +255 -0
  169. package/dist/charts/engineering/TransferFunction.js +96 -0
  170. package/dist/charts/engineering/TransferSurface3D.js +208 -0
  171. package/dist/charts/engineering/index.js +53 -0
  172. package/dist/charts/financial/BollingerBands.js +123 -0
  173. package/dist/charts/financial/BrickChart.js +56 -0
  174. package/dist/charts/financial/Candlestick3D.js +157 -0
  175. package/dist/charts/financial/CandlestickChart.js +60 -0
  176. package/dist/charts/financial/DepthChart.js +255 -0
  177. package/dist/charts/financial/DrawdownChart.js +148 -0
  178. package/dist/charts/financial/DrawdownMath.js +51 -0
  179. package/dist/charts/financial/EquityBase.js +124 -0
  180. package/dist/charts/financial/EquityCurve.js +170 -0
  181. package/dist/charts/financial/FinanceInk.js +87 -0
  182. package/dist/charts/financial/FinanceMath.js +121 -0
  183. package/dist/charts/financial/HeikinAshiChart.js +58 -0
  184. package/dist/charts/financial/IchimokuCloud.js +112 -0
  185. package/dist/charts/financial/KagiChart.js +91 -0
  186. package/dist/charts/financial/LineBreakChart.js +52 -0
  187. package/dist/charts/financial/MACDChart.js +119 -0
  188. package/dist/charts/financial/MarketProfileChart.js +234 -0
  189. package/dist/charts/financial/OHLCChart.js +57 -0
  190. package/dist/charts/financial/OscillatorChart.js +56 -0
  191. package/dist/charts/financial/PayoffDiagram.js +288 -0
  192. package/dist/charts/financial/PointFigureChart.js +135 -0
  193. package/dist/charts/financial/PriceChart.js +168 -0
  194. package/dist/charts/financial/PriceMarks.js +64 -0
  195. package/dist/charts/financial/PriceTransforms.js +284 -0
  196. package/dist/charts/financial/ProjectionCone.js +134 -0
  197. package/dist/charts/financial/Quotes.js +74 -0
  198. package/dist/charts/financial/RSIChart.js +74 -0
  199. package/dist/charts/financial/RenkoChart.js +58 -0
  200. package/dist/charts/financial/ReturnCalendar.js +196 -0
  201. package/dist/charts/financial/SessionChart.js +194 -0
  202. package/dist/charts/financial/StochasticChart.js +77 -0
  203. package/dist/charts/financial/TpoProfile.js +172 -0
  204. package/dist/charts/financial/VolatilitySurface.js +197 -0
  205. package/dist/charts/financial/VolumeBars.js +160 -0
  206. package/dist/charts/financial/VolumeProfile.js +205 -0
  207. package/dist/charts/financial/YieldCurve.js +277 -0
  208. package/dist/charts/financial/financeEnums.js +269 -0
  209. package/dist/charts/financial/index.js +62 -0
  210. package/dist/charts/flow/AlluvialChart.js +129 -0
  211. package/dist/charts/flow/BumpFlow.js +212 -0
  212. package/dist/charts/flow/ChordFlow.js +262 -0
  213. package/dist/charts/flow/CircularSankey.js +239 -0
  214. package/dist/charts/flow/CohortFlow.js +333 -0
  215. package/dist/charts/flow/ConversionFlow.js +281 -0
  216. package/dist/charts/flow/DecisionTreeChart.js +332 -0
  217. package/dist/charts/flow/EnergyBalanceChart.js +287 -0
  218. package/dist/charts/flow/FlowChart.js +145 -0
  219. package/dist/charts/flow/FlowGraph.js +97 -0
  220. package/dist/charts/flow/FlowMapLess.js +229 -0
  221. package/dist/charts/flow/FlowNodeLinkChart.js +130 -0
  222. package/dist/charts/flow/FlowPathKit.js +114 -0
  223. package/dist/charts/flow/FlowSamples.js +109 -0
  224. package/dist/charts/flow/FlowTable.js +57 -0
  225. package/dist/charts/flow/LayeredLayout.js +106 -0
  226. package/dist/charts/flow/MarimekkoFlow.js +199 -0
  227. package/dist/charts/flow/MaxFlow.js +76 -0
  228. package/dist/charts/flow/NetworkFlowChart.js +204 -0
  229. package/dist/charts/flow/ParallelSets.js +120 -0
  230. package/dist/charts/flow/ProcessFlowChart.js +175 -0
  231. package/dist/charts/flow/RetentionFlow.js +242 -0
  232. package/dist/charts/flow/RibbonFlow.js +187 -0
  233. package/dist/charts/flow/SankeyChart.js +166 -0
  234. package/dist/charts/flow/StateTransitionChart.js +298 -0
  235. package/dist/charts/flow/StratumChart.js +184 -0
  236. package/dist/charts/flow/StreamFlow.js +174 -0
  237. package/dist/charts/flow/SwimFlowChart.js +191 -0
  238. package/dist/charts/flow/flowEnums.js +51 -0
  239. package/dist/charts/flow/index.js +51 -0
  240. package/dist/charts/genomics/CircosFrame.js +32 -0
  241. package/dist/charts/genomics/CircosPlot.js +319 -0
  242. package/dist/charts/genomics/GenomeAssembly.js +218 -0
  243. package/dist/charts/genomics/GenomeCytobands.js +157 -0
  244. package/dist/charts/genomics/GenomeIdeogram.js +422 -0
  245. package/dist/charts/genomics/GenomeSamples.js +478 -0
  246. package/dist/charts/genomics/GenomeStainScale.js +24 -0
  247. package/dist/charts/genomics/genomicsEnums.js +67 -0
  248. package/dist/charts/genomics/index.js +11 -0
  249. package/dist/charts/geoflows/ConnectionMap.js +137 -0
  250. package/dist/charts/geoflows/DensityFlowMap.js +184 -0
  251. package/dist/charts/geoflows/FlowGeometry.js +137 -0
  252. package/dist/charts/geoflows/FlowMap.js +104 -0
  253. package/dist/charts/geoflows/GeoBeeswarm.js +161 -0
  254. package/dist/charts/geoflows/GeoFlowChart.js +316 -0
  255. package/dist/charts/geoflows/GeoFlowFrame.js +97 -0
  256. package/dist/charts/geoflows/GeoFlowSample.js +252 -0
  257. package/dist/charts/geoflows/GeoLinkChart.js +155 -0
  258. package/dist/charts/geoflows/GeoPointChart.js +42 -0
  259. package/dist/charts/geoflows/GeoSankey.js +167 -0
  260. package/dist/charts/geoflows/GeoTrackChart.js +60 -0
  261. package/dist/charts/geoflows/GreatCircleArcMap.js +135 -0
  262. package/dist/charts/geoflows/HubSpokeMap.js +208 -0
  263. package/dist/charts/geoflows/IsochroneMap.js +198 -0
  264. package/dist/charts/geoflows/MeridianMap.js +161 -0
  265. package/dist/charts/geoflows/MigrationMap.js +228 -0
  266. package/dist/charts/geoflows/MinardFlowMap.js +158 -0
  267. package/dist/charts/geoflows/RingMap.js +173 -0
  268. package/dist/charts/geoflows/RouteMap.js +203 -0
  269. package/dist/charts/geoflows/SmallMultipleMaps.js +143 -0
  270. package/dist/charts/geoflows/SphericalVoronoi.js +125 -0
  271. package/dist/charts/geoflows/SpiderMap.js +184 -0
  272. package/dist/charts/geoflows/StormTrackMap.js +223 -0
  273. package/dist/charts/geoflows/TrajectoryMap.js +202 -0
  274. package/dist/charts/geoflows/VoronoiMap.js +123 -0
  275. package/dist/charts/geoflows/WindMap.js +293 -0
  276. package/dist/charts/geoflows/index.js +47 -0
  277. package/dist/charts/geomaps/BivariateChoropleth.js +117 -0
  278. package/dist/charts/geomaps/BubbleMap.js +115 -0
  279. package/dist/charts/geomaps/CartogramDorling.js +125 -0
  280. package/dist/charts/geomaps/ChoroplethBase.js +47 -0
  281. package/dist/charts/geomaps/ChoroplethMap.js +49 -0
  282. package/dist/charts/geomaps/ClippedGlobeMap.js +141 -0
  283. package/dist/charts/geomaps/ContourMap.js +97 -0
  284. package/dist/charts/geomaps/DotDensityMap.js +140 -0
  285. package/dist/charts/geomaps/DotMap.js +66 -0
  286. package/dist/charts/geomaps/DrillDownMap.js +132 -0
  287. package/dist/charts/geomaps/GeoChart.js +196 -0
  288. package/dist/charts/geomaps/GeoClasses.js +89 -0
  289. package/dist/charts/geomaps/GeoField.js +111 -0
  290. package/dist/charts/geomaps/GeoLand.js +29 -0
  291. package/dist/charts/geomaps/GeoLegend.js +56 -0
  292. package/dist/charts/geomaps/GeoProjection.js +159 -0
  293. package/dist/charts/geomaps/GeoSamples.js +139 -0
  294. package/dist/charts/geomaps/GeoViewport.js +148 -0
  295. package/dist/charts/geomaps/GraticuleMap.js +42 -0
  296. package/dist/charts/geomaps/HatchedChoropleth.js +110 -0
  297. package/dist/charts/geomaps/HeatMapGeo.js +114 -0
  298. package/dist/charts/geomaps/HexTileMap.js +96 -0
  299. package/dist/charts/geomaps/InsetMap.js +124 -0
  300. package/dist/charts/geomaps/LabelledMap.js +247 -0
  301. package/dist/charts/geomaps/NonContiguousCartogram.js +75 -0
  302. package/dist/charts/geomaps/PieChartMap.js +144 -0
  303. package/dist/charts/geomaps/PointDensityMap.js +109 -0
  304. package/dist/charts/geomaps/PointMap.js +93 -0
  305. package/dist/charts/geomaps/PrismLikeShadedMap.js +168 -0
  306. package/dist/charts/geomaps/ProportionalSymbolMap.js +144 -0
  307. package/dist/charts/geomaps/RegionMap.js +118 -0
  308. package/dist/charts/geomaps/RidgelineMap.js +109 -0
  309. package/dist/charts/geomaps/SlippyPointMap.js +128 -0
  310. package/dist/charts/geomaps/SlippyRegionMap.js +86 -0
  311. package/dist/charts/geomaps/SlippyView.js +134 -0
  312. package/dist/charts/geomaps/SpikeMap.js +103 -0
  313. package/dist/charts/geomaps/ThiessenMap.js +106 -0
  314. package/dist/charts/geomaps/TileGridMap.js +93 -0
  315. package/dist/charts/geomaps/TileMap.js +75 -0
  316. package/dist/charts/geomaps/TissotMap.js +90 -0
  317. package/dist/charts/geomaps/UsCountyMap.js +59 -0
  318. package/dist/charts/geomaps/UsMapBase.js +43 -0
  319. package/dist/charts/geomaps/UsStateMap.js +68 -0
  320. package/dist/charts/geomaps/index.js +74 -0
  321. package/dist/charts/hierarchy/AdjacencyChart.js +87 -0
  322. package/dist/charts/hierarchy/BalloonTree.js +136 -0
  323. package/dist/charts/hierarchy/CartesianTreeChart.js +125 -0
  324. package/dist/charts/hierarchy/CirclePackChart.js +92 -0
  325. package/dist/charts/hierarchy/CollapsibleTree.js +70 -0
  326. package/dist/charts/hierarchy/ConeTree3D.js +135 -0
  327. package/dist/charts/hierarchy/DecompositionTree.js +175 -0
  328. package/dist/charts/hierarchy/DendrogramChart.js +71 -0
  329. package/dist/charts/hierarchy/FishboneDiagram.js +138 -0
  330. package/dist/charts/hierarchy/FlameGraph.js +66 -0
  331. package/dist/charts/hierarchy/Hierarchy3DChart.js +27 -0
  332. package/dist/charts/hierarchy/HierarchyChart.js +83 -0
  333. package/dist/charts/hierarchy/IcicleChart.js +56 -0
  334. package/dist/charts/hierarchy/IcicleZoom.js +91 -0
  335. package/dist/charts/hierarchy/IndentedTreeChart.js +130 -0
  336. package/dist/charts/hierarchy/MindMap.js +143 -0
  337. package/dist/charts/hierarchy/NestedTreemap.js +121 -0
  338. package/dist/charts/hierarchy/OrgChart.js +240 -0
  339. package/dist/charts/hierarchy/PartitionChart.js +116 -0
  340. package/dist/charts/hierarchy/PhylogeneticTree.js +245 -0
  341. package/dist/charts/hierarchy/PolarFrame.js +35 -0
  342. package/dist/charts/hierarchy/RadialDendrogram.js +64 -0
  343. package/dist/charts/hierarchy/RadialTreeBase.js +95 -0
  344. package/dist/charts/hierarchy/RadialTreeChart.js +43 -0
  345. package/dist/charts/hierarchy/SpherePack3D.js +81 -0
  346. package/dist/charts/hierarchy/SunburstChart.js +126 -0
  347. package/dist/charts/hierarchy/SunburstTower3D.js +93 -0
  348. package/dist/charts/hierarchy/TidyTreeChart.js +42 -0
  349. package/dist/charts/hierarchy/TreeLinks.js +57 -0
  350. package/dist/charts/hierarchy/TreeModel.js +137 -0
  351. package/dist/charts/hierarchy/TreeNodeLinkChart.js +50 -0
  352. package/dist/charts/hierarchy/TreeSamples.js +51 -0
  353. package/dist/charts/hierarchy/TreeStyle.js +91 -0
  354. package/dist/charts/hierarchy/TreemapChart.js +104 -0
  355. package/dist/charts/hierarchy/TreemapSkyline3D.js +98 -0
  356. package/dist/charts/hierarchy/TreemapTiling.js +16 -0
  357. package/dist/charts/hierarchy/ZoomAdjacencyChart.js +18 -0
  358. package/dist/charts/hierarchy/hierarchyEnums.js +226 -0
  359. package/dist/charts/hierarchy/index.js +62 -0
  360. package/dist/charts/indicators/ActivityRings.js +139 -0
  361. package/dist/charts/indicators/BatteryChart.js +136 -0
  362. package/dist/charts/indicators/BulletChart.js +216 -0
  363. package/dist/charts/indicators/DeltaIndicator.js +254 -0
  364. package/dist/charts/indicators/DialChart.js +66 -0
  365. package/dist/charts/indicators/GaugeChart.js +170 -0
  366. package/dist/charts/indicators/HarveyBalls.js +182 -0
  367. package/dist/charts/indicators/IndicatorChart.js +293 -0
  368. package/dist/charts/indicators/IndicatorEnums.js +331 -0
  369. package/dist/charts/indicators/IndicatorSamples.js +18 -0
  370. package/dist/charts/indicators/KpiTile.js +249 -0
  371. package/dist/charts/indicators/LiquidFillGauge.js +180 -0
  372. package/dist/charts/indicators/MeterChart.js +244 -0
  373. package/dist/charts/indicators/ProgressRing.js +107 -0
  374. package/dist/charts/indicators/RadialProgress.js +114 -0
  375. package/dist/charts/indicators/RatingStars.js +257 -0
  376. package/dist/charts/indicators/ScoreCard.js +172 -0
  377. package/dist/charts/indicators/SegmentedGauge.js +133 -0
  378. package/dist/charts/indicators/SpeedometerChart.js +142 -0
  379. package/dist/charts/indicators/StepProgress.js +170 -0
  380. package/dist/charts/indicators/TallyChart.js +268 -0
  381. package/dist/charts/indicators/TargetChart.js +160 -0
  382. package/dist/charts/indicators/ThermometerChart.js +144 -0
  383. package/dist/charts/indicators/TrafficLightChart.js +235 -0
  384. package/dist/charts/indicators/VuMeterChart.js +155 -0
  385. package/dist/charts/indicators/index.js +49 -0
  386. package/dist/charts/linesareas/AreaChart.js +76 -0
  387. package/dist/charts/linesareas/BumpChart.js +155 -0
  388. package/dist/charts/linesareas/ConnectedScatterTime.js +206 -0
  389. package/dist/charts/linesareas/CumulativeLine.js +115 -0
  390. package/dist/charts/linesareas/DifferenceChart.js +168 -0
  391. package/dist/charts/linesareas/DualAxisChart.js +151 -0
  392. package/dist/charts/linesareas/FanChart.js +135 -0
  393. package/dist/charts/linesareas/ForecastLine.js +161 -0
  394. package/dist/charts/linesareas/HorizonChart.js +134 -0
  395. package/dist/charts/linesareas/IndexedLine.js +94 -0
  396. package/dist/charts/linesareas/LayeredChart.js +97 -0
  397. package/dist/charts/linesareas/LineChart.js +76 -0
  398. package/dist/charts/linesareas/LineEnums.js +267 -0
  399. package/dist/charts/linesareas/MultiLineChart.js +97 -0
  400. package/dist/charts/linesareas/RangeAreaChart.js +148 -0
  401. package/dist/charts/linesareas/RidgeLines.js +118 -0
  402. package/dist/charts/linesareas/SeasonalLines.js +134 -0
  403. package/dist/charts/linesareas/SlopeChart.js +183 -0
  404. package/dist/charts/linesareas/SmallMultipleLines.js +153 -0
  405. package/dist/charts/linesareas/SparklineChart.js +211 -0
  406. package/dist/charts/linesareas/StackedAreaChart.js +67 -0
  407. package/dist/charts/linesareas/StepChart.js +85 -0
  408. package/dist/charts/linesareas/Streamgraph.js +70 -0
  409. package/dist/charts/linesareas/ThresholdAreaChart.js +133 -0
  410. package/dist/charts/linesareas/TrendChart.js +290 -0
  411. package/dist/charts/linesareas/TrendHover.js +55 -0
  412. package/dist/charts/linesareas/TrendLabels.js +32 -0
  413. package/dist/charts/linesareas/TrendMath.js +62 -0
  414. package/dist/charts/linesareas/TrendTable.js +87 -0
  415. package/dist/charts/linesareas/index.js +55 -0
  416. package/dist/charts/massive/CanvasSurface.js +174 -0
  417. package/dist/charts/massive/LttbDecimator.js +50 -0
  418. package/dist/charts/massive/MassiveChart.js +408 -0
  419. package/dist/charts/massive/MassiveColorTable.js +31 -0
  420. package/dist/charts/massive/MassiveDensityChart.js +46 -0
  421. package/dist/charts/massive/MassiveDensityRaster.js +124 -0
  422. package/dist/charts/massive/MassiveEnums.js +22 -0
  423. package/dist/charts/massive/MassiveLineChart.js +82 -0
  424. package/dist/charts/massive/MassiveLineLayer.js +42 -0
  425. package/dist/charts/massive/MassiveLineSeries.js +63 -0
  426. package/dist/charts/massive/MassiveMarkLayer.js +38 -0
  427. package/dist/charts/massive/MassiveNearestIndex.js +90 -0
  428. package/dist/charts/massive/MassivePointColumns.js +84 -0
  429. package/dist/charts/massive/MassiveScatterChart.js +57 -0
  430. package/dist/charts/massive/MassiveTypes.js +4 -0
  431. package/dist/charts/massive/MinMaxDecimator.js +56 -0
  432. package/dist/charts/massive/PassThroughDecimator.js +13 -0
  433. package/dist/charts/massive/index.js +24 -0
  434. package/dist/charts/mathematical/ArgandDiagram.js +222 -0
  435. package/dist/charts/mathematical/BandRaster.js +34 -0
  436. package/dist/charts/mathematical/BifurcationDiagram.js +155 -0
  437. package/dist/charts/mathematical/CobwebPlot.js +133 -0
  438. package/dist/charts/mathematical/ComplexDomainColoring.js +188 -0
  439. package/dist/charts/mathematical/FibonacciSpiralChart.js +255 -0
  440. package/dist/charts/mathematical/FieldPlot.js +131 -0
  441. package/dist/charts/mathematical/FourierSeriesChart.js +270 -0
  442. package/dist/charts/mathematical/FunctionCurves.js +33 -0
  443. package/dist/charts/mathematical/FunctionPlot.js +188 -0
  444. package/dist/charts/mathematical/ImplicitPlot.js +153 -0
  445. package/dist/charts/mathematical/IterationMap.js +62 -0
  446. package/dist/charts/mathematical/LissajousChart.js +242 -0
  447. package/dist/charts/mathematical/MandelbrotChart.js +191 -0
  448. package/dist/charts/mathematical/MathMarks.js +63 -0
  449. package/dist/charts/mathematical/MathNumerics.js +168 -0
  450. package/dist/charts/mathematical/MathPlane.js +207 -0
  451. package/dist/charts/mathematical/NumberLineChart.js +261 -0
  452. package/dist/charts/mathematical/ParametricPlot.js +203 -0
  453. package/dist/charts/mathematical/ParametricSurface3D.js +234 -0
  454. package/dist/charts/mathematical/PhasePortrait.js +210 -0
  455. package/dist/charts/mathematical/PolarCurvePlot.js +190 -0
  456. package/dist/charts/mathematical/RiemannSumChart.js +185 -0
  457. package/dist/charts/mathematical/SetRelationChart.js +393 -0
  458. package/dist/charts/mathematical/SlopeFieldChart.js +145 -0
  459. package/dist/charts/mathematical/StrangeAttractor3D.js +251 -0
  460. package/dist/charts/mathematical/StreamlineChart.js +159 -0
  461. package/dist/charts/mathematical/TaylorSeriesChart.js +175 -0
  462. package/dist/charts/mathematical/VectorFieldChart.js +140 -0
  463. package/dist/charts/mathematical/index.js +51 -0
  464. package/dist/charts/matrix/BubbleMatrix.js +108 -0
  465. package/dist/charts/matrix/ClusteredHeatmap.js +177 -0
  466. package/dist/charts/matrix/CohortMatrix.js +139 -0
  467. package/dist/charts/matrix/ConfusionMatrix.js +186 -0
  468. package/dist/charts/matrix/ContingencyChart.js +201 -0
  469. package/dist/charts/matrix/CorrelationMatrix.js +167 -0
  470. package/dist/charts/matrix/DiagonalMatrix.js +151 -0
  471. package/dist/charts/matrix/GridPlot.js +186 -0
  472. package/dist/charts/matrix/HeatmapChart.js +124 -0
  473. package/dist/charts/matrix/HintonDiagram.js +92 -0
  474. package/dist/charts/matrix/MatrixChart.js +209 -0
  475. package/dist/charts/matrix/MatrixDotChart.js +98 -0
  476. package/dist/charts/matrix/MatrixGlyphs.js +82 -0
  477. package/dist/charts/matrix/MatrixModel.js +99 -0
  478. package/dist/charts/matrix/MatrixSeriation.js +162 -0
  479. package/dist/charts/matrix/MatrixSurface.js +43 -0
  480. package/dist/charts/matrix/MatrixTowers3D.js +152 -0
  481. package/dist/charts/matrix/PunchCard.js +153 -0
  482. package/dist/charts/matrix/RecurrencePlot.js +177 -0
  483. package/dist/charts/matrix/RiskMatrix.js +264 -0
  484. package/dist/charts/matrix/SeriationMatrix.js +151 -0
  485. package/dist/charts/matrix/SortedMatrix.js +136 -0
  486. package/dist/charts/matrix/SpyPlot.js +163 -0
  487. package/dist/charts/matrix/TableHeatmap.js +175 -0
  488. package/dist/charts/matrix/TilegramChart.js +203 -0
  489. package/dist/charts/matrix/TriangleMatrix.js +146 -0
  490. package/dist/charts/matrix/WaffleMatrix.js +145 -0
  491. package/dist/charts/matrix/index.js +53 -0
  492. package/dist/charts/matrix/matrixEnums.js +48 -0
  493. package/dist/charts/multivariate/AnchoredProjection.js +45 -0
  494. package/dist/charts/multivariate/AndrewsCurves.js +193 -0
  495. package/dist/charts/multivariate/ConditionalPlot.js +137 -0
  496. package/dist/charts/multivariate/CrossfilterHistograms.js +247 -0
  497. package/dist/charts/multivariate/DimensionalStacking.js +205 -0
  498. package/dist/charts/multivariate/GlyphPlot.js +212 -0
  499. package/dist/charts/multivariate/HeatedParallelSets.js +236 -0
  500. package/dist/charts/multivariate/HyperboxChart.js +200 -0
  501. package/dist/charts/multivariate/InstancedSticks.js +32 -0
  502. package/dist/charts/multivariate/MultiDimensionalScaling.js +93 -0
  503. package/dist/charts/multivariate/MultivariateKit.js +168 -0
  504. package/dist/charts/multivariate/MultivariateMath.js +196 -0
  505. package/dist/charts/multivariate/MultivariateSample.js +42 -0
  506. package/dist/charts/multivariate/PCABiplot.js +141 -0
  507. package/dist/charts/multivariate/PCAScatter3D.js +217 -0
  508. package/dist/charts/multivariate/PanelScatter.js +88 -0
  509. package/dist/charts/multivariate/ParallelCoordinates.js +262 -0
  510. package/dist/charts/multivariate/ParallelPlanes3D.js +175 -0
  511. package/dist/charts/multivariate/PixelBarChart.js +201 -0
  512. package/dist/charts/multivariate/ProjectionChart.js +55 -0
  513. package/dist/charts/multivariate/RadViz.js +89 -0
  514. package/dist/charts/multivariate/SankeyMultivariate.js +178 -0
  515. package/dist/charts/multivariate/ScatterplotMatrix.js +310 -0
  516. package/dist/charts/multivariate/StarCoordinates.js +130 -0
  517. package/dist/charts/multivariate/SurveyPlot.js +159 -0
  518. package/dist/charts/multivariate/TableChart.js +270 -0
  519. package/dist/charts/multivariate/TrellisScatter.js +93 -0
  520. package/dist/charts/multivariate/WideTable.js +67 -0
  521. package/dist/charts/multivariate/index.js +52 -0
  522. package/dist/charts/network/AdjacencyMatrixChart.js +189 -0
  523. package/dist/charts/network/ArcDiagram.js +129 -0
  524. package/dist/charts/network/BioFabricChart.js +173 -0
  525. package/dist/charts/network/BipartiteChart.js +135 -0
  526. package/dist/charts/network/ChordDiagram.js +143 -0
  527. package/dist/charts/network/CircularLayoutGraph.js +120 -0
  528. package/dist/charts/network/ClusteredForceChart.js +131 -0
  529. package/dist/charts/network/CommunityChart.js +305 -0
  530. package/dist/charts/network/ContactMap.js +186 -0
  531. package/dist/charts/network/EdgeRouter.js +181 -0
  532. package/dist/charts/network/EgoNetworkChart.js +157 -0
  533. package/dist/charts/network/ForceGraphChart.js +97 -0
  534. package/dist/charts/network/GeoFreeNodeLink.js +127 -0
  535. package/dist/charts/network/GraphCommunities.js +101 -0
  536. package/dist/charts/network/GraphLayouts.js +154 -0
  537. package/dist/charts/network/GraphMetrics.js +97 -0
  538. package/dist/charts/network/GraphOrder.js +56 -0
  539. package/dist/charts/network/GraphTrees.js +131 -0
  540. package/dist/charts/network/GridLayoutGraph.js +164 -0
  541. package/dist/charts/network/GroupInABox.js +185 -0
  542. package/dist/charts/network/HierarchicalEdgeBundling.js +194 -0
  543. package/dist/charts/network/HiveChart.js +195 -0
  544. package/dist/charts/network/LabelPlacer.js +95 -0
  545. package/dist/charts/network/NetworkChart.js +189 -0
  546. package/dist/charts/network/NetworkModel.js +119 -0
  547. package/dist/charts/network/NetworkSamples.js +127 -0
  548. package/dist/charts/network/NodeLinkNetwork.js +91 -0
  549. package/dist/charts/network/PivotGraph.js +149 -0
  550. package/dist/charts/network/RadialNetwork.js +155 -0
  551. package/dist/charts/network/SpanningTreeChart.js +117 -0
  552. package/dist/charts/network/StressLayoutGraph.js +63 -0
  553. package/dist/charts/network/SugiyamaDagChart.js +170 -0
  554. package/dist/charts/network/SugiyamaLayout.js +210 -0
  555. package/dist/charts/network/TreeOfNetwork.js +241 -0
  556. package/dist/charts/network/index.js +53 -0
  557. package/dist/charts/network/networkEnums.js +53 -0
  558. package/dist/charts/pictorial/ArrowGlyphs.js +191 -0
  559. package/dist/charts/pictorial/BoxCanvas.js +84 -0
  560. package/dist/charts/pictorial/BubbleText.js +240 -0
  561. package/dist/charts/pictorial/ColorSwatchChart.js +219 -0
  562. package/dist/charts/pictorial/ConcordanceChart.js +209 -0
  563. package/dist/charts/pictorial/Corpus.js +49 -0
  564. package/dist/charts/pictorial/FaceGlyphs.js +125 -0
  565. package/dist/charts/pictorial/GlyphChart.js +232 -0
  566. package/dist/charts/pictorial/IconArray.js +207 -0
  567. package/dist/charts/pictorial/IsotypeChart.js +155 -0
  568. package/dist/charts/pictorial/PictogramChart.js +120 -0
  569. package/dist/charts/pictorial/PictorialIcons.js +30 -0
  570. package/dist/charts/pictorial/PolarGlyphMatrix.js +200 -0
  571. package/dist/charts/pictorial/SankeyText.js +250 -0
  572. package/dist/charts/pictorial/SentimentStrip.js +178 -0
  573. package/dist/charts/pictorial/ShapeGrid.js +198 -0
  574. package/dist/charts/pictorial/StarGlyphs.js +89 -0
  575. package/dist/charts/pictorial/TagChart.js +181 -0
  576. package/dist/charts/pictorial/TextMetrics.js +31 -0
  577. package/dist/charts/pictorial/TextTreemap.js +142 -0
  578. package/dist/charts/pictorial/UnitChart.js +49 -0
  579. package/dist/charts/pictorial/WeatherGlyphs.js +199 -0
  580. package/dist/charts/pictorial/WordChart.js +41 -0
  581. package/dist/charts/pictorial/WordCloudChart.js +141 -0
  582. package/dist/charts/pictorial/WordTreeChart.js +198 -0
  583. package/dist/charts/pictorial/index.js +44 -0
  584. package/dist/charts/proportion/BarOfPie.js +181 -0
  585. package/dist/charts/proportion/ConeFunnel.js +126 -0
  586. package/dist/charts/proportion/DonutChart.js +103 -0
  587. package/dist/charts/proportion/DotMatrixChart.js +168 -0
  588. package/dist/charts/proportion/EulerDiagram.js +75 -0
  589. package/dist/charts/proportion/EulerLayout.js +91 -0
  590. package/dist/charts/proportion/ExplodedPie.js +70 -0
  591. package/dist/charts/proportion/ExtrudedPieChart.js +123 -0
  592. package/dist/charts/proportion/FunnelChart.js +204 -0
  593. package/dist/charts/proportion/MosaicChart.js +224 -0
  594. package/dist/charts/proportion/NestedDonut.js +182 -0
  595. package/dist/charts/proportion/ParliamentChart.js +221 -0
  596. package/dist/charts/proportion/PieBase.js +189 -0
  597. package/dist/charts/proportion/PieChart.js +44 -0
  598. package/dist/charts/proportion/PiePerCategory.js +132 -0
  599. package/dist/charts/proportion/PowerDiagram.js +112 -0
  600. package/dist/charts/proportion/ProportionalAreaChart.js +191 -0
  601. package/dist/charts/proportion/PyramidChart.js +154 -0
  602. package/dist/charts/proportion/SemiDonutChart.js +106 -0
  603. package/dist/charts/proportion/SetData.js +56 -0
  604. package/dist/charts/proportion/SetDiagram.js +94 -0
  605. package/dist/charts/proportion/SetRegions.js +52 -0
  606. package/dist/charts/proportion/ShareChart.js +22 -0
  607. package/dist/charts/proportion/ShareData.js +94 -0
  608. package/dist/charts/proportion/ShareEnums.js +34 -0
  609. package/dist/charts/proportion/TreemapBar.js +155 -0
  610. package/dist/charts/proportion/UpSetPlot.js +245 -0
  611. package/dist/charts/proportion/VennDiagram.js +155 -0
  612. package/dist/charts/proportion/VoronoiShareChart.js +139 -0
  613. package/dist/charts/proportion/Waffle3DChart.js +164 -0
  614. package/dist/charts/proportion/WaffleChart.js +184 -0
  615. package/dist/charts/proportion/index.js +57 -0
  616. package/dist/charts/radial/CircularBarplot.js +122 -0
  617. package/dist/charts/radial/CircularHeatmap.js +140 -0
  618. package/dist/charts/radial/ClockChart.js +221 -0
  619. package/dist/charts/radial/CoxcombChart.js +125 -0
  620. package/dist/charts/radial/Polar.js +125 -0
  621. package/dist/charts/radial/PolarAreaChart.js +90 -0
  622. package/dist/charts/radial/PolarBase.js +227 -0
  623. package/dist/charts/radial/PolarScatter.js +146 -0
  624. package/dist/charts/radial/RadarChart.js +145 -0
  625. package/dist/charts/radial/RadialAreaChart.js +103 -0
  626. package/dist/charts/radial/RadialBarChart.js +169 -0
  627. package/dist/charts/radial/RadialBoxPlot.js +210 -0
  628. package/dist/charts/radial/RadialColumnChart.js +119 -0
  629. package/dist/charts/radial/RadialDumbbell.js +143 -0
  630. package/dist/charts/radial/RadialGantt.js +153 -0
  631. package/dist/charts/radial/RadialHistogram.js +179 -0
  632. package/dist/charts/radial/RadialLineChart.js +84 -0
  633. package/dist/charts/radial/RadialStackedArea.js +89 -0
  634. package/dist/charts/radial/RoseChart.js +113 -0
  635. package/dist/charts/radial/SpiralChart.js +188 -0
  636. package/dist/charts/radial/SunburstBar.js +140 -0
  637. package/dist/charts/radial/TemporalPolar.js +110 -0
  638. package/dist/charts/radial/WindRoseChart.js +164 -0
  639. package/dist/charts/radial/index.js +47 -0
  640. package/dist/charts/radial/radialEnums.js +201 -0
  641. package/dist/charts/scatter/BeeswarmScatter.js +151 -0
  642. package/dist/charts/scatter/BinnedScatterBase.js +51 -0
  643. package/dist/charts/scatter/BubbleChart.js +123 -0
  644. package/dist/charts/scatter/CategoryScatterBase.js +167 -0
  645. package/dist/charts/scatter/ChangeScatter.js +142 -0
  646. package/dist/charts/scatter/ConnectedScatter.js +141 -0
  647. package/dist/charts/scatter/ContourScatter.js +116 -0
  648. package/dist/charts/scatter/ConvexHullScatter.js +168 -0
  649. package/dist/charts/scatter/DropLineScatter.js +121 -0
  650. package/dist/charts/scatter/EllipseScatter.js +194 -0
  651. package/dist/charts/scatter/ErrorBarScatter.js +177 -0
  652. package/dist/charts/scatter/GridBinScatter.js +98 -0
  653. package/dist/charts/scatter/HexbinScatter.js +74 -0
  654. package/dist/charts/scatter/JitterPlot.js +103 -0
  655. package/dist/charts/scatter/LabelledScatter.js +272 -0
  656. package/dist/charts/scatter/MarginalScatter.js +251 -0
  657. package/dist/charts/scatter/ParetoScatter.js +146 -0
  658. package/dist/charts/scatter/QuadrantChart.js +195 -0
  659. package/dist/charts/scatter/Regression.js +157 -0
  660. package/dist/charts/scatter/RegressionScatter.js +142 -0
  661. package/dist/charts/scatter/RugScatter.js +138 -0
  662. package/dist/charts/scatter/ScatterBase.js +283 -0
  663. package/dist/charts/scatter/ScatterGeometry.js +95 -0
  664. package/dist/charts/scatter/ScatterPlot.js +36 -0
  665. package/dist/charts/scatter/StripScatter.js +107 -0
  666. package/dist/charts/scatter/SunflowerScatter.js +109 -0
  667. package/dist/charts/scatter/VoronoiScatter.js +128 -0
  668. package/dist/charts/scatter/index.js +53 -0
  669. package/dist/charts/scientific/Atmosphere.js +57 -0
  670. package/dist/charts/scientific/ChromatogramChart.js +213 -0
  671. package/dist/charts/scientific/ClimateChart.js +71 -0
  672. package/dist/charts/scientific/ClimographChart.js +273 -0
  673. package/dist/charts/scientific/Draft.js +89 -0
  674. package/dist/charts/scientific/ElectrophoresisGel.js +240 -0
  675. package/dist/charts/scientific/GridContours.js +29 -0
  676. package/dist/charts/scientific/HertzsprungRussell.js +272 -0
  677. package/dist/charts/scientific/HodographChart.js +265 -0
  678. package/dist/charts/scientific/MassSpectrumChart.js +180 -0
  679. package/dist/charts/scientific/PeakFinder.js +31 -0
  680. package/dist/charts/scientific/PeriodicElements.js +111 -0
  681. package/dist/charts/scientific/PeriodicTableChart.js +206 -0
  682. package/dist/charts/scientific/PhaseDiagram.js +392 -0
  683. package/dist/charts/scientific/PiperDiagram.js +286 -0
  684. package/dist/charts/scientific/RoseStrainChart.js +305 -0
  685. package/dist/charts/scientific/ScientificSample.js +413 -0
  686. package/dist/charts/scientific/SequenceLogoChart.js +225 -0
  687. package/dist/charts/scientific/Simplex.js +155 -0
  688. package/dist/charts/scientific/SkewTChart.js +257 -0
  689. package/dist/charts/scientific/SoilTextureChart.js +592 -0
  690. package/dist/charts/scientific/SpectralAnalysis.js +59 -0
  691. package/dist/charts/scientific/SpectrogramChart.js +230 -0
  692. package/dist/charts/scientific/StereonetChart.js +268 -0
  693. package/dist/charts/scientific/StiffDiagram.js +271 -0
  694. package/dist/charts/scientific/TaylorDiagram.js +253 -0
  695. package/dist/charts/scientific/TernaryPlot.js +268 -0
  696. package/dist/charts/scientific/WalterLiethChart.js +213 -0
  697. package/dist/charts/scientific/index.js +44 -0
  698. package/dist/charts/signals/AudiogramChart.js +235 -0
  699. package/dist/charts/signals/CepstrumChart.js +161 -0
  700. package/dist/charts/signals/ConstellationChart.js +153 -0
  701. package/dist/charts/signals/CorrelogramChart.js +171 -0
  702. package/dist/charts/signals/ECGChart.js +358 -0
  703. package/dist/charts/signals/EnvelopeChart.js +137 -0
  704. package/dist/charts/signals/EyeDiagramChart.js +155 -0
  705. package/dist/charts/signals/FilterResponseChart.js +264 -0
  706. package/dist/charts/signals/ImpulseResponseChart.js +199 -0
  707. package/dist/charts/signals/LogicAnalyzerChart.js +173 -0
  708. package/dist/charts/signals/OscilloscopeChart.js +229 -0
  709. package/dist/charts/signals/PeriodogramChart.js +155 -0
  710. package/dist/charts/signals/PhaseSpace3DChart.js +190 -0
  711. package/dist/charts/signals/PhaseSpaceChart.js +148 -0
  712. package/dist/charts/signals/PoleZeroChart.js +164 -0
  713. package/dist/charts/signals/SeismogramChart.js +237 -0
  714. package/dist/charts/signals/SignalChart.js +164 -0
  715. package/dist/charts/signals/SignalDsp.js +328 -0
  716. package/dist/charts/signals/SignalEnums.js +32 -0
  717. package/dist/charts/signals/SignalRaster.js +36 -0
  718. package/dist/charts/signals/SignalSamples.js +107 -0
  719. package/dist/charts/signals/SignalScales.js +56 -0
  720. package/dist/charts/signals/SpectralChart.js +23 -0
  721. package/dist/charts/signals/SpectrogramChart.js +79 -0
  722. package/dist/charts/signals/SpectrumChart.js +160 -0
  723. package/dist/charts/signals/StemSignalChart.js +172 -0
  724. package/dist/charts/signals/TimeDomainDiffChart.js +202 -0
  725. package/dist/charts/signals/TimeFrequencyChart.js +84 -0
  726. package/dist/charts/signals/WaterfallSpectrum.js +131 -0
  727. package/dist/charts/signals/WaterfallSurface3DChart.js +220 -0
  728. package/dist/charts/signals/WaveformChart.js +174 -0
  729. package/dist/charts/signals/WaveletScalogram.js +120 -0
  730. package/dist/charts/signals/index.js +60 -0
  731. package/dist/charts/statistics/AttributeControlChart.js +115 -0
  732. package/dist/charts/statistics/AutocorrelationPlot.js +76 -0
  733. package/dist/charts/statistics/BlandAltmanPlot.js +251 -0
  734. package/dist/charts/statistics/CalibrationPlot.js +213 -0
  735. package/dist/charts/statistics/ClassifierCurveBase.js +94 -0
  736. package/dist/charts/statistics/ControlChart.js +215 -0
  737. package/dist/charts/statistics/CooksDistancePlot.js +161 -0
  738. package/dist/charts/statistics/CorrelogramBase.js +152 -0
  739. package/dist/charts/statistics/CrossCorrelationPlot.js +66 -0
  740. package/dist/charts/statistics/CusumChart.js +132 -0
  741. package/dist/charts/statistics/DetectionErrorCurve.js +108 -0
  742. package/dist/charts/statistics/EwmaChart.js +99 -0
  743. package/dist/charts/statistics/ForestPlot.js +221 -0
  744. package/dist/charts/statistics/FunnelPlot.js +196 -0
  745. package/dist/charts/statistics/InteractionPlot.js +207 -0
  746. package/dist/charts/statistics/KaplanMeierCurve.js +249 -0
  747. package/dist/charts/statistics/LagPlot.js +96 -0
  748. package/dist/charts/statistics/LiftChart.js +178 -0
  749. package/dist/charts/statistics/LorenzCurve.js +186 -0
  750. package/dist/charts/statistics/ManhattanPlot.js +222 -0
  751. package/dist/charts/statistics/MetaAnalysis.js +76 -0
  752. package/dist/charts/statistics/PPPlot.js +126 -0
  753. package/dist/charts/statistics/PartialAutocorrelation.js +77 -0
  754. package/dist/charts/statistics/PrecisionRecallCurve.js +157 -0
  755. package/dist/charts/statistics/ProcessChartBase.js +130 -0
  756. package/dist/charts/statistics/ProcessRules.js +39 -0
  757. package/dist/charts/statistics/QQPlot.js +191 -0
  758. package/dist/charts/statistics/ROCCurve.js +186 -0
  759. package/dist/charts/statistics/ReferenceLaw.js +64 -0
  760. package/dist/charts/statistics/RegressionFit.js +79 -0
  761. package/dist/charts/statistics/RegressionInfluencePlot.js +148 -0
  762. package/dist/charts/statistics/ResidualPlot.js +173 -0
  763. package/dist/charts/statistics/ScreePlot.js +210 -0
  764. package/dist/charts/statistics/SilhouettePlot.js +217 -0
  765. package/dist/charts/statistics/StatMath.js +202 -0
  766. package/dist/charts/statistics/StatisticalChart.js +197 -0
  767. package/dist/charts/statistics/VolcanoPlot.js +196 -0
  768. package/dist/charts/statistics/index.js +69 -0
  769. package/dist/charts/structure/DependencyMatrix.js +302 -0
  770. package/dist/charts/structure/DependencyOrdering.js +76 -0
  771. package/dist/charts/structure/MareyChart.js +270 -0
  772. package/dist/charts/structure/MareyTimetable.js +116 -0
  773. package/dist/charts/structure/StructureText.js +14 -0
  774. package/dist/charts/structure/TournamentBracket.js +255 -0
  775. package/dist/charts/structure/TournamentDraw.js +209 -0
  776. package/dist/charts/structure/TournamentLayout.js +216 -0
  777. package/dist/charts/structure/UmlClassDiagram.js +435 -0
  778. package/dist/charts/structure/UmlLayout.js +366 -0
  779. package/dist/charts/structure/index.js +17 -0
  780. package/dist/charts/structure/structureEnums.js +81 -0
  781. package/dist/charts/threebars/Area3DChart.js +132 -0
  782. package/dist/charts/threebars/Bar3DChart.js +56 -0
  783. package/dist/charts/threebars/BarField3DChart.js +125 -0
  784. package/dist/charts/threebars/Bubble3DChart.js +89 -0
  785. package/dist/charts/threebars/Candlestick3DChart.js +248 -0
  786. package/dist/charts/threebars/Cartesian3DChart.js +249 -0
  787. package/dist/charts/threebars/CurveSampler3D.js +36 -0
  788. package/dist/charts/threebars/Cylinder3DBars.js +54 -0
  789. package/dist/charts/threebars/Donut3DChart.js +58 -0
  790. package/dist/charts/threebars/Funnel3DChart.js +86 -0
  791. package/dist/charts/threebars/Histogram3DChart.js +239 -0
  792. package/dist/charts/threebars/Line3DChart.js +113 -0
  793. package/dist/charts/threebars/Lollipop3DChart.js +66 -0
  794. package/dist/charts/threebars/Marks3D.js +127 -0
  795. package/dist/charts/threebars/Pie3DChart.js +42 -0
  796. package/dist/charts/threebars/PointCloud3DChart.js +140 -0
  797. package/dist/charts/threebars/Polyline3D.js +17 -0
  798. package/dist/charts/threebars/Pyramid3DChart.js +85 -0
  799. package/dist/charts/threebars/Radar3DChart.js +245 -0
  800. package/dist/charts/threebars/Ribbon3DChart.js +135 -0
  801. package/dist/charts/threebars/Round3DChart.js +166 -0
  802. package/dist/charts/threebars/Rows3D.js +44 -0
  803. package/dist/charts/threebars/Scatter3DChart.js +152 -0
  804. package/dist/charts/threebars/Series3DChart.js +124 -0
  805. package/dist/charts/threebars/Stacked3DBars.js +166 -0
  806. package/dist/charts/threebars/Stem3DChart.js +155 -0
  807. package/dist/charts/threebars/Tier3DChart.js +85 -0
  808. package/dist/charts/threebars/Waterfall3DChart.js +156 -0
  809. package/dist/charts/threebars/index.js +47 -0
  810. package/dist/charts/threeglobe/ArcGlobeChart.js +84 -0
  811. package/dist/charts/threeglobe/Bubble3DMap.js +73 -0
  812. package/dist/charts/threeglobe/ChoroplethGlobe.js +70 -0
  813. package/dist/charts/threeglobe/ContourGlobe.js +117 -0
  814. package/dist/charts/threeglobe/CylinderSurface.js +39 -0
  815. package/dist/charts/threeglobe/DotDensityGlobe.js +117 -0
  816. package/dist/charts/threeglobe/ExtrudedMapChart.js +68 -0
  817. package/dist/charts/threeglobe/FlatProjectionPlane.js +64 -0
  818. package/dist/charts/threeglobe/FlowGlobeChart.js +95 -0
  819. package/dist/charts/threeglobe/GeoField.js +49 -0
  820. package/dist/charts/threeglobe/GeoMesher.js +146 -0
  821. package/dist/charts/threeglobe/GeoRings.js +37 -0
  822. package/dist/charts/threeglobe/GeoSurface.js +30 -0
  823. package/dist/charts/threeglobe/Globe3DChart.js +59 -0
  824. package/dist/charts/threeglobe/GlobeChart.js +287 -0
  825. package/dist/charts/threeglobe/GlobeEnums.js +230 -0
  826. package/dist/charts/threeglobe/GlobeMath.js +25 -0
  827. package/dist/charts/threeglobe/GlobeProjections.js +18 -0
  828. package/dist/charts/threeglobe/GlobeSamples.js +74 -0
  829. package/dist/charts/threeglobe/Graticule3DGlobe.js +91 -0
  830. package/dist/charts/threeglobe/HeatGlobe.js +107 -0
  831. package/dist/charts/threeglobe/HexGlobe.js +118 -0
  832. package/dist/charts/threeglobe/LinkGlobeChart.js +55 -0
  833. package/dist/charts/threeglobe/MapPlaneChart.js +14 -0
  834. package/dist/charts/threeglobe/MeshBuffer.js +137 -0
  835. package/dist/charts/threeglobe/OwnedMesh.js +12 -0
  836. package/dist/charts/threeglobe/PlaneSurface.js +69 -0
  837. package/dist/charts/threeglobe/PointGlobeChart.js +83 -0
  838. package/dist/charts/threeglobe/PrismMapChart.js +96 -0
  839. package/dist/charts/threeglobe/RegionGlobeChart.js +81 -0
  840. package/dist/charts/threeglobe/RibbonGlobe.js +81 -0
  841. package/dist/charts/threeglobe/RingGlobe.js +106 -0
  842. package/dist/charts/threeglobe/SiteGlobeChart.js +53 -0
  843. package/dist/charts/threeglobe/SphereGrid.js +90 -0
  844. package/dist/charts/threeglobe/SphereSurface.js +40 -0
  845. package/dist/charts/threeglobe/SpikeGlobeChart.js +80 -0
  846. package/dist/charts/threeglobe/StreamGlobe.js +141 -0
  847. package/dist/charts/threeglobe/Tile3DMap.js +102 -0
  848. package/dist/charts/threeglobe/TrajectoryGlobe.js +138 -0
  849. package/dist/charts/threeglobe/index.js +59 -0
  850. package/dist/charts/threenetwork/Arc3DDiagram.js +105 -0
  851. package/dist/charts/threenetwork/Calendar3DChart.js +179 -0
  852. package/dist/charts/threenetwork/Chord3DChart.js +150 -0
  853. package/dist/charts/threenetwork/CirclePack3DChart.js +161 -0
  854. package/dist/charts/threenetwork/City3DChart.js +128 -0
  855. package/dist/charts/threenetwork/ConeTreeChart.js +148 -0
  856. package/dist/charts/threenetwork/Dag3DChart.js +149 -0
  857. package/dist/charts/threenetwork/Force3DGraph.js +102 -0
  858. package/dist/charts/threenetwork/ForceLayout3D.js +103 -0
  859. package/dist/charts/threenetwork/Gantt3DChart.js +182 -0
  860. package/dist/charts/threenetwork/Graph3DBase.js +165 -0
  861. package/dist/charts/threenetwork/Hierarchy3DBase.js +42 -0
  862. package/dist/charts/threenetwork/Hive3DChart.js +150 -0
  863. package/dist/charts/threenetwork/Icicle3DChart.js +87 -0
  864. package/dist/charts/threenetwork/LabelSpacer3D.js +40 -0
  865. package/dist/charts/threenetwork/Loft.js +39 -0
  866. package/dist/charts/threenetwork/MatrixCube3D.js +145 -0
  867. package/dist/charts/threenetwork/MultilayerNetwork3D.js +139 -0
  868. package/dist/charts/threenetwork/NetworkMarks3D.js +130 -0
  869. package/dist/charts/threenetwork/Parallel3DCoordinates.js +155 -0
  870. package/dist/charts/threenetwork/Path3D.js +45 -0
  871. package/dist/charts/threenetwork/RingSegment3D.js +17 -0
  872. package/dist/charts/threenetwork/Sankey3DChart.js +182 -0
  873. package/dist/charts/threenetwork/Sphere3DGraph.js +125 -0
  874. package/dist/charts/threenetwork/Spiral3DTimeline.js +159 -0
  875. package/dist/charts/threenetwork/Sunburst3DChart.js +103 -0
  876. package/dist/charts/threenetwork/Temporal3DBase.js +22 -0
  877. package/dist/charts/threenetwork/Timeline3DChart.js +168 -0
  878. package/dist/charts/threenetwork/Tree3DChart.js +124 -0
  879. package/dist/charts/threenetwork/Treemap3DChart.js +98 -0
  880. package/dist/charts/threenetwork/enums.js +9 -0
  881. package/dist/charts/threenetwork/index.js +56 -0
  882. package/dist/charts/threesurfaces/ColorRamp.js +18 -0
  883. package/dist/charts/threesurfaces/ComplexSurface.js +156 -0
  884. package/dist/charts/threesurfaces/ContourSurface.js +149 -0
  885. package/dist/charts/threesurfaces/DensitySurface.js +162 -0
  886. package/dist/charts/threesurfaces/GridSurfaceBase.js +64 -0
  887. package/dist/charts/threesurfaces/HeightfieldBars.js +138 -0
  888. package/dist/charts/threesurfaces/ImplicitSurface.js +237 -0
  889. package/dist/charts/threesurfaces/IsoSurfaceMesher.js +75 -0
  890. package/dist/charts/threesurfaces/LayeredSurfaces.js +178 -0
  891. package/dist/charts/threesurfaces/MeshSurface.js +186 -0
  892. package/dist/charts/threesurfaces/ParametricForms.js +173 -0
  893. package/dist/charts/threesurfaces/ParametricSurface.js +178 -0
  894. package/dist/charts/threesurfaces/PhaseSurface.js +206 -0
  895. package/dist/charts/threesurfaces/PolarSurface.js +135 -0
  896. package/dist/charts/threesurfaces/RibbonSurface.js +167 -0
  897. package/dist/charts/threesurfaces/Ridgeline3DChart.js +148 -0
  898. package/dist/charts/threesurfaces/SaddleSurface.js +214 -0
  899. package/dist/charts/threesurfaces/ShortTimeTransform.js +53 -0
  900. package/dist/charts/threesurfaces/SliceSurface.js +101 -0
  901. package/dist/charts/threesurfaces/Spectrogram3DChart.js +92 -0
  902. package/dist/charts/threesurfaces/SurfaceBase.js +333 -0
  903. package/dist/charts/threesurfaces/SurfaceChart.js +75 -0
  904. package/dist/charts/threesurfaces/SurfaceField.js +158 -0
  905. package/dist/charts/threesurfaces/SurfaceGeometry.js +121 -0
  906. package/dist/charts/threesurfaces/SurfaceMesh.js +24 -0
  907. package/dist/charts/threesurfaces/SurfaceSpace.js +70 -0
  908. package/dist/charts/threesurfaces/TerrainChart.js +202 -0
  909. package/dist/charts/threesurfaces/TriangulatedSurface.js +252 -0
  910. package/dist/charts/threesurfaces/TubeBatch.js +72 -0
  911. package/dist/charts/threesurfaces/Waterfall3DSpectrum.js +109 -0
  912. package/dist/charts/threesurfaces/WireframeSurface.js +105 -0
  913. package/dist/charts/threesurfaces/index.js +49 -0
  914. package/dist/charts/threevolume/AtomicOrbitalChart.js +228 -0
  915. package/dist/charts/threevolume/Bubble3DCloud.js +126 -0
  916. package/dist/charts/threevolume/Cloud3DChart.js +100 -0
  917. package/dist/charts/threevolume/Contour3DStack.js +183 -0
  918. package/dist/charts/threevolume/CrystalLattice.js +282 -0
  919. package/dist/charts/threevolume/Density3DChart.js +212 -0
  920. package/dist/charts/threevolume/FlowParticles.js +119 -0
  921. package/dist/charts/threevolume/Helix3DChart.js +142 -0
  922. package/dist/charts/threevolume/IsosurfaceChart.js +78 -0
  923. package/dist/charts/threevolume/LorenzAttractor.js +303 -0
  924. package/dist/charts/threevolume/Molecule3DChart.js +162 -0
  925. package/dist/charts/threevolume/Orbital3DChart.js +188 -0
  926. package/dist/charts/threevolume/PointCloudChart.js +171 -0
  927. package/dist/charts/threevolume/PointRowsChart.js +137 -0
  928. package/dist/charts/threevolume/Slab3DChart.js +145 -0
  929. package/dist/charts/threevolume/Streamline3DChart.js +106 -0
  930. package/dist/charts/threevolume/TubeTrajectoryChart.js +156 -0
  931. package/dist/charts/threevolume/Vector3DField.js +109 -0
  932. package/dist/charts/threevolume/VectorField3D.js +117 -0
  933. package/dist/charts/threevolume/VectorField3DChart.js +27 -0
  934. package/dist/charts/threevolume/VolumeGrid.js +176 -0
  935. package/dist/charts/threevolume/VolumeGridChart.js +42 -0
  936. package/dist/charts/threevolume/VolumeIsoSurface.js +177 -0
  937. package/dist/charts/threevolume/VolumeRaycastChart.js +197 -0
  938. package/dist/charts/threevolume/VolumeScene.js +136 -0
  939. package/dist/charts/threevolume/VolumeSheet.js +39 -0
  940. package/dist/charts/threevolume/VolumeSlicesChart.js +134 -0
  941. package/dist/charts/threevolume/VolumeStrands.js +73 -0
  942. package/dist/charts/threevolume/VoxelChart.js +86 -0
  943. package/dist/charts/threevolume/index.js +52 -0
  944. package/dist/charts/threevolume/volumeEnums.js +337 -0
  945. package/dist/charts/timeline/BurnChart.js +138 -0
  946. package/dist/charts/timeline/BurndownChart.js +93 -0
  947. package/dist/charts/timeline/BurnupChart.js +103 -0
  948. package/dist/charts/timeline/CalendarHeatmap.js +332 -0
  949. package/dist/charts/timeline/CalendarSkylineChart.js +128 -0
  950. package/dist/charts/timeline/ChronologyChart.js +203 -0
  951. package/dist/charts/timeline/CriticalPathChart.js +139 -0
  952. package/dist/charts/timeline/CriticalPathMethod.js +89 -0
  953. package/dist/charts/timeline/CumulativeFlowChart.js +163 -0
  954. package/dist/charts/timeline/CycleTimeChart.js +176 -0
  955. package/dist/charts/timeline/EventDropChart.js +184 -0
  956. package/dist/charts/timeline/GanttChart.js +215 -0
  957. package/dist/charts/timeline/LifelineChart.js +173 -0
  958. package/dist/charts/timeline/MarimekkoTime.js +192 -0
  959. package/dist/charts/timeline/MilestoneChart.js +184 -0
  960. package/dist/charts/timeline/MilestoneTrendChart.js +148 -0
  961. package/dist/charts/timeline/PERTChart.js +236 -0
  962. package/dist/charts/timeline/PeriodicHeatmap.js +218 -0
  963. package/dist/charts/timeline/ResourceAllocationChart.js +281 -0
  964. package/dist/charts/timeline/RoadmapChart.js +198 -0
  965. package/dist/charts/timeline/ScheduleBlocksChart.js +119 -0
  966. package/dist/charts/timeline/SpiralTimeline.js +154 -0
  967. package/dist/charts/timeline/StreamTimeline.js +141 -0
  968. package/dist/charts/timeline/SwimlaneChart.js +212 -0
  969. package/dist/charts/timeline/TimeBandChart.js +23 -0
  970. package/dist/charts/timeline/TimeMarks.js +95 -0
  971. package/dist/charts/timeline/TimeRows.js +128 -0
  972. package/dist/charts/timeline/TimeSamples.js +96 -0
  973. package/dist/charts/timeline/TimelineChart.js +221 -0
  974. package/dist/charts/timeline/index.js +54 -0
  975. package/dist/chunk-KGSYGPLS.cjs +16 -0
  976. package/dist/chunk-W5GAAAZY.cjs +94790 -0
  977. package/dist/core/AnnotationLayer.js +236 -0
  978. package/dist/core/AnnotationPlacer.js +47 -0
  979. package/dist/core/AnnotationScale.js +64 -0
  980. package/dist/core/AxisWindow.js +85 -0
  981. package/dist/core/CartesianChart.js +142 -0
  982. package/dist/core/Chart.js +250 -0
  983. package/dist/core/Chart2D.js +249 -0
  984. package/dist/core/Chart3D.js +292 -0
  985. package/dist/core/ChartBrush.js +162 -0
  986. package/dist/core/ChartExportError.js +24 -0
  987. package/dist/core/ChartExporter.js +298 -0
  988. package/dist/core/ChartRegistry.js +53 -0
  989. package/dist/core/ChartViewport.js +401 -0
  990. package/dist/core/Context2D.js +164 -0
  991. package/dist/core/Context3D.js +76 -0
  992. package/dist/core/KeyboardNav.js +437 -0
  993. package/dist/core/LiveMotion.js +200 -0
  994. package/dist/core/LiveStream.js +179 -0
  995. package/dist/core/Palette.js +49 -0
  996. package/dist/core/RadialChart.js +14 -0
  997. package/dist/core/Scales.js +51 -0
  998. package/dist/core/SceneOverlay.js +63 -0
  999. package/dist/core/Theme.js +75 -0
  1000. package/dist/core/Tooltip.js +73 -0
  1001. package/dist/core/VariantSpace.js +30 -0
  1002. package/dist/core/ZoomControls.js +28 -0
  1003. package/dist/core/enums.js +107 -0
  1004. package/dist/counties-10m-SUUOGEQ6.cjs +15 -0
  1005. package/dist/countries-10m-W7BHA2Y5.cjs +15 -0
  1006. package/dist/countries-110m-FX2H3PT5.cjs +16 -0
  1007. package/dist/countries-50m-6EAF3KCW.cjs +15 -0
  1008. package/dist/data/GeoAtlas.js +119 -0
  1009. package/dist/data/SampleData.js +345 -0
  1010. package/dist/index.cjs +6788 -0
  1011. package/dist/index.d.cts +53672 -0
  1012. package/dist/index.d.ts +53672 -0
  1013. package/dist/index.js +927 -0
  1014. package/dist/react/ChartView.js +77 -0
  1015. package/dist/react/Graph.js +19 -0
  1016. package/dist/react/GraphHandle.js +24 -0
  1017. package/dist/react/chartComponent.js +18 -0
  1018. package/dist/react/components.js +1930 -0
  1019. package/dist/react/useLiveChart.js +34 -0
  1020. package/dist/vendor/d3-cloud/src/layout.js +549 -0
  1021. package/dist/vendor/d3-cloud/src/sprite.js +346 -0
  1022. package/dist/vendor/us-atlas/counties-10m.json.js +53660 -0
  1023. package/dist/vendor/us-atlas/states-10m.json.js +13858 -0
  1024. package/dist/vendor/world-atlas/countries-10m.json.js +486537 -0
  1025. package/dist/vendor/world-atlas/countries-110m.json.js +9360 -0
  1026. package/dist/vendor/world-atlas/countries-50m.json.js +84531 -0
  1027. package/package.json +96 -4
@@ -0,0 +1,133 @@
1
+ import { ChartFamily, CurveKind, DataShape, Dimension } from "../../core/enums.js";
2
+ import { Scales } from "../../core/Scales.js";
3
+ import { SampleData } from "../../data/SampleData.js";
4
+ import { ThresholdSide, ThresholdSource } from "./LineEnums.js";
5
+ import { TrendChart } from "./TrendChart.js";
6
+ import { TrendMath } from "./TrendMath.js";
7
+ import { TrendHover } from "./TrendHover.js";
8
+ // src/charts/linesareas/ThresholdAreaChart.ts
9
+ /** One series against a limit: budget, target or normal level. Only the first series in the data is drawn. */
10
+ var ThresholdAreaChart = class extends TrendChart {
11
+ static meta = {
12
+ id: "threshold-area",
13
+ name: "Threshold area chart",
14
+ family: ChartFamily.Trend,
15
+ dimension: Dimension.Two,
16
+ shape: DataShape.Table,
17
+ description: "Colours the area between a line and a threshold by polarity, to show when a value is over or under its limit.",
18
+ tags: [
19
+ "target",
20
+ "over under",
21
+ "bipartite area",
22
+ "limit"
23
+ ],
24
+ sample: (seed) => SampleData.timeSeries(seed, 60, 1),
25
+ variants: {
26
+ source: [
27
+ ThresholdSource.Mean,
28
+ ThresholdSource.Median,
29
+ ThresholdSource.First,
30
+ ThresholdSource.Last
31
+ ],
32
+ side: [
33
+ ThresholdSide.Both,
34
+ ThresholdSide.Above,
35
+ ThresholdSide.Below
36
+ ],
37
+ curve: [
38
+ CurveKind.Monotone,
39
+ CurveKind.Linear,
40
+ CurveKind.StepAfter
41
+ ],
42
+ tolerance: [false, true]
43
+ }
44
+ };
45
+ defaults() {
46
+ return {
47
+ ...super.defaults(),
48
+ source: ThresholdSource.Mean,
49
+ side: ThresholdSide.Both,
50
+ tolerance: false
51
+ };
52
+ }
53
+ get legended() {
54
+ return this.points.length > 0;
55
+ }
56
+ get points() {
57
+ return this.view[0]?.points ?? [];
58
+ }
59
+ get level() {
60
+ const { threshold, source } = this.options;
61
+ if (threshold !== void 0) return threshold;
62
+ const known = this.points.filter((p) => p.y !== null);
63
+ const sorted = TrendMath.sorted(known);
64
+ if (source === ThresholdSource.First) return known[0]?.y ?? 0;
65
+ if (source === ThresholdSource.Last) return known.at(-1)?.y ?? 0;
66
+ if (source === ThresholdSource.Median) return TrendMath.quantile(sorted, .5) ?? 0;
67
+ return sorted.reduce((a, b) => a + b, 0) / Math.max(1, sorted.length);
68
+ }
69
+ get slack() {
70
+ return this.options.tolerance ? TrendMath.deviation(this.points) / 2 : 0;
71
+ }
72
+ yValues() {
73
+ return [
74
+ ...this.points.flatMap((p) => p.y === null ? [] : [p.y]),
75
+ this.level,
76
+ this.level + this.slack,
77
+ this.level - this.slack
78
+ ];
79
+ }
80
+ legendItems() {
81
+ const { side } = this.options;
82
+ return [...side === ThresholdSide.Below ? [] : [{
83
+ key: "Above",
84
+ color: this.palette.diverging(TrendMath.polarity(1))
85
+ }], ...side === ThresholdSide.Above ? [] : [{
86
+ key: "Below",
87
+ color: this.palette.diverging(TrendMath.polarity(-1))
88
+ }]];
89
+ }
90
+ plotMarks(ctx, axes) {
91
+ const { side } = this.options;
92
+ const { width, height } = ctx.plot;
93
+ const points = this.points;
94
+ const rule = axes.y(this.level) ?? 0;
95
+ const reach = this.slack;
96
+ const top = axes.y(this.level + reach) ?? 0, bottom = axes.y(this.level - reach) ?? 0;
97
+ const band = ctx.marks("tolerance", "rect", reach ? [0] : []).attr("fill", ctx.theme.grid).attr("rx", 2).attr("x", 0).attr("width", width);
98
+ ctx.set(band, {
99
+ y: top,
100
+ height: Math.max(0, bottom - top)
101
+ });
102
+ const sides = [...side === ThresholdSide.Below ? [] : [{
103
+ key: "above",
104
+ tone: 1,
105
+ clip: `M0,0H${width}V${top}H0Z`,
106
+ from: top
107
+ }], ...side === ThresholdSide.Above ? [] : [{
108
+ key: "below",
109
+ tone: -1,
110
+ clip: `M0,${bottom}H${width}V${height}H0Z`,
111
+ from: bottom
112
+ }]].map((item) => ({
113
+ ...item,
114
+ url: this.clipTo(ctx, item.key, item.clip)
115
+ }));
116
+ const fills = ctx.marks("fills", "path", sides, (d) => d.key).attr("fill", (d) => ctx.palette.diverging(TrendMath.polarity(d.tone))).attr("fill-opacity", .7).attr("clip-path", (d) => d.url);
117
+ ctx.set(fills, { d: (d) => this.areaPath(axes, d.from)(points) }, { d: (d) => this.flatPath(axes, d.from)(points) });
118
+ ctx.marks("rule", "line", [0]).attr("stroke", ctx.theme.ink).attr("stroke-width", 1).attr("stroke-dasharray", "4 3").attr("x1", 0).attr("x2", width).attr("y1", rule).attr("y2", rule);
119
+ const series = this.view.slice(0, 1);
120
+ this.strokes(ctx, "lines", series, axes, Scales.curve(this.options.curve), () => ctx.theme.inkSecondary);
121
+ const text = `${TrendHover.value(this.level)}`;
122
+ const note = ctx.text(ctx.marks("rule-note", "text", points.length ? [text] : []), 11, "ink").attr("text-anchor", "end").attr("dy", rule < 16 ? 14 : -5).text((d) => d).attr("paint-order", "stroke").attr("stroke", ctx.theme.surface).attr("stroke-width", 3);
123
+ ctx.set(note, {
124
+ x: width - 2,
125
+ y: rule
126
+ }, {
127
+ x: width - 2,
128
+ y: rule
129
+ });
130
+ this.hoverColumns(ctx, axes, series, { color: () => ctx.theme.inkSecondary });
131
+ }
132
+ };
133
+ export { ThresholdAreaChart };
@@ -0,0 +1,290 @@
1
+ import { CartesianChart } from "../../core/CartesianChart.js";
2
+ import { CurveKind, LegendPosition, ScaleKind } from "../../core/enums.js";
3
+ import { Scales } from "../../core/Scales.js";
4
+ import { LineAggregate, LineMarkers } from "./LineEnums.js";
5
+ import { TrendHover } from "./TrendHover.js";
6
+ import { TrendLabels } from "./TrendLabels.js";
7
+ import { TrendTable } from "./TrendTable.js";
8
+ import { area, extent, line, ticks, utcFormat } from "d3";
9
+ // src/charts/linesareas/TrendChart.ts
10
+ var LABEL_ROOM = 96;
11
+ var TICK_WIDTH = 58;
12
+ /** Lines over a shared x: parsing, scales, gaps, direct labels, markers and hover, for the whole module. */
13
+ var TrendChart = class TrendChart extends CartesianChart {
14
+ static clips = 0;
15
+ clipScope = 0;
16
+ cache = null;
17
+ defaults() {
18
+ return {
19
+ x: "date",
20
+ y: "value",
21
+ series: "series",
22
+ aggregate: LineAggregate.Mean,
23
+ curve: CurveKind.Monotone,
24
+ scale: ScaleKind.Linear
25
+ };
26
+ }
27
+ get parsed() {
28
+ if (this.cache?.options !== this.options) {
29
+ const { x, y, series, aggregate } = this.options;
30
+ const table = new TrendTable(this.options.data, {
31
+ x,
32
+ y,
33
+ series,
34
+ aggregate
35
+ });
36
+ this.cache = {
37
+ options: this.options,
38
+ table,
39
+ view: []
40
+ };
41
+ this.cache.view = this.shape(table);
42
+ }
43
+ return this.cache;
44
+ }
45
+ get source() {
46
+ return this.parsed.table;
47
+ }
48
+ /** The series as drawn. */
49
+ get view() {
50
+ return this.parsed.view;
51
+ }
52
+ /** Derive the drawn series from the parsed ones: rebase, accumulate, rank. */
53
+ shape(table) {
54
+ return table.series;
55
+ }
56
+ /** True when series are named on the plot, so no legend is needed. */
57
+ get direct() {
58
+ return false;
59
+ }
60
+ get legended() {
61
+ return !this.direct && this.view.length > 1;
62
+ }
63
+ get legendPosition() {
64
+ return this.legended ? super.legendPosition : LegendPosition.None;
65
+ }
66
+ get zeroBased() {
67
+ return false;
68
+ }
69
+ get logarithmic() {
70
+ return this.options.scale === ScaleKind.Log;
71
+ }
72
+ /** Values the y axis must reach. */
73
+ yValues() {
74
+ return this.view.flatMap((series) => series.points.flatMap((point) => point.y === null ? [] : [point.y]));
75
+ }
76
+ /** Width kept free at the right of the plot for direct labels. */
77
+ labelRoom() {
78
+ return this.direct ? TrendLabels.room(this.view.map((series) => series.key), LABEL_ROOM) : 0;
79
+ }
80
+ /** Width kept free at the left of the plot. */
81
+ startRoom() {
82
+ const { markers } = this.options;
83
+ return markers && markers !== LineMarkers.None ? 8 : 0;
84
+ }
85
+ scales(ctx) {
86
+ const range = [this.startRoom(), ctx.plot.width - this.labelRoom()];
87
+ return {
88
+ x: this.thinned(this.xAxis(range), range[1] - range[0]),
89
+ y: this.yAxis(ctx.plot.height)
90
+ };
91
+ }
92
+ /** The plot can be narrower than the chart once labels take room, so x ticks are thinned to what fits. */
93
+ thinned(scale, width) {
94
+ const { ticks: source } = scale;
95
+ if (!source) return scale;
96
+ const all = source.bind(scale);
97
+ return Object.assign(scale, { ticks: (...count) => {
98
+ const values = all(...count);
99
+ const every = Math.ceil(values.length / Math.max(2, Math.floor(width / TICK_WIDTH)));
100
+ return values.filter((_, i) => i % every === 0);
101
+ } });
102
+ }
103
+ xAxis(range) {
104
+ return this.source.xScale(range);
105
+ }
106
+ yAxis(height) {
107
+ const log = this.logarithmic;
108
+ let [lo, hi] = extent(this.yValues().filter((value) => !log || value > 0));
109
+ if (lo === void 0 || hi === void 0) [lo, hi] = log ? [1, 10] : [0, 1];
110
+ if (this.zeroBased && !log) {
111
+ lo = Math.min(lo, 0);
112
+ hi = Math.max(hi, 0);
113
+ }
114
+ if (lo === hi) {
115
+ const pad = Math.abs(lo) * .1 || 1;
116
+ lo = log ? lo / 2 : lo - pad;
117
+ hi += pad;
118
+ }
119
+ const scale = Scales.continuous(this.options.scale).domain([lo, hi]).range([height, 0]);
120
+ if (!log) return scale.nice();
121
+ return hi / lo < 10 ? Object.assign(scale, { ticks: () => ticks(lo, hi, this.yTicks()) }) : scale;
122
+ }
123
+ /** On a wide log axis only 1, 2 and 5 keep a label; the rest would collide. */
124
+ tickFormat(scale) {
125
+ const [lo, hi] = scale.domain?.() ?? [];
126
+ if (lo instanceof Date) return (value) => this.streaming && +hi - +lo < 12e4 ? utcFormat("%H:%M:%S")(value) : TrendChart.dateTick(value, +hi - +lo);
127
+ const format = super.tickFormat(scale);
128
+ if (!format || !this.logarithmic || !(hi / lo > 20)) return format;
129
+ return (value) => [
130
+ 1,
131
+ 2,
132
+ 5
133
+ ].includes(Math.round(+value / 10 ** Math.floor(Math.log10(+value) + 1e-9))) ? format(value) : "";
134
+ }
135
+ static dateTick(value, span) {
136
+ const day = 864e5;
137
+ return utcFormat(span < 2 * day ? "%H:%M" : span < 400 * day ? "%b %-d" : span < 1500 * day ? "%b %Y" : "%Y")(value);
138
+ }
139
+ drawn = (point) => point.y !== null && (!this.logarithmic || point.y > 0);
140
+ px(axes, point) {
141
+ return axes.x(point.x) ?? 0;
142
+ }
143
+ py(axes, point) {
144
+ return axes.y(point.y) ?? 0;
145
+ }
146
+ curveOf(kind = this.options.curve) {
147
+ return Scales.curve(kind);
148
+ }
149
+ linePath(axes, curve = this.curveOf()) {
150
+ const path = line().defined(this.drawn).x((p) => this.px(axes, p)).y((p) => this.py(axes, p)).curve(curve);
151
+ return (points) => path(points) ?? "";
152
+ }
153
+ /** Filled shape between the line and `base`, a pixel level or a per-point one. */
154
+ areaPath(axes, base, curve = this.curveOf()) {
155
+ const path = area().defined(this.drawn).x((p) => this.px(axes, p)).y0(base).y1((p) => this.py(axes, p)).curve(curve);
156
+ return (points) => path(points) ?? "";
157
+ }
158
+ /** The same outline as `areaPath`, collapsed onto `base`: the shape a fill grows from. */
159
+ flatPath(axes, base, curve = this.curveOf()) {
160
+ const path = area().defined(this.drawn).x((p) => this.px(axes, p)).y(base).curve(curve);
161
+ return (points) => path(points) ?? "";
162
+ }
163
+ /** Reveals a stroke on first paint and morphs it on later ones. */
164
+ trace(ctx, paths, d) {
165
+ paths.filter(function() {
166
+ return !this.getAttribute("d");
167
+ }).attr("d", d);
168
+ ctx.drawOn(paths);
169
+ ctx.set(paths, { d });
170
+ }
171
+ styleStroke(paths, color) {
172
+ return paths.attr("fill", "none").attr("stroke", color).attr("stroke-width", 2).attr("stroke-linecap", "round").attr("stroke-linejoin", "round");
173
+ }
174
+ /** One 2px line per series, plus a dot for any point with no neighbour to join. */
175
+ strokes(ctx, name, series, axes, curve = this.curveOf(), color = (s) => ctx.palette.color(s.key)) {
176
+ const d = this.linePath(axes, curve);
177
+ const lines = this.styleStroke(ctx.marks(name, "path", series, (s) => s.key), color);
178
+ this.trace(ctx, lines, (s) => d(s.points));
179
+ const lonely = series.flatMap((s) => s.points.flatMap((p, i) => {
180
+ const before = s.points[i - 1], after = s.points[i + 1];
181
+ return this.drawn(p) && !(before && this.drawn(before)) && !(after && this.drawn(after)) ? [{
182
+ key: `${s.key}/${p.order}`,
183
+ x: this.px(axes, p),
184
+ y: this.py(axes, p),
185
+ color: color(s)
186
+ }] : [];
187
+ }));
188
+ this.dots(ctx, `${name}-isolated`, lonely);
189
+ return lines;
190
+ }
191
+ /** Round markers with a 2px surface ring. */
192
+ dots(ctx, name, dots, parent = ctx.root, r = 5) {
193
+ const marks = ctx.marks(name, "circle", dots, (d) => d.key, parent).attr("fill", (d) => d.color).attr("stroke", ctx.theme.surface).attr("stroke-width", 2);
194
+ ctx.set(marks, {
195
+ cx: (d) => d.x,
196
+ cy: (d) => d.y,
197
+ r
198
+ }, {
199
+ cx: (d) => d.x,
200
+ cy: (d) => d.y,
201
+ r: 0
202
+ });
203
+ return marks;
204
+ }
205
+ /** The points each series shows a marker on, thinned so that markers never touch. */
206
+ markerPoints(series, mode, width) {
207
+ const known = series.points.filter(this.drawn);
208
+ if (mode === LineMarkers.None || !known.length) return [];
209
+ if (mode === LineMarkers.Ends) return [.../* @__PURE__ */ new Set([known[0], known.at(-1)])];
210
+ if (mode === LineMarkers.Extrema) return this.extrema(known);
211
+ const stride = Math.ceil(known.length * 13 / Math.max(1, width));
212
+ return known.filter((_, i) => i % stride === 0);
213
+ }
214
+ extrema(known) {
215
+ const least = known.reduce((a, b) => b.y < a.y ? b : a), most = known.reduce((a, b) => b.y > a.y ? b : a);
216
+ return [.../* @__PURE__ */ new Set([least, most])];
217
+ }
218
+ markers(ctx, series, axes, mode) {
219
+ const width = ctx.plot.width - this.labelRoom();
220
+ this.dots(ctx, "markers", series.flatMap((s) => this.markerPoints(s, mode, width).map((p) => ({
221
+ key: `${s.key}/${p.order}`,
222
+ x: this.px(axes, p),
223
+ y: this.py(axes, p),
224
+ color: ctx.palette.color(s.key)
225
+ }))));
226
+ const notes = mode !== LineMarkers.Extrema ? [] : TrendLabels.reject(series.flatMap((s) => this.markerPoints(s, mode, width).map((p, i) => {
227
+ const y = this.py(axes, p), text = String(TrendHover.value(p.y)), w = text.length * 6.2, above = i === 1 || y > 20;
228
+ return {
229
+ key: `${s.key}/${p.order}`,
230
+ text,
231
+ w,
232
+ h: 12,
233
+ x: Math.min(width - w / 2, Math.max(w / 2, this.px(axes, p))),
234
+ y: Math.min(ctx.plot.height - 6, Math.max(6, above ? y - 12 : y + 13))
235
+ };
236
+ })));
237
+ const labels = ctx.text(ctx.marks("marker-notes", "text", notes, (d) => d.key)).attr("text-anchor", "middle").attr("dy", ".32em").text((d) => d.text);
238
+ ctx.set(labels, {
239
+ x: (d) => d.x,
240
+ y: (d) => d.y
241
+ }, {
242
+ x: (d) => d.x,
243
+ y: (d) => d.y
244
+ });
245
+ }
246
+ /** Names each series past its last point; a thin leader ties a label pushed aside to its line. */
247
+ endLabels(ctx, series, axes, color = (key) => ctx.palette.color(key)) {
248
+ const start = ctx.plot.width - this.labelRoom();
249
+ const ends = series.flatMap((s) => {
250
+ const last = s.points.filter(this.drawn).at(-1);
251
+ return last ? [{
252
+ key: s.key,
253
+ from: this.px(axes, last),
254
+ y: this.py(axes, last)
255
+ }] : [];
256
+ });
257
+ const placed = TrendLabels.dodge(ends, ctx.plot.height);
258
+ const leads = this.styleStroke(ctx.marks("label-leads", "path", placed, (d) => d.key), (d) => color(d.key)).attr("stroke-width", 1).attr("stroke-dasharray", "1 3");
259
+ ctx.set(leads, { d: (d) => `M${d.from},${d.y}L${start + 3},${d.y}L${start + 8},${d.at}` });
260
+ const labels = ctx.text(ctx.marks("labels", "text", placed, (d) => d.key)).attr("dy", ".32em").text((d) => TrendLabels.fit(d.key, this.labelRoom() - 12));
261
+ ctx.set(labels, {
262
+ x: start + 11,
263
+ y: (d) => d.at
264
+ }, {
265
+ x: start + 11,
266
+ y: (d) => d.at
267
+ });
268
+ }
269
+ /** A clip region for later marks: returns the value for their `clip-path` attribute. */
270
+ clipTo(ctx, name, d, parent = ctx.root) {
271
+ this.clipScope ||= ++TrendChart.clips;
272
+ const id = `trend-clip-${this.clipScope}-${name}`;
273
+ ctx.marks(`clip-${name}`, "clipPath", [d], void 0, parent).attr("id", id).selectAll("path").data([d]).join("path").attr("d", d);
274
+ return `url(#${id})`;
275
+ }
276
+ /** Attaches the hover columns; call last so they sit above every mark. */
277
+ hoverColumns(ctx, axes, series, source = {}) {
278
+ const slices = TrendHover.slices(series.map((s) => ({
279
+ ...s,
280
+ points: s.points.filter(this.drawn)
281
+ })), {
282
+ place: (point) => [this.px(axes, point), this.py(axes, point)],
283
+ color: (s) => ctx.palette.color(s.key),
284
+ value: (point) => TrendHover.value(point.raw === void 0 ? point.y : point.raw),
285
+ ...source
286
+ });
287
+ TrendHover.attach(ctx, slices, ctx.plot.width, ctx.plot.height);
288
+ }
289
+ };
290
+ export { TrendChart };
@@ -0,0 +1,55 @@
1
+ import { utcFormat } from "d3";
2
+ // src/charts/linesareas/TrendHover.ts
3
+ var dateTitle = utcFormat("%b %-d, %Y");
4
+ /** Column hit-areas over a plot, with a guide line and focus dots, so sparse thin lines stay easy to read. */
5
+ var TrendHover = class {
6
+ static title(x) {
7
+ return x instanceof Date ? dateTitle(x) : String(x);
8
+ }
9
+ static value(value) {
10
+ return value === null || value === void 0 ? "–" : +value.toFixed(Math.abs(value) < 10 ? 3 : 2);
11
+ }
12
+ /** One slice per distinct x across `series`. */
13
+ static slices(series, { place, color, value, title }) {
14
+ const slices = /* @__PURE__ */ new Map();
15
+ for (const line of series) for (const point of line.points) {
16
+ const at = point.y === null ? null : place(point, line);
17
+ if (!at) continue;
18
+ const entry = slices.get(point.order) ?? {
19
+ order: point.order,
20
+ slice: {
21
+ x: at[0],
22
+ title: title?.(point) ?? this.title(point.x),
23
+ rows: [],
24
+ marks: []
25
+ }
26
+ };
27
+ entry.slice.rows.push([line.key, value?.(point, line) ?? this.value(point.y)]);
28
+ entry.slice.marks.push({
29
+ x: at[0],
30
+ y: at[1],
31
+ color: color(line)
32
+ });
33
+ slices.set(point.order, entry);
34
+ }
35
+ return [...slices.values()].sort((a, b) => a.order - b.order).map((entry) => entry.slice);
36
+ }
37
+ static attach(ctx, slices, width, height, parent = ctx.root) {
38
+ const stride = Math.max(1, Math.ceil(slices.length / Math.max(1, width / 2)));
39
+ const kept = slices.filter((_, i) => i % stride === 0);
40
+ const edge = (i) => i <= 0 ? 0 : i >= kept.length ? width : (kept[i - 1].x + kept[i].x) / 2;
41
+ const guide = ctx.marks("hover-guide", "line", [0], void 0, parent).attr("y1", 0).attr("y2", height).attr("stroke", ctx.theme.axis).attr("stroke-width", 1).attr("opacity", 0).attr("pointer-events", "none");
42
+ const show = (slice) => {
43
+ guide.attr("opacity", slice ? 1 : 0).attr("x1", slice?.x ?? 0).attr("x2", slice?.x ?? 0);
44
+ ctx.marks("hover-dots", "circle", slice?.marks ?? [], void 0, parent).attr("cx", (d) => d.x).attr("cy", (d) => d.y).attr("r", 5).attr("fill", (d) => d.color).attr("stroke", ctx.theme.surface).attr("stroke-width", 2).attr("pointer-events", "none");
45
+ };
46
+ show(null);
47
+ const hits = ctx.marks("hover", "rect", kept, (_, i) => i, parent).attr("fill", "transparent").attr("x", (_, i) => edge(i)).attr("width", (_, i) => Math.max(0, edge(i + 1) - edge(i))).attr("y", 0).attr("height", height);
48
+ ctx.hover(hits, (slice) => ({
49
+ title: slice.title,
50
+ rows: slice.rows,
51
+ color: slice.marks.length === 1 ? slice.marks[0].color : void 0
52
+ })).style("cursor", "crosshair").on("pointermove.guide", (_, slice) => show(slice)).on("pointerleave.guide", () => show(null));
53
+ }
54
+ };
55
+ export { TrendHover };
@@ -0,0 +1,32 @@
1
+ // src/charts/linesareas/TrendLabels.ts
2
+ var CHAR = 6.2;
3
+ var ROW = 14;
4
+ /** Places direct labels so they never overlap, dropping what cannot fit. */
5
+ var TrendLabels = class {
6
+ /** Width that the longest label needs, capped so the plot keeps most of the chart. */
7
+ static room(texts, limit) {
8
+ return Math.min(limit, Math.ceil(Math.max(0, ...texts.map((text) => text.length * CHAR))) + 14);
9
+ }
10
+ static fit(text, width) {
11
+ const chars = Math.floor(width / CHAR);
12
+ return text.length <= chars ? text : `${text.slice(0, Math.max(1, chars - 1))}…`;
13
+ }
14
+ /** Spreads items along `0..height` keeping `gap` between them, nearest their wanted `y`. */
15
+ static dodge(items, height, gap = ROW) {
16
+ const kept = [...items].sort((a, b) => a.y - b.y).slice(0, Math.max(1, Math.floor(height / gap)));
17
+ const at = kept.map((item) => item.y);
18
+ for (let i = 0; i < at.length; i++) at[i] = Math.max(at[i], i ? at[i - 1] + gap : gap / 2);
19
+ for (let i = at.length - 1; i >= 0; i--) at[i] = Math.min(at[i], i === at.length - 1 ? height - gap / 2 : at[i + 1] - gap);
20
+ return kept.map((item, i) => ({
21
+ ...item,
22
+ at: at[i]
23
+ }));
24
+ }
25
+ /** Keeps items in priority order, skipping any box that would touch one already kept. */
26
+ static reject(items) {
27
+ const kept = [];
28
+ for (const item of items) if (!kept.some((other) => Math.abs(item.x - other.x) < (item.w + other.w) / 2 + 2 && Math.abs(item.y - other.y) < (item.h + other.h) / 2 + 1)) kept.push(item);
29
+ return kept;
30
+ }
31
+ };
32
+ export { TrendLabels };
@@ -0,0 +1,62 @@
1
+ import { deviation, mean, quantileSorted } from "d3";
2
+ // src/charts/linesareas/TrendMath.ts
3
+ var present = (points) => points.filter((point) => point.y !== null);
4
+ /** Numeric transforms shared by the line charts. Null values stay gaps throughout. */
5
+ var TrendMath = class {
6
+ /** Position on the diverging ramp for a signed amount: gains take the cool pole, losses the warm one. */
7
+ static polarity(sign, strength = .9) {
8
+ return -sign * strength;
9
+ }
10
+ /** Values of a series keyed by x position. */
11
+ static byOrder(series) {
12
+ return new Map(series.points.map((point) => [point.order, point.y]));
13
+ }
14
+ /** Sample reshaping: moves every series to start at `level`, removing the fixed offsets between them. */
15
+ static restart(rows, level) {
16
+ const start = /* @__PURE__ */ new Map();
17
+ return rows.map((row) => {
18
+ const name = row.series, value = row.value;
19
+ if (!start.has(name)) start.set(name, value);
20
+ return {
21
+ ...row,
22
+ value: +(level + value - start.get(name)).toFixed(2)
23
+ };
24
+ });
25
+ }
26
+ /** Centred moving average, shrinking at the ends. */
27
+ static movingAverage(points, window) {
28
+ const reach = Math.floor(window / 2);
29
+ return points.map((point, i) => ({
30
+ ...point,
31
+ y: mean(points.slice(Math.max(0, i - reach), i + reach + 1), (near) => near.y ?? void 0) ?? null
32
+ }));
33
+ }
34
+ /** Least-squares fit over x, returned as the fitted value at each point. */
35
+ static regression(points) {
36
+ const { slope, intercept } = this.fit(points);
37
+ return present(points).map((point) => ({
38
+ ...point,
39
+ y: intercept + slope * point.order
40
+ }));
41
+ }
42
+ static fit(points) {
43
+ const known = present(points);
44
+ const mx = mean(known, (point) => point.order) ?? 0, my = mean(known, (point) => point.y) ?? 0;
45
+ const spread = known.reduce((total, point) => total + (point.order - mx) ** 2, 0);
46
+ const slope = spread ? known.reduce((total, point) => total + (point.order - mx) * (point.y - my), 0) / spread : 0;
47
+ return {
48
+ slope,
49
+ intercept: my - slope * mx
50
+ };
51
+ }
52
+ static sorted(points) {
53
+ return present(points).map((point) => point.y).sort((a, b) => a - b);
54
+ }
55
+ static quantile(sorted, p) {
56
+ return sorted.length ? quantileSorted(sorted, p) : null;
57
+ }
58
+ static deviation(points) {
59
+ return deviation(present(points), (point) => point.y) ?? 0;
60
+ }
61
+ };
62
+ export { TrendMath };
@@ -0,0 +1,87 @@
1
+ import { LineAggregate } from "./LineEnums.js";
2
+ import { group, mean, scaleLinear, scalePoint, scaleUtc, sum } from "d3";
3
+ // src/charts/linesareas/TrendTable.ts
4
+ var TrendXKind = /* @__PURE__ */ function(TrendXKind) {
5
+ TrendXKind["Time"] = "time";
6
+ TrendXKind["Number"] = "number";
7
+ TrendXKind["Category"] = "category";
8
+ return TrendXKind;
9
+ }({});
10
+ var ISO_DATE = /^\d{4}-\d{2}(-\d{2})?/;
11
+ /** Long-form rows parsed into sorted series. Accepts dates, ISO strings, numbers or categories on x; bad y values become gaps. */
12
+ var TrendTable = class TrendTable {
13
+ kind;
14
+ series;
15
+ /** Every distinct x in axis order. */
16
+ xs;
17
+ constructor(rows, { x, y, series, aggregate }) {
18
+ const table = Array.isArray(rows) ? rows : [];
19
+ this.kind = TrendTable.classify(table.map((row) => row[x]));
20
+ const seen = /* @__PURE__ */ new Map();
21
+ const parsed = table.flatMap((row) => {
22
+ const place = this.locate(row[x], seen);
23
+ return place ? [{
24
+ ...place,
25
+ key: String(row[series] ?? y),
26
+ y: TrendTable.number(row[y])
27
+ }] : [];
28
+ });
29
+ this.series = [...group(parsed, (item) => item.key)].map(([key, items]) => ({
30
+ key,
31
+ points: [...group(items, (item) => item.order)].map(([order, same]) => ({
32
+ x: same[0].x,
33
+ order,
34
+ y: TrendTable.combine(same.map((item) => item.y), aggregate)
35
+ })).sort((a, b) => a.order - b.order)
36
+ }));
37
+ this.xs = [...new Map(parsed.map((item) => [item.order, {
38
+ x: item.x,
39
+ order: item.order,
40
+ y: null
41
+ }])).values()].sort((a, b) => a.order - b.order);
42
+ }
43
+ /** A numeric cell, or null for anything that cannot be drawn. */
44
+ static number(cell) {
45
+ if (cell === null || cell === void 0 || cell === "") return null;
46
+ const value = +cell;
47
+ return Number.isFinite(value) ? value : null;
48
+ }
49
+ xScale(range) {
50
+ const first = this.xs[0], last = this.xs.at(-1);
51
+ if (this.kind === "category") return scalePoint(this.xs.map((point) => String(point.x)), range);
52
+ if (this.kind === "time") return scaleUtc([first?.x ?? /* @__PURE__ */ new Date(0), last?.x ?? /* @__PURE__ */ new Date(1)], range);
53
+ return scaleLinear([first?.order ?? 0, last?.order ?? 1], range);
54
+ }
55
+ static classify(cells) {
56
+ const present = cells.filter((cell) => cell !== null && cell !== void 0 && cell !== "");
57
+ if (present.length && present.every((cell) => cell instanceof Date || typeof cell === "string" && ISO_DATE.test(cell))) return "time";
58
+ return present.every((cell) => typeof cell === "number" && Number.isFinite(cell)) ? "number" : "category";
59
+ }
60
+ locate(cell, seen) {
61
+ if (cell === null || cell === void 0 || cell === "") return null;
62
+ if (this.kind === "time") {
63
+ const date = cell instanceof Date ? cell : new Date(cell);
64
+ return Number.isNaN(+date) ? null : {
65
+ x: date,
66
+ order: +date
67
+ };
68
+ }
69
+ if (this.kind === "number") return {
70
+ x: cell,
71
+ order: cell
72
+ };
73
+ const label = String(cell);
74
+ if (!seen.has(label)) seen.set(label, seen.size);
75
+ return {
76
+ x: label,
77
+ order: seen.get(label)
78
+ };
79
+ }
80
+ static combine(values, aggregate) {
81
+ const present = values.filter((value) => value !== null);
82
+ if (!present.length) return null;
83
+ if (aggregate === LineAggregate.Sum) return sum(present);
84
+ return aggregate === LineAggregate.Last ? present.at(-1) : mean(present);
85
+ }
86
+ };
87
+ export { TrendTable, TrendXKind };