@techie_doubts/tui.chart.2026 4.6.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 (284) hide show
  1. package/README.md +165 -0
  2. package/dist/esm/animator.d.ts +32 -0
  3. package/dist/esm/animator.js +102 -0
  4. package/dist/esm/brushes/axis.d.ts +3 -0
  5. package/dist/esm/brushes/axis.js +21 -0
  6. package/dist/esm/brushes/basic.d.ts +9 -0
  7. package/dist/esm/brushes/basic.js +95 -0
  8. package/dist/esm/brushes/boxPlot.d.ts +2 -0
  9. package/dist/esm/brushes/boxPlot.js +22 -0
  10. package/dist/esm/brushes/circleLegend.d.ts +2 -0
  11. package/dist/esm/brushes/circleLegend.js +26 -0
  12. package/dist/esm/brushes/dataLabel.d.ts +6 -0
  13. package/dist/esm/brushes/dataLabel.js +176 -0
  14. package/dist/esm/brushes/exportMenu.d.ts +2 -0
  15. package/dist/esm/brushes/exportMenu.js +55 -0
  16. package/dist/esm/brushes/gauge.d.ts +2 -0
  17. package/dist/esm/brushes/gauge.js +39 -0
  18. package/dist/esm/brushes/label.d.ts +34 -0
  19. package/dist/esm/brushes/label.js +165 -0
  20. package/dist/esm/brushes/legend.d.ts +7 -0
  21. package/dist/esm/brushes/legend.js +162 -0
  22. package/dist/esm/brushes/lineSeries.d.ts +5 -0
  23. package/dist/esm/brushes/lineSeries.js +41 -0
  24. package/dist/esm/brushes/polygon.d.ts +2 -0
  25. package/dist/esm/brushes/polygon.js +24 -0
  26. package/dist/esm/brushes/resetButton.d.ts +3 -0
  27. package/dist/esm/brushes/resetButton.js +112 -0
  28. package/dist/esm/brushes/scatterSeries.d.ts +2 -0
  29. package/dist/esm/brushes/scatterSeries.js +125 -0
  30. package/dist/esm/brushes/sector.d.ts +2 -0
  31. package/dist/esm/brushes/sector.js +54 -0
  32. package/dist/esm/brushes/spectrumLegend.d.ts +14 -0
  33. package/dist/esm/brushes/spectrumLegend.js +199 -0
  34. package/dist/esm/charts/areaChart.d.ts +254 -0
  35. package/dist/esm/charts/areaChart.js +358 -0
  36. package/dist/esm/charts/barChart.d.ts +203 -0
  37. package/dist/esm/charts/barChart.js +300 -0
  38. package/dist/esm/charts/boxPlotChart.d.ts +209 -0
  39. package/dist/esm/charts/boxPlotChart.js +288 -0
  40. package/dist/esm/charts/bubbleChart.d.ts +188 -0
  41. package/dist/esm/charts/bubbleChart.js +263 -0
  42. package/dist/esm/charts/bulletChart.d.ts +199 -0
  43. package/dist/esm/charts/bulletChart.js +278 -0
  44. package/dist/esm/charts/chart.d.ts +133 -0
  45. package/dist/esm/charts/chart.js +484 -0
  46. package/dist/esm/charts/columnChart.d.ts +205 -0
  47. package/dist/esm/charts/columnChart.js +299 -0
  48. package/dist/esm/charts/columnLineChart.d.ts +271 -0
  49. package/dist/esm/charts/columnLineChart.js +386 -0
  50. package/dist/esm/charts/gaugeChart.d.ts +191 -0
  51. package/dist/esm/charts/gaugeChart.js +279 -0
  52. package/dist/esm/charts/heatmapChart.d.ts +199 -0
  53. package/dist/esm/charts/heatmapChart.js +292 -0
  54. package/dist/esm/charts/lineAreaChart.d.ts +271 -0
  55. package/dist/esm/charts/lineAreaChart.js +374 -0
  56. package/dist/esm/charts/lineChart.d.ts +253 -0
  57. package/dist/esm/charts/lineChart.js +360 -0
  58. package/dist/esm/charts/lineScatterChart.d.ts +200 -0
  59. package/dist/esm/charts/lineScatterChart.js +285 -0
  60. package/dist/esm/charts/nestedPieChart.d.ts +192 -0
  61. package/dist/esm/charts/nestedPieChart.js +268 -0
  62. package/dist/esm/charts/pieChart.d.ts +156 -0
  63. package/dist/esm/charts/pieChart.js +224 -0
  64. package/dist/esm/charts/radarChart.d.ts +169 -0
  65. package/dist/esm/charts/radarChart.js +240 -0
  66. package/dist/esm/charts/radialBarChart.d.ts +172 -0
  67. package/dist/esm/charts/radialBarChart.js +251 -0
  68. package/dist/esm/charts/scatterChart.d.ts +184 -0
  69. package/dist/esm/charts/scatterChart.js +279 -0
  70. package/dist/esm/charts/treemapChart.d.ts +166 -0
  71. package/dist/esm/charts/treemapChart.js +239 -0
  72. package/dist/esm/component/areaSeries.d.ts +96 -0
  73. package/dist/esm/component/areaSeries.js +474 -0
  74. package/dist/esm/component/axis.d.ts +40 -0
  75. package/dist/esm/component/axis.js +176 -0
  76. package/dist/esm/component/axisTitle.d.ts +25 -0
  77. package/dist/esm/component/axisTitle.js +67 -0
  78. package/dist/esm/component/axisUsingCenterY.d.ts +32 -0
  79. package/dist/esm/component/axisUsingCenterY.js +175 -0
  80. package/dist/esm/component/backButton.d.ts +13 -0
  81. package/dist/esm/component/backButton.js +26 -0
  82. package/dist/esm/component/background.d.ts +10 -0
  83. package/dist/esm/component/background.js +15 -0
  84. package/dist/esm/component/boxPlotSeries.d.ts +126 -0
  85. package/dist/esm/component/boxPlotSeries.js +410 -0
  86. package/dist/esm/component/boxSeries.d.ts +211 -0
  87. package/dist/esm/component/boxSeries.js +603 -0
  88. package/dist/esm/component/boxStackSeries.d.ts +62 -0
  89. package/dist/esm/component/boxStackSeries.js +447 -0
  90. package/dist/esm/component/bubbleSeries.d.ts +35 -0
  91. package/dist/esm/component/bubbleSeries.js +174 -0
  92. package/dist/esm/component/bulletSeries.d.ts +89 -0
  93. package/dist/esm/component/bulletSeries.js +392 -0
  94. package/dist/esm/component/circleLegend.d.ts +10 -0
  95. package/dist/esm/component/circleLegend.js +37 -0
  96. package/dist/esm/component/component.d.ts +64 -0
  97. package/dist/esm/component/component.js +170 -0
  98. package/dist/esm/component/componentManager.d.ts +23 -0
  99. package/dist/esm/component/componentManager.js +45 -0
  100. package/dist/esm/component/dataLabels.d.ts +23 -0
  101. package/dist/esm/component/dataLabels.js +134 -0
  102. package/dist/esm/component/exportMenu.d.ts +38 -0
  103. package/dist/esm/component/exportMenu.js +147 -0
  104. package/dist/esm/component/gaugeSeries.d.ts +160 -0
  105. package/dist/esm/component/gaugeSeries.js +447 -0
  106. package/dist/esm/component/heatmapSeries.d.ts +64 -0
  107. package/dist/esm/component/heatmapSeries.js +152 -0
  108. package/dist/esm/component/hoveredSeries.d.ts +27 -0
  109. package/dist/esm/component/hoveredSeries.js +95 -0
  110. package/dist/esm/component/legend.d.ts +26 -0
  111. package/dist/esm/component/legend.js +149 -0
  112. package/dist/esm/component/lineSeries.d.ts +69 -0
  113. package/dist/esm/component/lineSeries.js +319 -0
  114. package/dist/esm/component/noDataText.d.ts +9 -0
  115. package/dist/esm/component/noDataText.js +31 -0
  116. package/dist/esm/component/pieSeries.d.ts +137 -0
  117. package/dist/esm/component/pieSeries.js +390 -0
  118. package/dist/esm/component/plot.d.ts +37 -0
  119. package/dist/esm/component/plot.js +163 -0
  120. package/dist/esm/component/radarSeries.d.ts +85 -0
  121. package/dist/esm/component/radarSeries.js +222 -0
  122. package/dist/esm/component/radialAxis.d.ts +26 -0
  123. package/dist/esm/component/radialAxis.js +210 -0
  124. package/dist/esm/component/radialBarSeries.d.ts +111 -0
  125. package/dist/esm/component/radialBarSeries.js +349 -0
  126. package/dist/esm/component/radialPlot.d.ts +55 -0
  127. package/dist/esm/component/radialPlot.js +188 -0
  128. package/dist/esm/component/rangeSelection.d.ts +61 -0
  129. package/dist/esm/component/rangeSelection.js +150 -0
  130. package/dist/esm/component/resetButton.d.ts +13 -0
  131. package/dist/esm/component/resetButton.js +26 -0
  132. package/dist/esm/component/scatterSeries.d.ts +34 -0
  133. package/dist/esm/component/scatterSeries.js +159 -0
  134. package/dist/esm/component/selectedSeries.d.ts +26 -0
  135. package/dist/esm/component/selectedSeries.js +109 -0
  136. package/dist/esm/component/spectrumLegend.d.ts +15 -0
  137. package/dist/esm/component/spectrumLegend.js +76 -0
  138. package/dist/esm/component/title.d.ts +12 -0
  139. package/dist/esm/component/title.js +53 -0
  140. package/dist/esm/component/tooltip.d.ts +41 -0
  141. package/dist/esm/component/tooltip.js +131 -0
  142. package/dist/esm/component/treemapSeries.d.ts +57 -0
  143. package/dist/esm/component/treemapSeries.js +191 -0
  144. package/dist/esm/component/zeroAxis.d.ts +9 -0
  145. package/dist/esm/component/zeroAxis.js +49 -0
  146. package/dist/esm/eventEmitter.d.ts +8 -0
  147. package/dist/esm/eventEmitter.js +15 -0
  148. package/dist/esm/helpers/arrayUtil.d.ts +10 -0
  149. package/dist/esm/helpers/arrayUtil.js +54 -0
  150. package/dist/esm/helpers/axes.d.ts +67 -0
  151. package/dist/esm/helpers/axes.js +345 -0
  152. package/dist/esm/helpers/boxSeries.d.ts +5 -0
  153. package/dist/esm/helpers/boxSeries.js +71 -0
  154. package/dist/esm/helpers/calculator.d.ts +19 -0
  155. package/dist/esm/helpers/calculator.js +153 -0
  156. package/dist/esm/helpers/color.d.ts +153 -0
  157. package/dist/esm/helpers/color.js +218 -0
  158. package/dist/esm/helpers/colorSpectrum.d.ts +5 -0
  159. package/dist/esm/helpers/colorSpectrum.js +17 -0
  160. package/dist/esm/helpers/coordinate.d.ts +9 -0
  161. package/dist/esm/helpers/coordinate.js +51 -0
  162. package/dist/esm/helpers/dataLabels.d.ts +36 -0
  163. package/dist/esm/helpers/dataLabels.js +405 -0
  164. package/dist/esm/helpers/dom.d.ts +2 -0
  165. package/dist/esm/helpers/dom.js +8 -0
  166. package/dist/esm/helpers/downloader.d.ts +7 -0
  167. package/dist/esm/helpers/downloader.js +287 -0
  168. package/dist/esm/helpers/formatDate.d.ts +16 -0
  169. package/dist/esm/helpers/formatDate.js +140 -0
  170. package/dist/esm/helpers/geometric.d.ts +3 -0
  171. package/dist/esm/helpers/geometric.js +35 -0
  172. package/dist/esm/helpers/googleAnalytics.d.ts +1 -0
  173. package/dist/esm/helpers/googleAnalytics.js +39 -0
  174. package/dist/esm/helpers/htmlSanitizer.d.ts +1 -0
  175. package/dist/esm/helpers/htmlSanitizer.js +86 -0
  176. package/dist/esm/helpers/legend.d.ts +9 -0
  177. package/dist/esm/helpers/legend.js +47 -0
  178. package/dist/esm/helpers/pieSeries.d.ts +15 -0
  179. package/dist/esm/helpers/pieSeries.js +72 -0
  180. package/dist/esm/helpers/plot.d.ts +2 -0
  181. package/dist/esm/helpers/plot.js +4 -0
  182. package/dist/esm/helpers/radarSeries.d.ts +1 -0
  183. package/dist/esm/helpers/radarSeries.js +7 -0
  184. package/dist/esm/helpers/range.d.ts +6 -0
  185. package/dist/esm/helpers/range.js +16 -0
  186. package/dist/esm/helpers/responders.d.ts +37 -0
  187. package/dist/esm/helpers/responders.js +197 -0
  188. package/dist/esm/helpers/sector.d.ts +55 -0
  189. package/dist/esm/helpers/sector.js +117 -0
  190. package/dist/esm/helpers/squarifier.d.ts +8 -0
  191. package/dist/esm/helpers/squarifier.js +110 -0
  192. package/dist/esm/helpers/style.d.ts +14 -0
  193. package/dist/esm/helpers/style.js +48 -0
  194. package/dist/esm/helpers/theme.d.ts +58 -0
  195. package/dist/esm/helpers/theme.js +557 -0
  196. package/dist/esm/helpers/tooltip.d.ts +2 -0
  197. package/dist/esm/helpers/tooltip.js +18 -0
  198. package/dist/esm/helpers/tooltipTemplate.d.ts +21 -0
  199. package/dist/esm/helpers/tooltipTemplate.js +147 -0
  200. package/dist/esm/helpers/utils.d.ts +42 -0
  201. package/dist/esm/helpers/utils.js +268 -0
  202. package/dist/esm/helpers/validation.d.ts +6 -0
  203. package/dist/esm/helpers/validation.js +16 -0
  204. package/dist/esm/index.d.ts +40 -0
  205. package/dist/esm/index.js +75 -0
  206. package/dist/esm/message.d.ts +11 -0
  207. package/dist/esm/message.js +11 -0
  208. package/dist/esm/painter.d.ts +27 -0
  209. package/dist/esm/painter.js +88 -0
  210. package/dist/esm/responderDetectors.d.ts +6 -0
  211. package/dist/esm/responderDetectors.js +124 -0
  212. package/dist/esm/scale/coordinateScaleCalculator.d.ts +24 -0
  213. package/dist/esm/scale/coordinateScaleCalculator.js +174 -0
  214. package/dist/esm/scale/datetimeScaleCalculator.d.ts +20 -0
  215. package/dist/esm/scale/datetimeScaleCalculator.js +59 -0
  216. package/dist/esm/store/axes.d.ts +30 -0
  217. package/dist/esm/store/axes.js +282 -0
  218. package/dist/esm/store/category.d.ts +4 -0
  219. package/dist/esm/store/category.js +73 -0
  220. package/dist/esm/store/colorValueScale.d.ts +3 -0
  221. package/dist/esm/store/colorValueScale.js +56 -0
  222. package/dist/esm/store/dataRange.d.ts +4 -0
  223. package/dist/esm/store/dataRange.js +170 -0
  224. package/dist/esm/store/gaugeAxes.d.ts +4 -0
  225. package/dist/esm/store/gaugeAxes.js +175 -0
  226. package/dist/esm/store/heatmapAxes.d.ts +3 -0
  227. package/dist/esm/store/heatmapAxes.js +98 -0
  228. package/dist/esm/store/heatmapSeriesData.d.ts +3 -0
  229. package/dist/esm/store/heatmapSeriesData.js +34 -0
  230. package/dist/esm/store/layout.d.ts +12 -0
  231. package/dist/esm/store/layout.js +487 -0
  232. package/dist/esm/store/legend.d.ts +3 -0
  233. package/dist/esm/store/legend.js +435 -0
  234. package/dist/esm/store/nestedPieSeriesData.d.ts +3 -0
  235. package/dist/esm/store/nestedPieSeriesData.js +49 -0
  236. package/dist/esm/store/options.d.ts +3 -0
  237. package/dist/esm/store/options.js +62 -0
  238. package/dist/esm/store/plot.d.ts +3 -0
  239. package/dist/esm/store/plot.js +102 -0
  240. package/dist/esm/store/radialAxes.d.ts +8 -0
  241. package/dist/esm/store/radialAxes.js +199 -0
  242. package/dist/esm/store/reactive.d.ts +11 -0
  243. package/dist/esm/store/reactive.js +196 -0
  244. package/dist/esm/store/root.d.ts +3 -0
  245. package/dist/esm/store/root.js +46 -0
  246. package/dist/esm/store/scale.d.ts +3 -0
  247. package/dist/esm/store/scale.js +102 -0
  248. package/dist/esm/store/seriesData.d.ts +3 -0
  249. package/dist/esm/store/seriesData.js +299 -0
  250. package/dist/esm/store/stackSeriesData.d.ts +8 -0
  251. package/dist/esm/store/stackSeriesData.js +192 -0
  252. package/dist/esm/store/store.d.ts +20 -0
  253. package/dist/esm/store/store.js +112 -0
  254. package/dist/esm/store/theme.d.ts +3 -0
  255. package/dist/esm/store/theme.js +139 -0
  256. package/dist/esm/store/treemapSeriesData.d.ts +4 -0
  257. package/dist/esm/store/treemapSeriesData.js +93 -0
  258. package/dist/td-chart.css +127 -0
  259. package/dist/td-chart.js +41463 -0
  260. package/dist/td-chart.min.css +6 -0
  261. package/dist/td-chart.min.js +9 -0
  262. package/package.json +112 -0
  263. package/types/brushes.d.ts +30 -0
  264. package/types/charts.d.ts +152 -0
  265. package/types/components/axis.d.ts +71 -0
  266. package/types/components/circleLegend.d.ts +9 -0
  267. package/types/components/dataLabels.d.ts +119 -0
  268. package/types/components/exportMenu.d.ts +14 -0
  269. package/types/components/legend.d.ts +27 -0
  270. package/types/components/plot.d.ts +8 -0
  271. package/types/components/radialAxis.d.ts +22 -0
  272. package/types/components/radialPlot.d.ts +11 -0
  273. package/types/components/rangeSelection.d.ts +3 -0
  274. package/types/components/resetButton.d.ts +13 -0
  275. package/types/components/series.d.ts +386 -0
  276. package/types/components/spectrumLegend.d.ts +25 -0
  277. package/types/components/tooltip.d.ts +58 -0
  278. package/types/components/zoom.d.ts +3 -0
  279. package/types/eventEmitter.d.ts +12 -0
  280. package/types/index.d.ts +615 -0
  281. package/types/options.d.ts +833 -0
  282. package/types/resizeObserver.d.ts +54 -0
  283. package/types/store/store.d.ts +564 -0
  284. package/types/theme.d.ts +670 -0
@@ -0,0 +1,288 @@
1
+ import Chart from "./chart";
2
+ import dataRange from "../store/dataRange";
3
+ import scale from "../store/scale";
4
+ import axes from "../store/axes";
5
+ import plot from "../store/plot";
6
+ import Axis from "../component/axis";
7
+ import BoxPlotSeries from "../component/boxPlotSeries";
8
+ import Plot from "../component/plot";
9
+ import Tooltip from "../component/tooltip";
10
+ import Legend from "../component/legend";
11
+ import AxisTitle from "../component/axisTitle";
12
+ import Title from "../component/title";
13
+ import ExportMenu from "../component/exportMenu";
14
+ import HoveredSeries from "../component/hoveredSeries";
15
+ import SelectedSeries from "../component/selectedSeries";
16
+ import Background from "../component/background";
17
+ import NoDataText from "../component/noDataText";
18
+ import * as basicBrushes from "../brushes/basic";
19
+ import * as axisBrushes from "../brushes/axis";
20
+ import * as legendBrush from "../brushes/legend";
21
+ import * as labelBrush from "../brushes/label";
22
+ import * as exportMenuBrush from "../brushes/exportMenu";
23
+ import * as BoxPlotBrush from "../brushes/boxPlot";
24
+ /**
25
+ * @class
26
+ * @classdesc BoxPlot Chart
27
+ * @param {Object} props
28
+ * @param {HTMLElement} props.el - The target element to create chart.
29
+ * @param {Object} props.data - Data for making BoxPlot Chart.
30
+ * @param {Array<string>} props.data.categories - Categories.
31
+ * @param {Array<Object>} props.data.series - Series data.
32
+ * @param {string} props.data.series.name - Series name.
33
+ * @param {Array<Array<number>>} props.data.series.data - Series data.
34
+ * @param {Array<Array<number>>} props.data.series.outliers - Series outliers data.
35
+ * @param {Object} [props.options] - Options for making BoxPlot Chart.
36
+ * @param {Object} [props.options.chart]
37
+ * @param {string|Object} [props.options.chart.title] - Chart title text or options.
38
+ * @param {string} [props.options.chart.title.text] - Chart title text.
39
+ * @param {number} [props.options.chart.title.offsetX] - Offset value to move title horizontally.
40
+ * @param {number} [props.options.chart.title.offsetY] - Offset value to move title vertically.
41
+ * @param {string} [props.options.chart.title.align] - Chart text align. 'left', 'right', 'center' is available.
42
+ * @param {boolean|Object} [props.options.chart.animation] - Whether to use animation and duration when rendering the initial chart.
43
+ * @param {number|string} [props.options.chart.width] - Chart width. 'auto' or if not write, the width of the parent container is followed. 'auto' or if not created, the width of the parent container is followed.
44
+ * @param {number|string} [props.options.chart.height] - Chart height. 'auto' or if not write, the width of the parent container is followed. 'auto' or if not created, the height of the parent container is followed.
45
+ * @param {Object} [props.options.series]
46
+ * @param {boolean} [props.options.series.selectable=false] - Whether to make selectable series or not.
47
+ * @param {string} [props.options.series.eventDetectType] - Event detect type. 'grouped', 'point' is available.
48
+ * @param {Object} [props.options.xAxis]
49
+ * @param {string|Object} [props.options.xAxis.title] - Axis title.
50
+ * @param {boolean} [props.options.xAxis.rotateLabel=true] - Whether to allow axis label rotation.
51
+ * @param {boolean|Object} [props.options.xAxis.date] - Whether the x axis label is of date type. Format option used for date type. Whether the x axis label is of date type. If use date type, format option used for date type.
52
+ * @param {Object} [props.options.xAxis.tick] - Option to adjust tick interval.
53
+ * @param {Object} [props.options.xAxis.label] - Option to adjust label interval.
54
+ * @param {Object} [props.options.xAxis.scale] - Option to adjust axis minimum, maximum, step size.
55
+ * @param {number} [props.options.xAxis.width] - Width of xAxis.
56
+ * @param {number} [props.options.xAxis.height] - Height of xAxis.
57
+ * @param {Object} [props.options.yAxis]
58
+ * @param {string|Object} [props.options.yAxis.title] - Axis title.
59
+ * @param {Object} [props.options.yAxis.tick] - Option to adjust tick interval.
60
+ * @param {Object} [props.options.yAxis.label] - Option to adjust label interval.
61
+ * @param {Object} [props.options.yAxis.scale] - Option to adjust axis minimum, maximum, step size.
62
+ * @param {number} [props.options.yAxis.width] - Width of yAxis.
63
+ * @param {number} [props.options.yAxis.height] - Height of yAxis.
64
+ * @param {Object} [props.options.plot]
65
+ * @param {number} [props.options.plot.width] - Width of plot.
66
+ * @param {number} [props.options.plot.height] - Height of plot.
67
+ * @param {boolean} [props.options.plot.visible] - Whether to show plot line.
68
+ * @param {Object} [props.options.legend]
69
+ * @param {string} [props.options.legend.align] - Legend align. 'top', 'bottom', 'right', 'left' is available.
70
+ * @param {string} [props.options.legend.showCheckbox] - Whether to show checkbox.
71
+ * @param {boolean} [props.options.legend.visible] - Whether to show legend.
72
+ * @param {number} [props.options.legend.width] - Width of legend.
73
+ * @param {Object} [props.options.legend.item] - `width` and `overflow` options of the legend item. For specific information, refer to the {@link https://github.com/nhn/tui.chart|Legend guide} on github.
74
+ * @param {Object} [props.options.exportMenu]
75
+ * @param {boolean} [props.options.exportMenu.visible] - Whether to show export menu.
76
+ * @param {string} [props.options.exportMenu.filename] - File name applied when downloading.
77
+ * @param {Object} [props.options.tooltip]
78
+ * @param {number} [props.options.tooltip.offsetX] - Offset value to move title horizontally.
79
+ * @param {number} [props.options.tooltip.offsetY] - Offset value to move title vertically.
80
+ * @param {Function} [props.options.tooltip.formatter] - Function to format data value.
81
+ * @param {Function} [props.options.tooltip.template] - Function to create custom template. For specific information, refer to the {@link https://github.com/nhn/tui.chart|Tooltip guide} on github.
82
+ * @param {Object} [props.options.responsive] - Rules for changing chart options. For specific information, refer to the {@link https://github.com/nhn/tui.chart|Responsive guide} on github.
83
+ * @param {boolean|Object} [props.options.responsive.animation] - Animation duration when the chart is modified.
84
+ * @param {Array<Object>} [props.options.responsive.rules] - Rules for the Chart to Respond.
85
+ * @param {Object} [props.options.lang] - Options for changing the text displayed on the chart or i18n languages.
86
+ * @param {Object} [props.options.lang.noData] - No Data Layer Text.
87
+ * @param {Object} [props.options.theme] - Chart theme options. For specific information, refer to the {@link https://github.com/nhn/tui.chart|BoxPlot Chart guide} on github.
88
+ * @param {Object} [props.options.theme.chart] - Chart font theme.
89
+ * @param {Object} [props.options.theme.noData] - No Data Layer Text theme.
90
+ * @param {Object} [props.options.theme.series] - Series theme.
91
+ * @param {Object} [props.options.theme.title] - Title theme.
92
+ * @param {Object} [props.options.theme.xAxis] - X Axis theme.
93
+ * @param {Object} [props.options.theme.yAxis] - Y Axis theme.
94
+ * @param {Object} [props.options.theme.legend] - Legend theme.
95
+ * @param {Object} [props.options.theme.tooltip] - Tooltip theme.
96
+ * @param {Object} [props.options.theme.plot] - Plot theme.
97
+ * @param {Object} [props.options.theme.exportMenu] - ExportMenu theme.
98
+ * @extends Chart
99
+ */
100
+ export default class BoxPlotChart extends Chart {
101
+ constructor({ el, options, data: { series, categories } }) {
102
+ super({
103
+ el,
104
+ options,
105
+ series: {
106
+ boxPlot: series,
107
+ },
108
+ categories,
109
+ modules: [dataRange, scale, axes, plot],
110
+ });
111
+ }
112
+ initialize() {
113
+ super.initialize();
114
+ this.componentManager.add(Background);
115
+ this.componentManager.add(Title);
116
+ this.componentManager.add(Plot);
117
+ this.componentManager.add(Legend);
118
+ this.componentManager.add(BoxPlotSeries);
119
+ this.componentManager.add(Axis, { name: 'yAxis' });
120
+ this.componentManager.add(Axis, { name: 'xAxis' });
121
+ this.componentManager.add(AxisTitle, { name: 'xAxis' });
122
+ this.componentManager.add(AxisTitle, { name: 'yAxis' });
123
+ this.componentManager.add(ExportMenu, { chartEl: this.el });
124
+ this.componentManager.add(HoveredSeries);
125
+ this.componentManager.add(SelectedSeries);
126
+ this.componentManager.add(Tooltip, { chartEl: this.el });
127
+ this.componentManager.add(NoDataText);
128
+ this.painter.addGroups([
129
+ basicBrushes,
130
+ axisBrushes,
131
+ BoxPlotBrush,
132
+ legendBrush,
133
+ labelBrush,
134
+ exportMenuBrush,
135
+ ]);
136
+ }
137
+ /**
138
+ * Add data.
139
+ * @param {Array<<Array<number>>} data - Array of data to be added.
140
+ * @param {string} category - Category to be added.
141
+ * @api
142
+ * @example
143
+ * chart.addData(
144
+ [
145
+ [3000, 4000, 4714, 6000, 7000],
146
+ [3000, 5750, 7571, 8250, 9000],
147
+ ],
148
+ 'newCategory'
149
+ );
150
+ */
151
+ addData(data, category) {
152
+ this.animationControlFlag.updating = true;
153
+ this.resetSeries();
154
+ this.store.dispatch('addData', { data, category });
155
+ }
156
+ /**
157
+ * add outlier.
158
+ * @param {number} seriesIndex - Index of series.
159
+ * @param {number} outliers - Array of outlier.
160
+ * @api
161
+ * @example
162
+ * chart.addOutlier(1, [[1, 10000], [3, 12000]]);
163
+ */
164
+ addOutlier(seriesIndex, outliers) {
165
+ this.animationControlFlag.updating = true;
166
+ this.resetSeries();
167
+ this.store.dispatch('addOutlier', { seriesIndex, outliers });
168
+ }
169
+ /**
170
+ * Add series.
171
+ * @param {Object} data - Data to be added.
172
+ * @param {string} data.name - Series name.
173
+ * @param {Array<Array<number>>} data.data - Array of data to be added.
174
+ * @param {Array<Array<number>>} data.outliers - Series outliers data.
175
+ * @api
176
+ * @example
177
+ * chart.addSeries({
178
+ * name: 'newSeries',
179
+ * data: [
180
+ * [10, 100, 50, 40, 70, 55, 33, 70, 90, 110],
181
+ * ],
182
+ * outliers: [
183
+ * [0, 14000],
184
+ * [2, 10000],
185
+ * ]
186
+ * });
187
+ */
188
+ addSeries(data) {
189
+ this.resetSeries();
190
+ this.store.dispatch('addSeries', { data });
191
+ }
192
+ /**
193
+ * Convert the chart data to new data.
194
+ * @param {Object} data - Data to be set.
195
+ * @api
196
+ * @example
197
+ * chart.setData({
198
+ * categories: ['1', '2', '3'],
199
+ * series: [
200
+ * {
201
+ * name: 'newSeries',
202
+ * data: [
203
+ * [10, 100, 50, 40, 70, 55, 33, 70, 90, 110],
204
+ * ],
205
+ * outliers: [
206
+ * [0, 14000],
207
+ * [2, 10000],
208
+ * ]
209
+ * }
210
+ * ]
211
+ * });
212
+ */
213
+ setData(data) {
214
+ const { categories, series } = data;
215
+ this.resetSeries();
216
+ this.store.dispatch('setData', { series: { boxPlot: series }, categories });
217
+ }
218
+ /**
219
+ * Convert the chart options to new options.
220
+ * @param {Object} options - Chart options.
221
+ * @api
222
+ * @example
223
+ * chart.setOptions({
224
+ * chart: {
225
+ * width: 500,
226
+ * height: 'auto',
227
+ * title: 'Energy Usage',
228
+ * },
229
+ * xAxis: {
230
+ * title: 'Month',
231
+ * date: { format: 'yy/MM' },
232
+ * },
233
+ * yAxis: {
234
+ * title: 'Energy (kWh)',
235
+ * },
236
+ * series: {
237
+ * selectable: true,
238
+ * },
239
+ * tooltip: {
240
+ * formatter: (value) => `${value}kWh`,
241
+ * },
242
+ * });
243
+ */
244
+ setOptions(options) {
245
+ this.resetSeries();
246
+ this.dispatchOptionsEvent('initOptions', options);
247
+ }
248
+ /**
249
+ * Update chart options.
250
+ * @param {Object} options - Chart options.
251
+ * @api
252
+ * @example
253
+ * chart.updateOptions({
254
+ * chart: {
255
+ * height: 'auto',
256
+ * title: 'Energy Usage',
257
+ * },
258
+ * tooltip: {
259
+ * formatter: (value) => `${value}kWh`,
260
+ * },
261
+ * });
262
+ */
263
+ updateOptions(options) {
264
+ this.resetSeries();
265
+ this.dispatchOptionsEvent('updateOptions', options);
266
+ }
267
+ /**
268
+ * Show tooltip.
269
+ * @param {Object} seriesInfo - Information of the series for the tooltip to be displayed.
270
+ * @param {number} seriesInfo.seriesIndex - Index of series.
271
+ * @param {number} seriesInfo.index - Index of data within series.
272
+ * @api
273
+ * @example
274
+ * chart.showTooltip({index: 1, seriesIndex: 2});
275
+ */
276
+ showTooltip(seriesInfo) {
277
+ this.eventBus.emit('showTooltip', Object.assign(Object.assign({}, seriesInfo), { state: this.store.state }));
278
+ }
279
+ /**
280
+ * Hide tooltip.
281
+ * @api
282
+ * @example
283
+ * chart.hideTooltip();
284
+ */
285
+ hideTooltip() {
286
+ this.eventBus.emit('hideTooltip');
287
+ }
288
+ }
@@ -0,0 +1,188 @@
1
+ import Chart from "./chart";
2
+ import { BubbleSeriesData, BaseOptions, BubbleSeriesDataType, BubbleSeriesInput, BubbleChartOptions } from "../../types/options";
3
+ import { BubbleChartProps, SelectSeriesInfo } from "../../types/charts";
4
+ /**
5
+ * @class
6
+ * @classdesc Bubble Chart
7
+ * @param {Object} props
8
+ * @param {HTMLElement} props.el - The target element to create chart.
9
+ * @param {Object} props.data - Data for making Bubble Chart.
10
+ * @param {Array<string>} props.data.categories - Categories.
11
+ * @param {Array<Object>} props.data.series - Series data.
12
+ * @param {string} props.data.series.name - Series name.
13
+ * @param {Array<Object>} props.data.series.data - Series data. Coordinates x, y values, radius r, and label values are required.
14
+ * @param {Object} [props.options] - Options for making Bubble Chart.
15
+ * @param {Object} [props.options.chart]
16
+ * @param {string|Object} [props.options.chart.title] - Chart title text or options.
17
+ * @param {string} [props.options.chart.title.text] - Chart title text.
18
+ * @param {number} [props.options.chart.title.offsetX] - Offset value to move title horizontally.
19
+ * @param {number} [props.options.chart.title.offsetY] - Offset value to move title vertically.
20
+ * @param {string} [props.options.chart.title.align] - Chart text align. 'left', 'right', 'center' is available.
21
+ * @param {boolean|Object} [props.options.chart.animation] - Whether to use animation and duration when rendering the initial chart.
22
+ * @param {number|string} [props.options.chart.width] - Chart width. 'auto' or if not write, the width of the parent container is followed. 'auto' or if not created, the width of the parent container is followed.
23
+ * @param {number|string} [props.options.chart.height] - Chart height. 'auto' or if not write, the width of the parent container is followed. 'auto' or if not created, the height of the parent container is followed.
24
+ * @param {Object} [props.options.series]
25
+ * @param {boolean} [props.options.series.selectable=false] - Whether to make selectable series or not.
26
+ * @param {Object} [props.options.xAxis]
27
+ * @param {string|Object} [props.options.xAxis.title] - Axis title.
28
+ * @param {boolean} [props.options.xAxis.rotateLabel=true] - Whether to allow axis label rotation.
29
+ * @param {boolean|Object} [props.options.xAxis.date] - Whether the x axis label is of date type. Format option used for date type. Whether the x axis label is of date type. If use date type, format option used for date type.
30
+ * @param {Object} [props.options.xAxis.tick] - Option to adjust tick interval.
31
+ * @param {Object} [props.options.xAxis.label] - Option to adjust label interval.
32
+ * @param {Object} [props.options.xAxis.scale] - Option to adjust axis minimum, maximum, step size.
33
+ * @param {number} [props.options.xAxis.width] - Width of xAxis.
34
+ * @param {number} [props.options.xAxis.height] - Height of xAxis.
35
+ * @param {Object} [props.options.yAxis]
36
+ * @param {string|Object} [props.options.yAxis.title] - Axis title.
37
+ * @param {Object} [props.options.yAxis.tick] - Option to adjust tick interval.
38
+ * @param {Object} [props.options.yAxis.label] - Option to adjust label interval.
39
+ * @param {Object} [props.options.yAxis.scale] - Option to adjust axis minimum, maximum, step size.
40
+ * @param {number} [props.options.yAxis.width] - Width of yAxis.
41
+ * @param {number} [props.options.yAxis.height] - Height of yAxis.
42
+ * @param {Object} [props.options.plot]
43
+ * @param {number} [props.options.plot.width] - Width of plot.
44
+ * @param {number} [props.options.plot.height] - Height of plot.
45
+ * @param {boolean} [props.options.plot.visible] - Whether to show plot line.
46
+ * @param {Object} [props.options.legend]
47
+ * @param {string} [props.options.legend.align] - Legend align. 'top', 'bottom', 'right', 'left' is available.
48
+ * @param {string} [props.options.legend.showCheckbox] - Whether to show checkbox.
49
+ * @param {boolean} [props.options.legend.visible] - Whether to show legend.
50
+ * @param {number} [props.options.legend.width] - Width of legend.
51
+ * @param {Object} [props.options.legend.item] - `width` and `overflow` options of the legend item. For specific information, refer to the {@link https://github.com/nhn/tui.chart|Legend guide} on github.
52
+ * @param {Object} [props.options.circleLegend]
53
+ * @param {boolean} [props.options.circleLegend.visible] - Whether to show circle legend.
54
+ * @param {Object} [props.options.exportMenu]
55
+ * @param {boolean} [props.options.exportMenu.visible] - Whether to show export menu.
56
+ * @param {string} [props.options.exportMenu.filename] - File name applied when downloading.
57
+ * @param {Object} [props.options.tooltip]
58
+ * @param {number} [props.options.tooltip.offsetX] - Offset value to move title horizontally.
59
+ * @param {number} [props.options.tooltip.offsetY] - Offset value to move title vertically.
60
+ * @param {Function} [props.options.tooltip.formatter] - Function to format data value.
61
+ * @param {Function} [props.options.tooltip.template] - Function to create custom template. For specific information, refer to the {@link https://github.com/nhn/tui.chart|Tooltip guide} on github.
62
+ * @param {Object} [props.options.responsive] - Rules for changing chart options. For specific information, refer to the {@link https://github.com/nhn/tui.chart|Responsive guide} on github.
63
+ * @param {boolean|Object} [props.options.responsive.animation] - Animation duration when the chart is modified.
64
+ * @param {Array<Object>} [props.options.responsive.rules] - Rules for the Chart to Respond.
65
+ * @param {Object} [props.options.lang] - Options for changing the text displayed on the chart or i18n languages.
66
+ * @param {Object} [props.options.lang.noData] - No Data Layer Text.
67
+ * @param {Object} [props.options.theme] - Chart theme options. For specific information, refer to the {@link https://github.com/nhn/tui.chart|Bubble Chart guide} on github.
68
+ * @param {Object} [props.options.theme.chart] - Chart font theme.
69
+ * @param {Object} [props.options.theme.noData] - No Data Layer Text theme.
70
+ * @param {Object} [props.options.theme.series] - Series theme.
71
+ * @param {Object} [props.options.theme.title] - Title theme.
72
+ * @param {Object} [props.options.theme.xAxis] - X Axis theme.
73
+ * @param {Object} [props.options.theme.yAxis] - Y Axis theme.
74
+ * @param {Object} [props.options.theme.legend] - Legend theme.
75
+ * @param {Object} [props.options.theme.tooltip] - Tooltip theme.
76
+ * @param {Object} [props.options.theme.plot] - Plot theme.
77
+ * @param {Object} [props.options.theme.exportMenu] - ExportMenu theme.
78
+ * @extends Chart
79
+ */
80
+ export default class BubbleChart extends Chart<BaseOptions> {
81
+ constructor(props: BubbleChartProps);
82
+ protected initialize(): void;
83
+ /**
84
+ * Add data.
85
+ * @param {Array<Object>} data - Array of data to be added.
86
+ * @api
87
+ * @example
88
+ * chart.addData([
89
+ * {x: 10, y: 20, r: 10, label: 'label1'},
90
+ * {x: 30, y: 40, r: 10, label: 'label2'},
91
+ * ]);
92
+ */
93
+ addData(data: BubbleSeriesDataType[]): void;
94
+ /**
95
+ * Add series.
96
+ * @param {Object} data - Data to be added.
97
+ * @param {string} data.name - Series name.
98
+ * @param {Array<Object>} data.data - Array of data to be added.
99
+ * @api
100
+ * @example
101
+ * chart.addSeries({
102
+ * name: 'newSeries',
103
+ * data: [
104
+ * {x: 10, y: 20, r: 10, label: 'label1'},
105
+ * {x: 30, y: 40, r: 10, label: 'label2'},
106
+ * ],
107
+ * });
108
+ */
109
+ addSeries(data: BubbleSeriesInput): void;
110
+ /**
111
+ * Convert the chart data to new data.
112
+ * @param {Object} data - Data to be set.
113
+ * @api
114
+ * @example
115
+ * chart.setData({
116
+ * series: [
117
+ * {
118
+ * name: 'name'
119
+ * data: [
120
+ * {x: 10, y: 20, r: 10, label: 'label1'},
121
+ * {x: 30, y: 40, r: 10, label: 'label2'},
122
+ * ]
123
+ * }
124
+ * ]
125
+ * });
126
+ */
127
+ setData(data: BubbleSeriesData): void;
128
+ /**
129
+ * Convert the chart options to new options.
130
+ * @param {Object} options - Chart options.
131
+ * @api
132
+ * @example
133
+ * chart.setOptions({
134
+ * chart: {
135
+ * width: 500,
136
+ * height: 'auto',
137
+ * title: 'Energy Usage',
138
+ * },
139
+ * xAxis: {
140
+ * title: 'Month',
141
+ * date: { format: 'yy/MM' },
142
+ * },
143
+ * yAxis: {
144
+ * title: 'Energy (kWh)',
145
+ * },
146
+ * series: {
147
+ * selectable: true,
148
+ * },
149
+ * tooltip: {
150
+ * formatter: (value) => `${value}kWh`,
151
+ * },
152
+ * });
153
+ */
154
+ setOptions(options: BubbleChartOptions): void;
155
+ /**
156
+ * Update chart options.
157
+ * @param {Object} options - Chart options.
158
+ * @api
159
+ * @example
160
+ * chart.updateOptions({
161
+ * chart: {
162
+ * height: 'auto',
163
+ * title: 'Energy Usage',
164
+ * },
165
+ * tooltip: {
166
+ * formatter: (value) => `${value}kWh`,
167
+ * },
168
+ * });
169
+ */
170
+ updateOptions(options: BubbleChartOptions): void;
171
+ /**
172
+ * Show tooltip.
173
+ * @param {Object} seriesInfo - Information of the series for the tooltip to be displayed.
174
+ * @param {number} seriesInfo.seriesIndex - Index of series.
175
+ * @param {number} seriesInfo.index - Index of data within series.
176
+ * @api
177
+ * @example
178
+ * chart.showTooltip({index: 1, seriesIndex: 2});
179
+ */
180
+ showTooltip(seriesInfo: SelectSeriesInfo): void;
181
+ /**
182
+ * Hide tooltip.
183
+ * @api
184
+ * @example
185
+ * chart.hideTooltip();
186
+ */
187
+ hideTooltip(): void;
188
+ }