@sophistry/charts 0.0.0-stage → 0.0.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.
Files changed (427) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +32 -2
  3. package/dist/3d/bar-chart3d.d.ts +56 -0
  4. package/dist/3d/bar-chart3d.d.ts.map +1 -0
  5. package/dist/3d/definitions.d.ts +38 -0
  6. package/dist/3d/definitions.d.ts.map +1 -0
  7. package/dist/3d/definitions.js +14 -0
  8. package/dist/3d/forward.d.ts +65 -0
  9. package/dist/3d/forward.d.ts.map +1 -0
  10. package/dist/3d/index.d.ts +31 -0
  11. package/dist/3d/index.d.ts.map +1 -0
  12. package/dist/3d/index.js +1 -0
  13. package/dist/3d/quiver3d.d.ts +53 -0
  14. package/dist/3d/quiver3d.d.ts.map +1 -0
  15. package/dist/3d/scatter3d.d.ts +45 -0
  16. package/dist/3d/scatter3d.d.ts.map +1 -0
  17. package/dist/3d/stem3d.d.ts +46 -0
  18. package/dist/3d/stem3d.d.ts.map +1 -0
  19. package/dist/3d/surface-grid3d.d.ts +34 -0
  20. package/dist/3d/surface-grid3d.d.ts.map +1 -0
  21. package/dist/3d/tri-surface3d.d.ts +46 -0
  22. package/dist/3d/tri-surface3d.d.ts.map +1 -0
  23. package/dist/3d/voxels3d.d.ts +26 -0
  24. package/dist/3d/voxels3d.d.ts.map +1 -0
  25. package/dist/3d/wireframe3d.d.ts +31 -0
  26. package/dist/3d/wireframe3d.d.ts.map +1 -0
  27. package/dist/band.d.ts +21 -0
  28. package/dist/band.d.ts.map +1 -0
  29. package/dist/bars/bar-chart.d.ts +144 -0
  30. package/dist/bars/bar-chart.d.ts.map +1 -0
  31. package/dist/bars/bar-labels.d.ts +117 -0
  32. package/dist/bars/bar-labels.d.ts.map +1 -0
  33. package/dist/bars/bars.d.ts +224 -0
  34. package/dist/bars/bars.d.ts.map +1 -0
  35. package/dist/bars/bullet.d.ts +158 -0
  36. package/dist/bars/bullet.d.ts.map +1 -0
  37. package/dist/bars/candlestick.d.ts +98 -0
  38. package/dist/bars/candlestick.d.ts.map +1 -0
  39. package/dist/bars/funnel.d.ts +91 -0
  40. package/dist/bars/funnel.d.ts.map +1 -0
  41. package/dist/bars/histogram.d.ts +109 -0
  42. package/dist/bars/histogram.d.ts.map +1 -0
  43. package/dist/bars/index.d.ts +23 -0
  44. package/dist/bars/index.d.ts.map +1 -0
  45. package/dist/bars/race.d.ts +29 -0
  46. package/dist/bars/race.d.ts.map +1 -0
  47. package/dist/bars/rules.d.ts +122 -0
  48. package/dist/bars/rules.d.ts.map +1 -0
  49. package/dist/bars/shared.d.ts +42 -0
  50. package/dist/bars/shared.d.ts.map +1 -0
  51. package/dist/bars/transforms.d.ts +250 -0
  52. package/dist/bars/transforms.d.ts.map +1 -0
  53. package/dist/bars/waterfall.d.ts +107 -0
  54. package/dist/bars/waterfall.d.ts.map +1 -0
  55. package/dist/batch.d.ts +143 -0
  56. package/dist/batch.d.ts.map +1 -0
  57. package/dist/channels-_Xf-p6Lx.js +56 -0
  58. package/dist/chart.d.ts +88 -0
  59. package/dist/chart.d.ts.map +1 -0
  60. package/dist/color-norm.d.ts +91 -0
  61. package/dist/color-norm.d.ts.map +1 -0
  62. package/dist/context.d.ts +112 -0
  63. package/dist/context.d.ts.map +1 -0
  64. package/dist/curves/density.d.ts +126 -0
  65. package/dist/curves/density.d.ts.map +1 -0
  66. package/dist/curves/ecdf.d.ts +73 -0
  67. package/dist/curves/ecdf.d.ts.map +1 -0
  68. package/dist/curves/fill-between.d.ts +101 -0
  69. package/dist/curves/fill-between.d.ts.map +1 -0
  70. package/dist/curves/index.d.ts +16 -0
  71. package/dist/curves/index.d.ts.map +1 -0
  72. package/dist/curves/line-plot.d.ts +105 -0
  73. package/dist/curves/line-plot.d.ts.map +1 -0
  74. package/dist/curves/regression.d.ts +125 -0
  75. package/dist/curves/regression.d.ts.map +1 -0
  76. package/dist/curves/shared.d.ts +53 -0
  77. package/dist/curves/shared.d.ts.map +1 -0
  78. package/dist/curves/stack-plot.d.ts +141 -0
  79. package/dist/curves/stack-plot.d.ts.map +1 -0
  80. package/dist/curves/stairs.d.ts +171 -0
  81. package/dist/curves/stairs.d.ts.map +1 -0
  82. package/dist/data/channels.d.ts +171 -0
  83. package/dist/data/channels.d.ts.map +1 -0
  84. package/dist/end-space.d.ts +82 -0
  85. package/dist/end-space.d.ts.map +1 -0
  86. package/dist/entries/definitions.d.ts +21 -0
  87. package/dist/entries/definitions.d.ts.map +1 -0
  88. package/dist/entries/definitions.js +6 -0
  89. package/dist/frame/band-axis.d.ts +43 -0
  90. package/dist/frame/band-axis.d.ts.map +1 -0
  91. package/dist/frame/coords.d.ts +112 -0
  92. package/dist/frame/coords.d.ts.map +1 -0
  93. package/dist/frame/fit.d.ts +171 -0
  94. package/dist/frame/fit.d.ts.map +1 -0
  95. package/dist/frame/format.d.ts +41 -0
  96. package/dist/frame/format.d.ts.map +1 -0
  97. package/dist/frame/guide-metrics.d.ts +37 -0
  98. package/dist/frame/guide-metrics.d.ts.map +1 -0
  99. package/dist/frame/guides.d.ts +68 -0
  100. package/dist/frame/guides.d.ts.map +1 -0
  101. package/dist/frame/keys.d.ts +97 -0
  102. package/dist/frame/keys.d.ts.map +1 -0
  103. package/dist/frame/layout.d.ts +146 -0
  104. package/dist/frame/layout.d.ts.map +1 -0
  105. package/dist/frame/registry.d.ts +32 -0
  106. package/dist/frame/registry.d.ts.map +1 -0
  107. package/dist/frame/reports.d.ts +54 -0
  108. package/dist/frame/reports.d.ts.map +1 -0
  109. package/dist/frame/secondary-axes.d.ts +74 -0
  110. package/dist/frame/secondary-axes.d.ts.map +1 -0
  111. package/dist/frame/secondary.d.ts +57 -0
  112. package/dist/frame/secondary.d.ts.map +1 -0
  113. package/dist/frame/tooltip-overlay.d.ts +65 -0
  114. package/dist/frame/tooltip-overlay.d.ts.map +1 -0
  115. package/dist/frame/types.d.ts +659 -0
  116. package/dist/frame/types.d.ts.map +1 -0
  117. package/dist/grids/barbs.d.ts +52 -0
  118. package/dist/grids/barbs.d.ts.map +1 -0
  119. package/dist/grids/cell-rects.d.ts +38 -0
  120. package/dist/grids/cell-rects.d.ts.map +1 -0
  121. package/dist/grids/cells.d.ts +131 -0
  122. package/dist/grids/cells.d.ts.map +1 -0
  123. package/dist/grids/contour-f.d.ts +81 -0
  124. package/dist/grids/contour-f.d.ts.map +1 -0
  125. package/dist/grids/contour-shared.d.ts +54 -0
  126. package/dist/grids/contour-shared.d.ts.map +1 -0
  127. package/dist/grids/contour.d.ts +85 -0
  128. package/dist/grids/contour.d.ts.map +1 -0
  129. package/dist/grids/dendrogram.d.ts +105 -0
  130. package/dist/grids/dendrogram.d.ts.map +1 -0
  131. package/dist/grids/heatmap.d.ts +164 -0
  132. package/dist/grids/heatmap.d.ts.map +1 -0
  133. package/dist/grids/hex-bin.d.ts +94 -0
  134. package/dist/grids/hex-bin.d.ts.map +1 -0
  135. package/dist/grids/hist2d.d.ts +108 -0
  136. package/dist/grids/hist2d.d.ts.map +1 -0
  137. package/dist/grids/imshow.d.ts +85 -0
  138. package/dist/grids/imshow.d.ts.map +1 -0
  139. package/dist/grids/index.d.ts +27 -0
  140. package/dist/grids/index.d.ts.map +1 -0
  141. package/dist/grids/pcolormesh.d.ts +91 -0
  142. package/dist/grids/pcolormesh.d.ts.map +1 -0
  143. package/dist/grids/ramp-cells.d.ts +67 -0
  144. package/dist/grids/ramp-cells.d.ts.map +1 -0
  145. package/dist/grids/tri-contour.d.ts +121 -0
  146. package/dist/grids/tri-contour.d.ts.map +1 -0
  147. package/dist/grids/tri-shared.d.ts +62 -0
  148. package/dist/grids/tri-shared.d.ts.map +1 -0
  149. package/dist/grids/tripcolor.d.ts +74 -0
  150. package/dist/grids/tripcolor.d.ts.map +1 -0
  151. package/dist/guides/colorbar.d.ts +111 -0
  152. package/dist/guides/colorbar.d.ts.map +1 -0
  153. package/dist/guides/index.d.ts +12 -0
  154. package/dist/guides/index.d.ts.map +1 -0
  155. package/dist/guides/legend.d.ts +119 -0
  156. package/dist/guides/legend.d.ts.map +1 -0
  157. package/dist/guides/nodes.d.ts +14 -0
  158. package/dist/guides/nodes.d.ts.map +1 -0
  159. package/dist/guides/size-legend.d.ts +234 -0
  160. package/dist/guides/size-legend.d.ts.map +1 -0
  161. package/dist/hierarchy/breadcrumbs.d.ts +134 -0
  162. package/dist/hierarchy/breadcrumbs.d.ts.map +1 -0
  163. package/dist/hierarchy/circle-pack.d.ts +73 -0
  164. package/dist/hierarchy/circle-pack.d.ts.map +1 -0
  165. package/dist/hierarchy/drill.d.ts +246 -0
  166. package/dist/hierarchy/drill.d.ts.map +1 -0
  167. package/dist/hierarchy/frame.d.ts +68 -0
  168. package/dist/hierarchy/frame.d.ts.map +1 -0
  169. package/dist/hierarchy/icicle.d.ts +77 -0
  170. package/dist/hierarchy/icicle.d.ts.map +1 -0
  171. package/dist/hierarchy/index.d.ts +21 -0
  172. package/dist/hierarchy/index.d.ts.map +1 -0
  173. package/dist/hierarchy/labels.d.ts +25 -0
  174. package/dist/hierarchy/labels.d.ts.map +1 -0
  175. package/dist/hierarchy/mosaic.d.ts +131 -0
  176. package/dist/hierarchy/mosaic.d.ts.map +1 -0
  177. package/dist/hierarchy/own-tooltip.d.ts +13 -0
  178. package/dist/hierarchy/own-tooltip.d.ts.map +1 -0
  179. package/dist/hierarchy/props.d.ts +14 -0
  180. package/dist/hierarchy/props.d.ts.map +1 -0
  181. package/dist/hierarchy/sankey.d.ts +133 -0
  182. package/dist/hierarchy/sankey.d.ts.map +1 -0
  183. package/dist/hierarchy/shared.d.ts +248 -0
  184. package/dist/hierarchy/shared.d.ts.map +1 -0
  185. package/dist/hierarchy/sunburst.d.ts +75 -0
  186. package/dist/hierarchy/sunburst.d.ts.map +1 -0
  187. package/dist/hierarchy/tree.d.ts +125 -0
  188. package/dist/hierarchy/tree.d.ts.map +1 -0
  189. package/dist/hierarchy/treemap.d.ts +77 -0
  190. package/dist/hierarchy/treemap.d.ts.map +1 -0
  191. package/dist/index.d.ts +30 -0
  192. package/dist/index.d.ts.map +1 -0
  193. package/dist/index.js +5 -0
  194. package/dist/item-tooltip.d.ts +34 -0
  195. package/dist/item-tooltip.d.ts.map +1 -0
  196. package/dist/join.d.ts +224 -0
  197. package/dist/join.d.ts.map +1 -0
  198. package/dist/math/3d/bar3d.d.ts +28 -0
  199. package/dist/math/3d/bar3d.d.ts.map +1 -0
  200. package/dist/math/3d/quiver3d.d.ts +27 -0
  201. package/dist/math/3d/quiver3d.d.ts.map +1 -0
  202. package/dist/math/3d/scatter3d.d.ts +16 -0
  203. package/dist/math/3d/scatter3d.d.ts.map +1 -0
  204. package/dist/math/3d/stem3d.d.ts +23 -0
  205. package/dist/math/3d/stem3d.d.ts.map +1 -0
  206. package/dist/math/3d/surfaceGrid3d.d.ts +34 -0
  207. package/dist/math/3d/surfaceGrid3d.d.ts.map +1 -0
  208. package/dist/math/3d/trisurface.d.ts +12 -0
  209. package/dist/math/3d/trisurface.d.ts.map +1 -0
  210. package/dist/math/3d/voxels.d.ts +18 -0
  211. package/dist/math/3d/voxels.d.ts.map +1 -0
  212. package/dist/math/aggregate.d.ts +69 -0
  213. package/dist/math/aggregate.d.ts.map +1 -0
  214. package/dist/math/bar.d.ts +32 -0
  215. package/dist/math/bar.d.ts.map +1 -0
  216. package/dist/math/barLabels.d.ts +84 -0
  217. package/dist/math/barLabels.d.ts.map +1 -0
  218. package/dist/math/barbs.d.ts +37 -0
  219. package/dist/math/barbs.d.ts.map +1 -0
  220. package/dist/math/boxplot.d.ts +37 -0
  221. package/dist/math/boxplot.d.ts.map +1 -0
  222. package/dist/math/breadcrumbs.d.ts +129 -0
  223. package/dist/math/breadcrumbs.d.ts.map +1 -0
  224. package/dist/math/bubble.d.ts +39 -0
  225. package/dist/math/bubble.d.ts.map +1 -0
  226. package/dist/math/bullet.d.ts +111 -0
  227. package/dist/math/bullet.d.ts.map +1 -0
  228. package/dist/math/chord.d.ts +104 -0
  229. package/dist/math/chord.d.ts.map +1 -0
  230. package/dist/math/cluster.d.ts +89 -0
  231. package/dist/math/cluster.d.ts.map +1 -0
  232. package/dist/math/contour.d.ts +49 -0
  233. package/dist/math/contour.d.ts.map +1 -0
  234. package/dist/math/contourf.d.ts +51 -0
  235. package/dist/math/contourf.d.ts.map +1 -0
  236. package/dist/math/dodge.d.ts +37 -0
  237. package/dist/math/dodge.d.ts.map +1 -0
  238. package/dist/math/ecdf.d.ts +42 -0
  239. package/dist/math/ecdf.d.ts.map +1 -0
  240. package/dist/math/errorbar.d.ts +28 -0
  241. package/dist/math/errorbar.d.ts.map +1 -0
  242. package/dist/math/eventplot.d.ts +27 -0
  243. package/dist/math/eventplot.d.ts.map +1 -0
  244. package/dist/math/facet.d.ts +91 -0
  245. package/dist/math/facet.d.ts.map +1 -0
  246. package/dist/math/fillBetween.d.ts +29 -0
  247. package/dist/math/fillBetween.d.ts.map +1 -0
  248. package/dist/math/gauge.d.ts +72 -0
  249. package/dist/math/gauge.d.ts.map +1 -0
  250. package/dist/math/hexbin.d.ts +21 -0
  251. package/dist/math/hexbin.d.ts.map +1 -0
  252. package/dist/math/hierarchy.d.ts +180 -0
  253. package/dist/math/hierarchy.d.ts.map +1 -0
  254. package/dist/math/hierarchyJoin.d.ts +60 -0
  255. package/dist/math/hierarchyJoin.d.ts.map +1 -0
  256. package/dist/math/histogram.d.ts +37 -0
  257. package/dist/math/histogram.d.ts.map +1 -0
  258. package/dist/math/histogram2d.d.ts +45 -0
  259. package/dist/math/histogram2d.d.ts.map +1 -0
  260. package/dist/math/imshow.d.ts +27 -0
  261. package/dist/math/imshow.d.ts.map +1 -0
  262. package/dist/math/index.d.ts +140 -0
  263. package/dist/math/index.d.ts.map +1 -0
  264. package/dist/math/index.js +3 -0
  265. package/dist/math/jitter.d.ts +17 -0
  266. package/dist/math/jitter.d.ts.map +1 -0
  267. package/dist/math/join.d.ts +136 -0
  268. package/dist/math/join.d.ts.map +1 -0
  269. package/dist/math/keyframes.d.ts +128 -0
  270. package/dist/math/keyframes.d.ts.map +1 -0
  271. package/dist/math/legend.d.ts +121 -0
  272. package/dist/math/legend.d.ts.map +1 -0
  273. package/dist/math/line.d.ts +54 -0
  274. package/dist/math/line.d.ts.map +1 -0
  275. package/dist/math/morph.d.ts +82 -0
  276. package/dist/math/morph.d.ts.map +1 -0
  277. package/dist/math/mosaic.d.ts +120 -0
  278. package/dist/math/mosaic.d.ts.map +1 -0
  279. package/dist/math/ordinal.d.ts +80 -0
  280. package/dist/math/ordinal.d.ts.map +1 -0
  281. package/dist/math/parallel.d.ts +39 -0
  282. package/dist/math/parallel.d.ts.map +1 -0
  283. package/dist/math/pcolormesh.d.ts +23 -0
  284. package/dist/math/pcolormesh.d.ts.map +1 -0
  285. package/dist/math/pie.d.ts +106 -0
  286. package/dist/math/pie.d.ts.map +1 -0
  287. package/dist/math/polarArea.d.ts +35 -0
  288. package/dist/math/polarArea.d.ts.map +1 -0
  289. package/dist/math/radar.d.ts +111 -0
  290. package/dist/math/radar.d.ts.map +1 -0
  291. package/dist/math/range.d.ts +99 -0
  292. package/dist/math/range.d.ts.map +1 -0
  293. package/dist/math/regression.d.ts +110 -0
  294. package/dist/math/regression.d.ts.map +1 -0
  295. package/dist/math/reveal.d.ts +64 -0
  296. package/dist/math/reveal.d.ts.map +1 -0
  297. package/dist/math/sankey.d.ts +155 -0
  298. package/dist/math/sankey.d.ts.map +1 -0
  299. package/dist/math/scatter.d.ts +15 -0
  300. package/dist/math/scatter.d.ts.map +1 -0
  301. package/dist/math/shared/binning.d.ts +24 -0
  302. package/dist/math/shared/binning.d.ts.map +1 -0
  303. package/dist/math/shared/gridCells.d.ts +42 -0
  304. package/dist/math/shared/gridCells.d.ts.map +1 -0
  305. package/dist/math/shared/gridExtent.d.ts +6 -0
  306. package/dist/math/shared/gridExtent.d.ts.map +1 -0
  307. package/dist/math/shared/pairs.d.ts +3 -0
  308. package/dist/math/shared/pairs.d.ts.map +1 -0
  309. package/dist/math/shared/polar.d.ts +24 -0
  310. package/dist/math/shared/polar.d.ts.map +1 -0
  311. package/dist/math/stack.d.ts +70 -0
  312. package/dist/math/stack.d.ts.map +1 -0
  313. package/dist/math/stackplot.d.ts +36 -0
  314. package/dist/math/stackplot.d.ts.map +1 -0
  315. package/dist/math/stairs.d.ts +18 -0
  316. package/dist/math/stairs.d.ts.map +1 -0
  317. package/dist/math/stem.d.ts +22 -0
  318. package/dist/math/stem.d.ts.map +1 -0
  319. package/dist/math/symbol.d.ts +26 -0
  320. package/dist/math/symbol.d.ts.map +1 -0
  321. package/dist/math/tree.d.ts +118 -0
  322. package/dist/math/tree.d.ts.map +1 -0
  323. package/dist/math/tricontour.d.ts +77 -0
  324. package/dist/math/tricontour.d.ts.map +1 -0
  325. package/dist/math/violin.d.ts +100 -0
  326. package/dist/math/violin.d.ts.map +1 -0
  327. package/dist/math/waffle.d.ts +49 -0
  328. package/dist/math/waffle.d.ts.map +1 -0
  329. package/dist/math/waterfall.d.ts +29 -0
  330. package/dist/math/waterfall.d.ts.map +1 -0
  331. package/dist/math-CSHNpGej.js +3648 -0
  332. package/dist/mix.d.ts +25 -0
  333. package/dist/mix.d.ts.map +1 -0
  334. package/dist/multiview/brush.d.ts +166 -0
  335. package/dist/multiview/brush.d.ts.map +1 -0
  336. package/dist/multiview/chart-group.d.ts +266 -0
  337. package/dist/multiview/chart-group.d.ts.map +1 -0
  338. package/dist/multiview/chart-link.d.ts +189 -0
  339. package/dist/multiview/chart-link.d.ts.map +1 -0
  340. package/dist/multiview/chart-zoom.d.ts +145 -0
  341. package/dist/multiview/chart-zoom.d.ts.map +1 -0
  342. package/dist/multiview/facet.d.ts +239 -0
  343. package/dist/multiview/facet.d.ts.map +1 -0
  344. package/dist/multiview/group-guides.d.ts +100 -0
  345. package/dist/multiview/group-guides.d.ts.map +1 -0
  346. package/dist/multiview/index.d.ts +18 -0
  347. package/dist/multiview/index.d.ts.map +1 -0
  348. package/dist/multiview/joint-plot.d.ts +115 -0
  349. package/dist/multiview/joint-plot.d.ts.map +1 -0
  350. package/dist/multiview/pair-plot.d.ts +154 -0
  351. package/dist/multiview/pair-plot.d.ts.map +1 -0
  352. package/dist/multiview/panels.d.ts +23 -0
  353. package/dist/multiview/panels.d.ts.map +1 -0
  354. package/dist/multiview/parallel-coordinates.d.ts +110 -0
  355. package/dist/multiview/parallel-coordinates.d.ts.map +1 -0
  356. package/dist/points/event-plot.d.ts +68 -0
  357. package/dist/points/event-plot.d.ts.map +1 -0
  358. package/dist/points/index.d.ts +20 -0
  359. package/dist/points/index.d.ts.map +1 -0
  360. package/dist/points/labels.d.ts +71 -0
  361. package/dist/points/labels.d.ts.map +1 -0
  362. package/dist/points/links.d.ts +124 -0
  363. package/dist/points/links.d.ts.map +1 -0
  364. package/dist/points/rects.d.ts +81 -0
  365. package/dist/points/rects.d.ts.map +1 -0
  366. package/dist/points/rug.d.ts +73 -0
  367. package/dist/points/rug.d.ts.map +1 -0
  368. package/dist/points/scatter.d.ts +170 -0
  369. package/dist/points/scatter.d.ts.map +1 -0
  370. package/dist/points/segment-marks.d.ts +40 -0
  371. package/dist/points/segment-marks.d.ts.map +1 -0
  372. package/dist/points/shared.d.ts +35 -0
  373. package/dist/points/shared.d.ts.map +1 -0
  374. package/dist/points/stem.d.ts +76 -0
  375. package/dist/points/stem.d.ts.map +1 -0
  376. package/dist/points/strip.d.ts +146 -0
  377. package/dist/points/strip.d.ts.map +1 -0
  378. package/dist/points/symbol-marker.d.ts +34 -0
  379. package/dist/points/symbol-marker.d.ts.map +1 -0
  380. package/dist/points/ticks.d.ts +103 -0
  381. package/dist/points/ticks.d.ts.map +1 -0
  382. package/dist/props.d.ts +127 -0
  383. package/dist/props.d.ts.map +1 -0
  384. package/dist/radial/chord.d.ts +149 -0
  385. package/dist/radial/chord.d.ts.map +1 -0
  386. package/dist/radial/gauge.d.ts +127 -0
  387. package/dist/radial/gauge.d.ts.map +1 -0
  388. package/dist/radial/index.d.ts +16 -0
  389. package/dist/radial/index.d.ts.map +1 -0
  390. package/dist/radial/pie-chart.d.ts +144 -0
  391. package/dist/radial/pie-chart.d.ts.map +1 -0
  392. package/dist/radial/polar-area-chart.d.ts +136 -0
  393. package/dist/radial/polar-area-chart.d.ts.map +1 -0
  394. package/dist/radial/radar-chart.d.ts +177 -0
  395. package/dist/radial/radar-chart.d.ts.map +1 -0
  396. package/dist/radial/radial-bar-chart.d.ts +117 -0
  397. package/dist/radial/radial-bar-chart.d.ts.map +1 -0
  398. package/dist/radial/shared.d.ts +79 -0
  399. package/dist/radial/shared.d.ts.map +1 -0
  400. package/dist/radial/waffle.d.ts +131 -0
  401. package/dist/radial/waffle.d.ts.map +1 -0
  402. package/dist/raster.d.ts +44 -0
  403. package/dist/raster.d.ts.map +1 -0
  404. package/dist/series.d.ts +72 -0
  405. package/dist/series.d.ts.map +1 -0
  406. package/dist/src-CwGo1bes.js +19221 -0
  407. package/dist/stagger.d.ts +55 -0
  408. package/dist/stagger.d.ts.map +1 -0
  409. package/dist/statistics/box-plot.d.ts +152 -0
  410. package/dist/statistics/box-plot.d.ts.map +1 -0
  411. package/dist/statistics/error-bar.d.ts +149 -0
  412. package/dist/statistics/error-bar.d.ts.map +1 -0
  413. package/dist/statistics/groups.d.ts +141 -0
  414. package/dist/statistics/groups.d.ts.map +1 -0
  415. package/dist/statistics/index.d.ts +8 -0
  416. package/dist/statistics/index.d.ts.map +1 -0
  417. package/dist/statistics/violin-plot.d.ts +144 -0
  418. package/dist/statistics/violin-plot.d.ts.map +1 -0
  419. package/dist/text-width.d.ts +10 -0
  420. package/dist/text-width.d.ts.map +1 -0
  421. package/dist/tooltip.d.ts +277 -0
  422. package/dist/tooltip.d.ts.map +1 -0
  423. package/dist/util.d.ts +34 -0
  424. package/dist/util.d.ts.map +1 -0
  425. package/dist/voxels-9lJ2TZS4.js +235 -0
  426. package/dist/wireframe3d-D157GZAq.js +345 -0
  427. package/package.json +86 -3
@@ -0,0 +1,154 @@
1
+ /**
2
+ * A scatter-plot matrix: every pair of variables against each other, with
3
+ * each variable's distribution on the diagonal. One `chart` per panel in
4
+ * one group: columns share x, rows share y.
5
+ */
6
+ import type { SceneNode } from "@sophistry/core";
7
+ import type { BandKey, Point } from "@sophistry/core/geometry";
8
+ import type { Channel } from "../data/channels";
9
+ import type { ChartAxisOptions, ChartColorOptions } from "../frame/types";
10
+ import type { FacetSpace } from "./facet";
11
+ /**
12
+ * An off-diagonal panel of a {@link pairPlot}, as `offDiagonal` receives it.
13
+ *
14
+ * @category Charts
15
+ */
16
+ export interface PairPanel<T> {
17
+ /** Every row. */
18
+ data: readonly T[];
19
+ /** The variable on this panel's x axis (its column's). */
20
+ x: string;
21
+ /** The variable on its y axis (its row's). */
22
+ y: string;
23
+ /** Grid row, from the top. */
24
+ row: number;
25
+ /** Grid column, from the left. */
26
+ column: number;
27
+ }
28
+ /**
29
+ * Props for {@link pairPlot}.
30
+ *
31
+ * @category Charts
32
+ */
33
+ export interface PairPlotProps<T> {
34
+ /** The rows. */
35
+ data: readonly T[];
36
+ /** The numeric fields to pair, in order: the matrix's rows (top to bottom) and columns (left to right). */
37
+ variables: readonly string[];
38
+ /** A variable's title under its column and beside its row. Defaults to its name. */
39
+ variableLabels?: Partial<Record<string, string>>;
40
+ /** Splits the points and the diagonal's densities by category, one colour each, keyed by one legend. */
41
+ series?: Channel<T, BandKey>;
42
+ /** The points' identity channel, as `scatter`'s `key`. */
43
+ key?: Channel<T, BandKey>;
44
+ /** Width of the matrix of plots (a legend fits inside; see `autosize`). */
45
+ width: number;
46
+ /** Height of the matrix of plots. */
47
+ height: number;
48
+ /** Centre of the matrix. Defaults to the origin. */
49
+ center?: Point;
50
+ /**
51
+ * Space between neighbouring panels.
52
+ * @default 0.35
53
+ */
54
+ gap?: number;
55
+ /** Relative column widths, left to right (one per variable), as `facet`'s `widths`. */
56
+ widths?: readonly number[];
57
+ /** Relative row heights, top to bottom, as `facet`'s `heights`. */
58
+ heights?: readonly number[];
59
+ /**
60
+ * `"free"` sizes each column and row by its variable's range (or per axis), so one unit is one
61
+ * length across the matrix. As `facet`'s `space`; `widths`/`heights` win.
62
+ * @default "fixed"
63
+ */
64
+ space?: FacetSpace;
65
+ /**
66
+ * What the diagonal draws: `"density"` (one curve per series), `"histogram"` (bins of the whole
67
+ * sample), or `false` for nothing.
68
+ * @default "density"
69
+ */
70
+ diag?: "density" | "histogram" | false;
71
+ /** Histogram diagonal: how many bins. */
72
+ binCount?: number;
73
+ /**
74
+ * Draw only the lower triangle and the diagonal. Read once, at creation.
75
+ * @default false
76
+ */
77
+ corner?: boolean;
78
+ /**
79
+ * Marker radius.
80
+ * @default 0.05
81
+ */
82
+ radius?: number;
83
+ /**
84
+ * Draws an off-diagonal panel's layers instead of the default scatter: a function returning
85
+ * layer nodes, called when the panel is made and when `data` changes. A plain value prop; the
86
+ * bindings pass it through untouched.
87
+ */
88
+ offDiagonal?: (panel: PairPanel<T>) => readonly SceneNode[];
89
+ /** Every panel's axes (tick options, `nice`, `zero`, ...). */
90
+ axis?: ChartAxisOptions;
91
+ grid?: boolean | "x" | "y";
92
+ /**
93
+ * As `chart`'s `autosize`, over the whole matrix.
94
+ * @default "fit"
95
+ */
96
+ autosize?: "fit" | "pad" | "contain";
97
+ color?: ChartColorOptions;
98
+ /**
99
+ * One legend: on the right (`true`, `"right"`) or in a row over the matrix (`"top"`).
100
+ * On the right by default when `series` is given.
101
+ */
102
+ legend?: boolean | "right" | "top";
103
+ legendTitle?: string;
104
+ legendFontSize?: number;
105
+ title?: string;
106
+ titleFontSize?: number;
107
+ /**
108
+ * Font size of the variables' titles.
109
+ * @default 0.3
110
+ */
111
+ labelFontSize?: number;
112
+ /**
113
+ * Reveal, 0..1: every panel's frame, then the data (see `stagger`), then the legend.
114
+ * @see https://sophistry.dev/guides/chart-animation/#reveals
115
+ */
116
+ progress?: number;
117
+ /**
118
+ * Fraction of the data reveal spent staggering panels in reading order, 0..0.95.
119
+ * @default 0
120
+ */
121
+ stagger?: number;
122
+ zIndex?: number;
123
+ visible?: boolean;
124
+ }
125
+ /**
126
+ * A pair plot (scatter-plot matrix): panel (row `i`, column `j`) plots `variables[j]` against
127
+ * `variables[i]`, and the diagonal shows each variable's distribution. Columns share x scales
128
+ * and rows share y scales, so a point lines up across the matrix; a `series` is one colour
129
+ * everywhere with one legend.
130
+ *
131
+ * @example
132
+ * ```ts
133
+ * import { pairPlot } from "@sophistry/charts";
134
+ *
135
+ * const flowers = [
136
+ * { kind: "iris", petal: 1.4, sepal: 5.1, width: 3.5 },
137
+ * { kind: "iris", petal: 1.3, sepal: 4.9, width: 3 },
138
+ * { kind: "lily", petal: 4.7, sepal: 7, width: 3.2 },
139
+ * { kind: "lily", petal: 4.5, sepal: 6.4, width: 3.2 },
140
+ * ];
141
+ * pairPlot.create({
142
+ * data: flowers,
143
+ * variables: ["petal", "sepal", "width"],
144
+ * series: "kind",
145
+ * width: 6,
146
+ * height: 6,
147
+ * });
148
+ * ```
149
+ *
150
+ * @see https://sophistry.dev/guides/charts/#multiple-views
151
+ * @category Charts
152
+ */
153
+ export declare const pairPlot: import("@sophistry/core").Definition<PairPlotProps<any>, import("@sophistry/core/internal").CompositeNode<PairPlotProps<any>>, keyof PairPlotProps<any>>;
154
+ //# sourceMappingURL=pair-plot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pair-plot.d.ts","sourceRoot":"","sources":["../../src/multiview/pair-plot.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ /**
2
+ * What the grid presets (`pairPlot`, `jointPlot`) share: a panel is a
3
+ * `chart` inside a plain `group` that provides its group scope. Internal.
4
+ */
5
+ import type { CompositeContext, ContainerNode, SceneNode } from "@sophistry/core";
6
+ import type { SideRoom } from "../math/facet";
7
+ import type { ChartGroup, ChartGroupScope } from "./chart-group";
8
+ /** A panel's nodes: the wrapper providing its scope, and its chart. */
9
+ export interface PanelNodes {
10
+ wrapper: ContainerNode;
11
+ plot: SceneNode;
12
+ }
13
+ /** Makes a panel: a chart with `children`, inside a group providing `scope`. */
14
+ export declare function makePanel(scope: ChartGroupScope, children: readonly SceneNode[]): PanelNodes;
15
+ /**
16
+ * The room kept free around a preset's grid of plots, inside its
17
+ * footprint, by `autosize`: none (`"pad"`), the right-hand guides
18
+ * (`"fit"`), or every side (`"contain"`).
19
+ */
20
+ export declare function outerRoom(autosize: "fit" | "pad" | "contain" | undefined, panels: SideRoom, own: SideRoom, contained?: SideRoom): SideRoom;
21
+ /** Watches a preset's group: reruns its update when a panel published something new. */
22
+ export declare function watchGroup<P>(ctx: CompositeContext<P>, group: ChartGroup, reason: Parameters<CompositeContext<P>["invalidate"]>[0]): void;
23
+ //# sourceMappingURL=panels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"panels.d.ts","sourceRoot":"","sources":["../../src/multiview/panels.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EACX,gBAAgB,EAChB,aAAa,EACb,SAAS,EACT,MAAM,iBAAiB,CAAC;AAGzB,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,KAAK,EAAE,UAAU,EAAE,eAAe,EAAE,MAAM,eAAe,CAAC;AAGjE,uEAAuE;AACvE,MAAM,WAAW,UAAU;IAC1B,OAAO,EAAE,aAAa,CAAC;IACvB,IAAI,EAAE,SAAS,CAAC;CAChB;AAED,gFAAgF;AAChF,wBAAgB,SAAS,CACxB,KAAK,EAAE,eAAe,EACtB,QAAQ,EAAE,SAAS,SAAS,EAAE,GAC5B,UAAU,CAMZ;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CACxB,QAAQ,EAAE,KAAK,GAAG,KAAK,GAAG,SAAS,GAAG,SAAS,EAC/C,MAAM,EAAE,QAAQ,EAChB,GAAG,EAAE,QAAQ,EACb,SAAS,GAAE,QAKV,GACC,QAAQ,CAKV;AAED,wFAAwF;AACxF,wBAAgB,UAAU,CAAC,CAAC,EAC3B,GAAG,EAAE,gBAAgB,CAAC,CAAC,CAAC,EACxB,KAAK,EAAE,UAAU,EACjB,MAAM,EAAE,UAAU,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,GACtD,IAAI,CAEN"}
@@ -0,0 +1,110 @@
1
+ /**
2
+ * Parallel coordinates: numeric variables side by side as vertical axes,
3
+ * each datum a polyline through its value on every axis.
4
+ *
5
+ * The lines are one path batch (one item per drawn datum, its own stroke;
6
+ * hover and taps resolve per item). A line's partial reveal is its item's
7
+ * `progress`, traced by arc length. The axes are
8
+ * core `numberLine`s and labels.
9
+ */
10
+ import type { ColorInput } from "@sophistry/core/color";
11
+ import type { Point, Range } from "@sophistry/core/geometry";
12
+ import type { Channel, ColorChannel } from "../data/channels";
13
+ import type { TooltipSpec } from "../tooltip";
14
+ /**
15
+ * One axis of a {@link parallelCoordinates} chart.
16
+ *
17
+ * @category Charts
18
+ */
19
+ export interface ParallelAxis<T> {
20
+ /** The value each datum takes on this axis; non-finite values break the datum's line. */
21
+ value: Channel<T, number>;
22
+ /** Written above the axis. */
23
+ label?: string;
24
+ /** `[min, max, step?]` in data units. Omitted, fitted to the data. */
25
+ range?: Range;
26
+ }
27
+ /** @category Charts */
28
+ export interface ParallelCoordinatesProps<T> {
29
+ /** One polyline per datum. */
30
+ data: readonly T[];
31
+ /** One vertical axis per entry, evenly spaced left to right. */
32
+ axes: readonly ParallelAxis<T>[];
33
+ /** Distance from the first axis to the last. */
34
+ width: number;
35
+ /** Height of each axis. */
36
+ height: number;
37
+ /** Centre of the chart. Defaults to the origin. */
38
+ center?: Point;
39
+ /** One colour for every line, or `(d, i) => colour`. Wins over `colors`. */
40
+ color?: ColorChannel<T>;
41
+ /** Colours cycled across the lines by index. Defaults to the theme's categorical colours. */
42
+ colors?: readonly ColorInput[];
43
+ /**
44
+ * Line width.
45
+ * @default 0.025
46
+ */
47
+ strokeWidth?: number;
48
+ /**
49
+ * Line opacity, 0..1, so dense bundles read darker.
50
+ * @default 0.6
51
+ */
52
+ opacity?: number;
53
+ /**
54
+ * Font size of the axis labels.
55
+ * @default 0.24
56
+ */
57
+ axisLabelFontSize?: number;
58
+ /**
59
+ * Font size of the tick numbers.
60
+ * @default 0.18
61
+ */
62
+ tickFontSize?: number;
63
+ /**
64
+ * Reveal, 0..1: the axes draw first, then every line draws left to right across them.
65
+ * @default 1
66
+ * @see https://sophistry.dev/guides/chart-animation/#reveals
67
+ */
68
+ progress?: number;
69
+ /**
70
+ * Fraction of the line reveal spent staggering one datum after the next, 0..0.95.
71
+ * @default 0
72
+ */
73
+ stagger?: number;
74
+ /** Hover tooltip: `true` lists the datum's value on each axis, or `(d, i) => string`. */
75
+ tooltip?: TooltipSpec<T>;
76
+ zIndex?: number;
77
+ visible?: boolean;
78
+ }
79
+ /**
80
+ * Parallel coordinates: numeric variables side by side as vertical axes, each datum a
81
+ * polyline through its value on every axis, for spotting clusters and trade-offs across many
82
+ * dimensions. Sized by `width` and `height`; needs no `chart`. See {@link parallelLines}
83
+ * for the geometry alone. The lines are one path batch.
84
+ *
85
+ * @example
86
+ * ```ts
87
+ * import { parallelCoordinates } from "@sophistry/charts";
88
+ *
89
+ * const cars = [
90
+ * { mpg: 30, hp: 95, weight: 1100 },
91
+ * { mpg: 22, hp: 150, weight: 1500 },
92
+ * { mpg: 15, hp: 240, weight: 1900 },
93
+ * ];
94
+ * parallelCoordinates.create({
95
+ * data: cars,
96
+ * axes: [
97
+ * { value: "mpg", label: "mpg" },
98
+ * { value: "hp", label: "hp" },
99
+ * { value: "weight", label: "weight" },
100
+ * ],
101
+ * width: 8,
102
+ * height: 4,
103
+ * });
104
+ * ```
105
+ *
106
+ * @see https://sophistry.dev/reference/chart-catalogue/#lines-scatter-and-error-bars
107
+ * @category Charts
108
+ */
109
+ export declare const parallelCoordinates: import("@sophistry/core").Definition<ParallelCoordinatesProps<any>, import("@sophistry/core/internal").CompositeNode<ParallelCoordinatesProps<any>>, keyof ParallelCoordinatesProps<any>>;
110
+ //# sourceMappingURL=parallel-coordinates.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"parallel-coordinates.d.ts","sourceRoot":"","sources":["../../src/multiview/parallel-coordinates.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAWH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACxD,OAAO,KAAK,EAAE,KAAK,EAAY,KAAK,EAAE,MAAM,0BAA0B,CAAC;AAGvE,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAO9D,OAAO,KAAK,EAAE,WAAW,EAAgB,MAAM,YAAY,CAAC;AAW5D;;;;GAIG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC;IAC9B,yFAAyF;IACzF,KAAK,EAAE,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAC1B,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,sEAAsE;IACtE,KAAK,CAAC,EAAE,KAAK,CAAC;CACd;AAED,uBAAuB;AACvB,MAAM,WAAW,wBAAwB,CAAC,CAAC;IAC1C,8BAA8B;IAC9B,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC;IACnB,gEAAgE;IAChE,IAAI,EAAE,SAAS,YAAY,CAAC,CAAC,CAAC,EAAE,CAAC;IACjC,gDAAgD;IAChD,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,MAAM,EAAE,MAAM,CAAC;IACf,mDAAmD;IACnD,MAAM,CAAC,EAAE,KAAK,CAAC;IACf,4EAA4E;IAC5E,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACxB,6FAA6F;IAC7F,MAAM,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IAC/B;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B;;;OAGG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,yFAAyF;IACzF,OAAO,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAuLD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,eAAO,MAAM,mBAAmB,2LA2D9B,CAAC"}
@@ -0,0 +1,68 @@
1
+ /**
2
+ * `eventPlot`: an event raster, one row of vertical ticks per sequence. One
3
+ * `line` instances node for every tick of every row (see
4
+ * `segment-marks.ts`), keyed `"row:tick"`.
5
+ */
6
+ import type { ColorInput } from "@sophistry/core/color";
7
+ import type { Channel, ColorChannel } from "../data/channels";
8
+ /**
9
+ * Props of {@link eventPlot}.
10
+ *
11
+ * @category Charts
12
+ */
13
+ export interface EventPlotProps<T = unknown> {
14
+ /** One row per datum (a spike train, a subject, ...). */
15
+ data: readonly T[];
16
+ /**
17
+ * The row's event positions along x, in data units. Defaults to the datum when `data` is
18
+ * `number[][]`. Empty rows are fine; non-finite entries are skipped.
19
+ */
20
+ events?: Channel<T, readonly number[]>;
21
+ /**
22
+ * Vertical spacing between rows, in data units: row `i` is centred on `y = i * lineOffset`.
23
+ * @default 1
24
+ */
25
+ lineOffset?: number;
26
+ /**
27
+ * Length of each tick in data units, centred on its row.
28
+ * @default 0.8
29
+ */
30
+ lineLength?: number;
31
+ /** One colour for every row, or `(d, i) => colour`. Wins over `colors`. */
32
+ color?: ColorChannel<T>;
33
+ /** Colours cycled across rows by index. Defaults to the theme's categorical colours. */
34
+ colors?: readonly ColorInput[];
35
+ /** Line width. */
36
+ strokeWidth?: number;
37
+ opacity?: number;
38
+ /**
39
+ * Reveal, 0..1: each tick draws from its low end.
40
+ * @default 1
41
+ */
42
+ progress?: number;
43
+ /**
44
+ * Fraction of the reveal spent staggering the ticks left to right across every row, 0..0.95, so
45
+ * the raster fills in as the events happened.
46
+ * @default 0
47
+ */
48
+ stagger?: number;
49
+ zIndex?: number;
50
+ visible?: boolean;
51
+ }
52
+ /**
53
+ * An event raster: one row of vertical ticks per sequence (spike trains, say), each tick at an
54
+ * event's x. Row 0 is at `y = 0`, so give the axes a y range like `[-1, data.length]`. One
55
+ * instances node.
56
+ *
57
+ * @example
58
+ * ```ts
59
+ * import { chart, eventPlot } from "@sophistry/charts";
60
+ *
61
+ * chart.create({ width: 8, height: 4, yRange: [-1, 3], children: [eventPlot.create({ data: [[1, 2.5], [0.5, 3], [2]] })] });
62
+ * ```
63
+ *
64
+ * @see https://sophistry.dev/reference/chart-catalogue/#distributions
65
+ * @category Charts
66
+ */
67
+ export declare const eventPlot: import("@sophistry/core").Definition<EventPlotProps<any>, import("@sophistry/core/internal").CompositeNode<EventPlotProps<any>>, keyof EventPlotProps<any>>;
68
+ //# sourceMappingURL=event-plot.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"event-plot.d.ts","sourceRoot":"","sources":["../../src/points/event-plot.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AAGxD,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC;AAgB9D;;;;GAIG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,OAAO;IAC1C,yDAAyD;IACzD,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC;IACnB;;;OAGG;IACH,MAAM,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC,CAAC;IACvC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,2EAA2E;IAC3E,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACxB,wFAAwF;IACxF,MAAM,CAAC,EAAE,SAAS,UAAU,EAAE,CAAC;IAC/B,kBAAkB;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;;OAIG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAuGD;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,SAAS,6JA2BpB,CAAC"}
@@ -0,0 +1,20 @@
1
+ /** Family barrel: per-datum point marks. Re-exported from the package entry. */
2
+ export type { EventPlotProps } from "./event-plot";
3
+ export { eventPlot } from "./event-plot";
4
+ export type { LabelsProps } from "./labels";
5
+ export { labels } from "./labels";
6
+ export type { LinksProps, SegmentStyleProps, VectorsProps } from "./links";
7
+ export { links, vectors } from "./links";
8
+ export type { RectsProps } from "./rects";
9
+ export { rects } from "./rects";
10
+ export type { RugProps } from "./rug";
11
+ export { rug } from "./rug";
12
+ export type { ScatterProps, ScatterTrailOptions } from "./scatter";
13
+ export { scatter } from "./scatter";
14
+ export type { StemProps } from "./stem";
15
+ export { stem } from "./stem";
16
+ export type { BeeswarmProps, DotDistributionProps, StripProps, } from "./strip";
17
+ export { beeswarm, strip } from "./strip";
18
+ export type { TickBaseProps, TickXProps, TickYProps } from "./ticks";
19
+ export { tickX, tickY } from "./ticks";
20
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/points/index.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAEhF,YAAY,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AACnD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,YAAY,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAC5C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAClC,YAAY,EAAE,UAAU,EAAE,iBAAiB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC3E,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AACzC,YAAY,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAC1C,OAAO,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAChC,YAAY,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACtC,OAAO,EAAE,GAAG,EAAE,MAAM,OAAO,CAAC;AAC5B,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,MAAM,WAAW,CAAC;AACnE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,YAAY,EAAE,SAAS,EAAE,MAAM,QAAQ,CAAC;AACxC,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,YAAY,EACX,aAAa,EACb,oBAAoB,EACpB,UAAU,GACV,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAC1C,YAAY,EAAE,aAAa,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AACrE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC"}
@@ -0,0 +1,71 @@
1
+ /**
2
+ * `labels`: text at data positions.
3
+ *
4
+ * One `label` node per datum, kept by key: the core has no batched text
5
+ * (a text spec is one string with its own measured box), and a label beside
6
+ * its point (`direction`) is placed by that box. Labels annotate a few
7
+ * points, not thousands, so this is the one point mark that stays per datum.
8
+ */
9
+ import type { Vec2 } from "@sophistry/core";
10
+ import type { BandKey } from "@sophistry/core/geometry";
11
+ import type { Channel, ColorChannel, PositionValue } from "../data/channels";
12
+ import type { KeyedTransitionProps, RevealProps } from "../props";
13
+ /**
14
+ * Props of {@link labels}.
15
+ *
16
+ * @category Charts
17
+ */
18
+ export interface LabelsProps<T = unknown> extends KeyedTransitionProps<T>, RevealProps {
19
+ /** One label per datum. */
20
+ data: readonly T[];
21
+ /** X position: a number in data units (a `Date` reads as epoch ms) or a category on a band axis. Defaults to the index when `data` is `number[]`. */
22
+ x?: Channel<T, BandKey | PositionValue>;
23
+ /** Y position: a number in data units or a category on a band axis. Defaults to the datum when `data` is `number[]`. */
24
+ y?: Channel<T, BandKey | PositionValue>;
25
+ /** The text. Defaults to the datum, as a number, when `data` is `number[]`. */
26
+ text?: Channel<T, string>;
27
+ /** Which side of the point the text sits on (`UP`, `RIGHT`, `UR`, ...), `gap` away. Omitted, the text is centred on the point. */
28
+ direction?: Vec2;
29
+ /**
30
+ * Gap between the point and the text when `direction` is set.
31
+ * @default 0.18
32
+ */
33
+ gap?: number;
34
+ /**
35
+ * Font size.
36
+ * @default 0.26
37
+ */
38
+ fontSize?: number;
39
+ /** Text colour, constant or `(d, i) => colour`. Defaults to the theme foreground. */
40
+ color?: ColorChannel<T>;
41
+ opacity?: number;
42
+ /**
43
+ * Reveal, 0..1: each label fades in, over the end of the data phase.
44
+ * @default 1
45
+ */
46
+ progress?: number;
47
+ zIndex?: number;
48
+ visible?: boolean;
49
+ }
50
+ /**
51
+ * Text at data positions: names on a scatter, values over a line, annotations at a peak. Each
52
+ * label is placed by its measured box, so `direction: UP` clears the point by the same gap
53
+ * for any text. One `label` node per datum (see the file header).
54
+ *
55
+ * @example
56
+ * ```ts
57
+ * import { UP } from "@sophistry/core";
58
+ * import { chart, labels } from "@sophistry/charts";
59
+ *
60
+ * const cities = [
61
+ * { name: "Lima", gdp: 15, life: 76 },
62
+ * { name: "Oslo", gdp: 80, life: 83 },
63
+ * ];
64
+ * chart.create({ width: 8, height: 4, children: [labels.create({ data: cities, x: "gdp", y: "life", text: "name", direction: UP })] });
65
+ * ```
66
+ *
67
+ * @see https://sophistry.dev/guides/charts/#marks
68
+ * @category Charts
69
+ */
70
+ export declare const labels: import("@sophistry/core").Definition<LabelsProps<any>, import("@sophistry/core/internal").CompositeNode<LabelsProps<any>>, keyof LabelsProps<any>>;
71
+ //# sourceMappingURL=labels.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"labels.d.ts","sourceRoot":"","sources":["../../src/points/labels.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAIX,IAAI,EACJ,MAAM,iBAAiB,CAAC;AAOzB,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AAOxD,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAkB7E,OAAO,KAAK,EAAY,oBAAoB,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AAa5E;;;;GAIG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO,CACvC,SAAQ,oBAAoB,CAAC,CAAC,CAAC,EAC9B,WAAW;IACZ,2BAA2B;IAC3B,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC;IACnB,qJAAqJ;IACrJ,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC,CAAC;IACxC,wHAAwH;IACxH,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC,CAAC;IACxC,+EAA+E;IAC/E,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IAC1B,kIAAkI;IAClI,SAAS,CAAC,EAAE,IAAI,CAAC;IACjB;;;OAGG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IACb;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,qFAAqF;IACrF,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACxB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAiMD;;;;;;;;;;;;;;;;;;;GAmBG;AACH,eAAO,MAAM,MAAM,oJAgCjB,CAAC"}
@@ -0,0 +1,124 @@
1
+ /**
2
+ * `links` and `vectors`: straight segments between data points, optionally
3
+ * arrowed. One instances node per layer: `line` items, or `arrow` items
4
+ * (with a tip) for `arrow: true` and for every vector. Items are keyed by
5
+ * datum index. The reveal is each item's
6
+ * `progress` channel, tracing its outline.
7
+ */
8
+ import type { BandKey } from "@sophistry/core/geometry";
9
+ import type { Channel, ColorChannel, PositionValue } from "../data/channels";
10
+ import type { TooltipSpec } from "../tooltip";
11
+ /**
12
+ * Everything {@link links} and {@link vectors} share.
13
+ *
14
+ * @category Charts
15
+ */
16
+ export interface SegmentStyleProps<T> {
17
+ /** Line colour, constant or `(d, i) => colour`. Defaults to the theme's first series colour. */
18
+ color?: ColorChannel<T>;
19
+ /** Line width. */
20
+ strokeWidth?: number;
21
+ opacity?: number;
22
+ /**
23
+ * Arrow-tip length, when there is a tip.
24
+ * @default 0.18
25
+ */
26
+ tipLength?: number;
27
+ /**
28
+ * Reveal, 0..1: each segment draws from its start to its end.
29
+ * @default 1
30
+ */
31
+ progress?: number;
32
+ /**
33
+ * Fraction of the reveal spent staggering one segment after the next, 0..0.95.
34
+ * @default 0
35
+ */
36
+ stagger?: number;
37
+ /** Hover tooltip: `true` for the segment's coordinates, or `(d, i) => string`. */
38
+ tooltip?: TooltipSpec<T>;
39
+ zIndex?: number;
40
+ visible?: boolean;
41
+ }
42
+ /**
43
+ * Props of {@link links}.
44
+ *
45
+ * @category Charts
46
+ */
47
+ export interface LinksProps<T = unknown> extends SegmentStyleProps<T> {
48
+ /** One segment per datum. */
49
+ data: readonly T[];
50
+ /** Start x: a number in data units (a `Date` reads as epoch ms) or a category on a band axis. */
51
+ x1: Channel<T, BandKey | PositionValue>;
52
+ /** Start y: a number in data units or a category on a band axis. */
53
+ y1: Channel<T, BandKey | PositionValue>;
54
+ /** End x, as `x1`. */
55
+ x2: Channel<T, BandKey | PositionValue>;
56
+ /** End y, as `y1`. */
57
+ y2: Channel<T, BandKey | PositionValue>;
58
+ /**
59
+ * Draw an arrow tip at the end.
60
+ * @default false
61
+ */
62
+ arrow?: boolean;
63
+ }
64
+ /**
65
+ * Props of {@link vectors}.
66
+ *
67
+ * @category Charts
68
+ */
69
+ export interface VectorsProps<T = unknown> extends SegmentStyleProps<T> {
70
+ /** One arrow per datum. */
71
+ data: readonly T[];
72
+ /** Tail x, in data units (a `Date` reads as epoch ms). */
73
+ x: Channel<T, PositionValue>;
74
+ /** Tail y, in data units. */
75
+ y: Channel<T, PositionValue>;
76
+ /** X component, in data units (scaled by `scale`). */
77
+ u: Channel<T, number>;
78
+ /** Y component, in data units (scaled by `scale`). */
79
+ v: Channel<T, number>;
80
+ /**
81
+ * Multiplies every vector before drawing, to fit long ones in.
82
+ * @default 1
83
+ */
84
+ scale?: number;
85
+ }
86
+ /**
87
+ * Straight segments from `(x1, y1)` to `(x2, y2)`, optionally arrowed: before/after pairs,
88
+ * dumbbells, migrations. Each draws in the direction of change. One instances node.
89
+ *
90
+ * @example
91
+ * ```ts
92
+ * import { chart, links } from "@sophistry/charts";
93
+ *
94
+ * const moves = [
95
+ * { from: 0, a: 1, to: 2, b: 3 },
96
+ * { from: 1, a: 3, to: 3, b: 0 },
97
+ * ];
98
+ * chart.create({ width: 8, height: 4, children: [links.create({ data: moves, x1: "from", y1: "a", x2: "to", y2: "b", arrow: true })] });
99
+ * ```
100
+ *
101
+ * @see https://sophistry.dev/guides/charts/#marks
102
+ * @category Charts
103
+ */
104
+ export declare const links: import("@sophistry/core").Definition<LinksProps<any>, import("@sophistry/core/internal").CompositeNode<LinksProps<any>>, keyof LinksProps<any>>;
105
+ /**
106
+ * Arrows from `(x, y)` along `(u, v)`, a quiver plot for data you already have (for a sampled
107
+ * function, use `vectorField`). Each grows from its tail. One instances node.
108
+ *
109
+ * @example
110
+ * ```ts
111
+ * import { chart, vectors } from "@sophistry/charts";
112
+ *
113
+ * const wind = [
114
+ * { x: 0, y: 0, u: 1, v: 0.5 },
115
+ * { x: 1, y: 0, u: 0.8, v: 1 },
116
+ * ];
117
+ * chart.create({ width: 8, height: 4, children: [vectors.create({ data: wind, x: "x", y: "y", u: "u", v: "v", scale: 0.5 })] });
118
+ * ```
119
+ *
120
+ * @see https://sophistry.dev/guides/charts/#marks
121
+ * @category Charts
122
+ */
123
+ export declare const vectors: import("@sophistry/core").Definition<VectorsProps<any>, import("@sophistry/core/internal").CompositeNode<VectorsProps<any>>, keyof VectorsProps<any>>;
124
+ //# sourceMappingURL=links.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"links.d.ts","sourceRoot":"","sources":["../../src/points/links.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AASH,OAAO,KAAK,EAAE,OAAO,EAAS,MAAM,0BAA0B,CAAC;AAO/D,OAAO,KAAK,EAAE,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAU7E,OAAO,KAAK,EAAE,WAAW,EAAgB,MAAM,YAAY,CAAC;AAQ5D;;;;GAIG;AACH,MAAM,WAAW,iBAAiB,CAAC,CAAC;IACnC,gGAAgG;IAChG,KAAK,CAAC,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;IACxB,kBAAkB;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;;OAGG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kFAAkF;IAClF,OAAO,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,OAAO,CAAC;CAClB;AAED;;;;GAIG;AACH,MAAM,WAAW,UAAU,CAAC,CAAC,GAAG,OAAO,CAAE,SAAQ,iBAAiB,CAAC,CAAC,CAAC;IACpE,6BAA6B;IAC7B,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC;IACnB,iGAAiG;IACjG,EAAE,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC,CAAC;IACxC,oEAAoE;IACpE,EAAE,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC,CAAC;IACxC,sBAAsB;IACtB,EAAE,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC,CAAC;IACxC,sBAAsB;IACtB,EAAE,EAAE,OAAO,CAAC,CAAC,EAAE,OAAO,GAAG,aAAa,CAAC,CAAC;IACxC;;;OAGG;IACH,KAAK,CAAC,EAAE,OAAO,CAAC;CAChB;AAED;;;;GAIG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,OAAO,CAAE,SAAQ,iBAAiB,CAAC,CAAC,CAAC;IACtE,2BAA2B;IAC3B,IAAI,EAAE,SAAS,CAAC,EAAE,CAAC;IACnB,0DAA0D;IAC1D,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;IAC7B,6BAA6B;IAC7B,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,aAAa,CAAC,CAAC;IAC7B,sDAAsD;IACtD,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACtB,sDAAsD;IACtD,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;IACtB;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;CACf;AAmQD;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,KAAK,iJAehB,CAAC;AAEH;;;;;;;;;;;;;;;;;GAiBG;AACH,eAAO,MAAM,OAAO,uJAelB,CAAC"}