@nativescript-community/ui-chart 1.2.36 → 2.0.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 (365) hide show
  1. package/README.md +6 -0
  2. package/animation/ChartAnimator.d.ts +47 -4
  3. package/animation/ChartAnimator.js +49 -11
  4. package/animation/ChartAnimator.js.map +1 -1
  5. package/animation/Tween.d.ts +1 -1
  6. package/animation/Tween.js +4 -2
  7. package/animation/Tween.js.map +1 -1
  8. package/buffer/AbstractBuffer.d.ts +28 -3
  9. package/buffer/AbstractBuffer.js +22 -3
  10. package/buffer/AbstractBuffer.js.map +1 -1
  11. package/buffer/BarBuffer.d.ts +8 -12
  12. package/buffer/BarBuffer.js +33 -36
  13. package/buffer/BarBuffer.js.map +1 -1
  14. package/buffer/HorizontalBarBuffer.js +13 -10
  15. package/buffer/HorizontalBarBuffer.js.map +1 -1
  16. package/charts/BarChart.d.ts +70 -15
  17. package/charts/BarChart.js +92 -63
  18. package/charts/BarChart.js.map +1 -1
  19. package/charts/BarLineChartBase.d.ts +494 -73
  20. package/charts/BarLineChartBase.js +788 -407
  21. package/charts/BarLineChartBase.js.map +1 -1
  22. package/charts/BubbleChart.d.ts +11 -5
  23. package/charts/BubbleChart.js +10 -8
  24. package/charts/BubbleChart.js.map +1 -1
  25. package/charts/CandleStickChart.d.ts +8 -5
  26. package/charts/CandleStickChart.js +9 -10
  27. package/charts/CandleStickChart.js.map +1 -1
  28. package/charts/Chart.d.ts +420 -91
  29. package/charts/Chart.js +590 -290
  30. package/charts/Chart.js.map +1 -1
  31. package/charts/CombinedChart.d.ts +59 -29
  32. package/charts/CombinedChart.js +74 -67
  33. package/charts/CombinedChart.js.map +1 -1
  34. package/charts/HorizontalBarChart.d.ts +37 -7
  35. package/charts/HorizontalBarChart.js +97 -59
  36. package/charts/HorizontalBarChart.js.map +1 -1
  37. package/charts/LineChart.d.ts +3 -5
  38. package/charts/LineChart.js +6 -10
  39. package/charts/LineChart.js.map +1 -1
  40. package/charts/PieChart.d.ts +218 -64
  41. package/charts/PieChart.js +278 -168
  42. package/charts/PieChart.js.map +1 -1
  43. package/charts/PieRadarChartBase.d.ts +107 -18
  44. package/charts/PieRadarChartBase.js +156 -73
  45. package/charts/PieRadarChartBase.js.map +1 -1
  46. package/charts/RadarChart.d.ts +75 -35
  47. package/charts/RadarChart.js +114 -103
  48. package/charts/RadarChart.js.map +1 -1
  49. package/charts/ScatterChart.d.ts +10 -5
  50. package/charts/ScatterChart.js +11 -10
  51. package/charts/ScatterChart.js.map +1 -1
  52. package/components/AxisBase.d.ts +271 -101
  53. package/components/AxisBase.js +264 -254
  54. package/components/AxisBase.js.map +1 -1
  55. package/components/ComponentBase.d.ts +54 -19
  56. package/components/ComponentBase.js +60 -48
  57. package/components/ComponentBase.js.map +1 -1
  58. package/components/Description.d.ts +18 -9
  59. package/components/Description.js +12 -26
  60. package/components/Description.js.map +1 -1
  61. package/components/IMarker.d.ts +30 -1
  62. package/components/IMarker.js.map +1 -1
  63. package/components/Legend.d.ts +155 -58
  64. package/components/Legend.js +208 -172
  65. package/components/Legend.js.map +1 -1
  66. package/components/LegendEntry.d.ts +38 -0
  67. package/components/LegendEntry.js +34 -0
  68. package/components/LegendEntry.js.map +1 -1
  69. package/components/LimitLine.d.ts +40 -22
  70. package/components/LimitLine.js +44 -56
  71. package/components/LimitLine.js.map +1 -1
  72. package/components/MarkerImage.d.ts +1 -0
  73. package/components/MarkerImage.js +97 -0
  74. package/components/MarkerImage.js.map +1 -0
  75. package/components/XAxis.d.ts +41 -10
  76. package/components/XAxis.js +42 -24
  77. package/components/XAxis.js.map +1 -1
  78. package/components/YAxis.d.ts +114 -37
  79. package/components/YAxis.js +138 -106
  80. package/components/YAxis.js.map +1 -1
  81. package/data/BarData.d.ts +32 -4
  82. package/data/BarData.js +92 -24
  83. package/data/BarData.js.map +1 -1
  84. package/data/BarDataSet.d.ts +35 -18
  85. package/data/BarDataSet.js +42 -47
  86. package/data/BarDataSet.js.map +1 -1
  87. package/data/BarEntry.d.ts +3 -0
  88. package/data/BarEntry.js.map +1 -1
  89. package/data/BarLineScatterCandleBubbleData.d.ts +5 -0
  90. package/data/BarLineScatterCandleBubbleData.js +5 -0
  91. package/data/BarLineScatterCandleBubbleData.js.map +1 -1
  92. package/data/BarLineScatterCandleBubbleDataSet.d.ts +11 -3
  93. package/data/BarLineScatterCandleBubbleDataSet.js +11 -7
  94. package/data/BarLineScatterCandleBubbleDataSet.js.map +1 -1
  95. package/data/BaseDataSet.d.ts +129 -71
  96. package/data/BaseDataSet.js +146 -169
  97. package/data/BaseDataSet.js.map +1 -1
  98. package/data/BaseEntry.d.ts +3 -0
  99. package/data/BaseEntry.js.map +1 -1
  100. package/data/BubbleData.d.ts +7 -1
  101. package/data/BubbleData.js +8 -2
  102. package/data/BubbleData.js.map +1 -1
  103. package/data/BubbleDataSet.d.ts +7 -7
  104. package/data/BubbleDataSet.js +8 -15
  105. package/data/BubbleDataSet.js.map +1 -1
  106. package/data/BubbleEntry.d.ts +1 -0
  107. package/data/BubbleEntry.js.map +1 -1
  108. package/data/CandleData.js.map +1 -1
  109. package/data/CandleDataSet.d.ts +64 -30
  110. package/data/CandleDataSet.js +67 -74
  111. package/data/CandleDataSet.js.map +1 -1
  112. package/data/CandleEntry.d.ts +4 -0
  113. package/data/CandleEntry.js.map +1 -1
  114. package/data/ChartData.d.ts +273 -18
  115. package/data/ChartData.js +398 -93
  116. package/data/ChartData.js.map +1 -1
  117. package/data/CombinedData.d.ts +39 -12
  118. package/data/CombinedData.js +87 -71
  119. package/data/CombinedData.js.map +1 -1
  120. package/data/DataSet.d.ts +59 -8
  121. package/data/DataSet.js +114 -26
  122. package/data/DataSet.js.map +1 -1
  123. package/data/Entry.js.map +1 -1
  124. package/data/LineData.d.ts +5 -0
  125. package/data/LineData.js +5 -0
  126. package/data/LineData.js.map +1 -1
  127. package/data/LineDataSet.d.ts +80 -49
  128. package/data/LineDataSet.js +90 -135
  129. package/data/LineDataSet.js.map +1 -1
  130. package/data/LineRadarDataSet.d.ts +27 -17
  131. package/data/LineRadarDataSet.js +22 -35
  132. package/data/LineRadarDataSet.js.map +1 -1
  133. package/data/LineScatterCandleRadarDataSet.d.ts +30 -15
  134. package/data/LineScatterCandleRadarDataSet.js +36 -39
  135. package/data/LineScatterCandleRadarDataSet.js.map +1 -1
  136. package/data/PieData.d.ts +26 -0
  137. package/data/PieData.js +28 -2
  138. package/data/PieData.js.map +1 -1
  139. package/data/PieDataSet.d.ts +40 -36
  140. package/data/PieDataSet.js +36 -88
  141. package/data/PieDataSet.js.map +1 -1
  142. package/data/PieEntry.d.ts +3 -0
  143. package/data/PieEntry.js.map +1 -1
  144. package/data/RadarData.d.ts +10 -4
  145. package/data/RadarData.js +5 -6
  146. package/data/RadarData.js.map +1 -1
  147. package/data/RadarDataSet.d.ts +7 -21
  148. package/data/RadarDataSet.js +10 -49
  149. package/data/RadarDataSet.js.map +1 -1
  150. package/data/RadarEntry.js.map +1 -1
  151. package/data/ScatterData.d.ts +4 -1
  152. package/data/ScatterData.js +5 -2
  153. package/data/ScatterData.js.map +1 -1
  154. package/data/ScatterDataSet.d.ts +24 -14
  155. package/data/ScatterDataSet.js +26 -31
  156. package/data/ScatterDataSet.js.map +1 -1
  157. package/formatter/DefaultAxisValueFormatter.d.ts +17 -3
  158. package/formatter/DefaultAxisValueFormatter.js +12 -5
  159. package/formatter/DefaultAxisValueFormatter.js.map +1 -1
  160. package/formatter/DefaultFillFormatter.js +7 -7
  161. package/formatter/DefaultFillFormatter.js.map +1 -1
  162. package/formatter/DefaultValueFormatter.js.map +1 -1
  163. package/formatter/IAxisValueFormatter.d.ts +20 -2
  164. package/formatter/IAxisValueFormatter.js.map +1 -1
  165. package/formatter/IFillFormatter.d.ts +25 -0
  166. package/formatter/IFillFormatter.js.map +1 -1
  167. package/formatter/IValueFormatter.d.ts +21 -0
  168. package/formatter/IValueFormatter.js.map +1 -1
  169. package/formatter/ValueFormatter.d.ts +60 -0
  170. package/formatter/ValueFormatter.js +60 -0
  171. package/formatter/ValueFormatter.js.map +1 -1
  172. package/highlight/BarHighlighter.d.ts +22 -2
  173. package/highlight/BarHighlighter.js +43 -17
  174. package/highlight/BarHighlighter.js.map +1 -1
  175. package/highlight/ChartHighlighter.d.ts +87 -5
  176. package/highlight/ChartHighlighter.js +126 -23
  177. package/highlight/ChartHighlighter.js.map +1 -1
  178. package/highlight/CombinedHighlighter.d.ts +6 -0
  179. package/highlight/CombinedHighlighter.js +31 -16
  180. package/highlight/CombinedHighlighter.js.map +1 -1
  181. package/highlight/Highlight.d.ts +54 -1
  182. package/highlight/Highlight.js +5 -0
  183. package/highlight/Highlight.js.map +1 -1
  184. package/highlight/HorizontalBarHighlighter.d.ts +1 -1
  185. package/highlight/HorizontalBarHighlighter.js +14 -13
  186. package/highlight/HorizontalBarHighlighter.js.map +1 -1
  187. package/highlight/IHighlighter.d.ts +11 -1
  188. package/highlight/IHighlighter.js.map +1 -1
  189. package/highlight/PieHighlighter.js +2 -2
  190. package/highlight/PieHighlighter.js.map +1 -1
  191. package/highlight/PieRadarHighlighter.d.ts +12 -1
  192. package/highlight/PieRadarHighlighter.js +12 -4
  193. package/highlight/PieRadarHighlighter.js.map +1 -1
  194. package/highlight/RadarHighlighter.d.ts +12 -0
  195. package/highlight/RadarHighlighter.js +24 -10
  196. package/highlight/RadarHighlighter.js.map +1 -1
  197. package/index.d.ts +11 -0
  198. package/index.js +15 -0
  199. package/index.js.map +1 -0
  200. package/interfaces/dataprovider/BarDataProvider.d.ts +4 -4
  201. package/interfaces/dataprovider/BarLineScatterCandleBubbleDataProvider.d.ts +8 -3
  202. package/interfaces/dataprovider/BubbleDataProvider.d.ts +1 -1
  203. package/interfaces/dataprovider/CandleDataProvider.d.ts +1 -1
  204. package/interfaces/dataprovider/ChartInterface.d.ts +17 -22
  205. package/interfaces/dataprovider/CombinedDataProvider.d.ts +1 -1
  206. package/interfaces/dataprovider/LineDataProvider.d.ts +1 -1
  207. package/interfaces/dataprovider/ScatterDataProvider.d.ts +1 -1
  208. package/interfaces/datasets/IBarDataSet.d.ts +8 -22
  209. package/interfaces/datasets/IBarLineScatterCandleBubbleDataSet.d.ts +1 -3
  210. package/interfaces/datasets/IBubbleDataSet.d.ts +3 -9
  211. package/interfaces/datasets/ICandleDataSet.d.ts +44 -41
  212. package/interfaces/datasets/IDataSet.d.ts +35 -151
  213. package/interfaces/datasets/ILineDataSet.d.ts +15 -54
  214. package/interfaces/datasets/ILineRadarDataSet.d.ts +7 -28
  215. package/interfaces/datasets/ILineScatterCandleRadarDataSet.d.ts +5 -4
  216. package/interfaces/datasets/IPieDataSet.d.ts +22 -40
  217. package/interfaces/datasets/IRadarDataSet.d.ts +7 -13
  218. package/interfaces/datasets/IScatterDataSet.d.ts +17 -16
  219. package/jobs/AnimatedMoveViewJob.d.ts +3 -0
  220. package/jobs/AnimatedMoveViewJob.js +12 -8
  221. package/jobs/AnimatedMoveViewJob.js.map +1 -1
  222. package/jobs/AnimatedViewPortJob.d.ts +7 -8
  223. package/jobs/AnimatedViewPortJob.js +16 -23
  224. package/jobs/AnimatedViewPortJob.js.map +1 -1
  225. package/jobs/AnimatedZoomJob.d.ts +8 -5
  226. package/jobs/AnimatedZoomJob.js +30 -26
  227. package/jobs/AnimatedZoomJob.js.map +1 -1
  228. package/jobs/MoveViewJob.d.ts +3 -0
  229. package/jobs/MoveViewJob.js +10 -7
  230. package/jobs/MoveViewJob.js.map +1 -1
  231. package/jobs/ViewPortJob.d.ts +3 -5
  232. package/jobs/ViewPortJob.js +5 -11
  233. package/jobs/ViewPortJob.js.map +1 -1
  234. package/jobs/ZoomJob.js +14 -14
  235. package/jobs/ZoomJob.js.map +1 -1
  236. package/listener/BarLineChartTouchListener.d.ts +82 -1
  237. package/listener/BarLineChartTouchListener.js +169 -67
  238. package/listener/BarLineChartTouchListener.js.map +1 -1
  239. package/listener/ChartTouchListener.d.ts +39 -5
  240. package/listener/ChartTouchListener.js +38 -11
  241. package/listener/ChartTouchListener.js.map +1 -1
  242. package/listener/PieRadarChartTouchListener.d.ts +56 -1
  243. package/listener/PieRadarChartTouchListener.js +201 -17
  244. package/listener/PieRadarChartTouchListener.js.map +1 -1
  245. package/model/GradientColor.js.map +1 -1
  246. package/package.json +23 -15
  247. package/renderer/AxisRenderer.d.ts +66 -7
  248. package/renderer/AxisRenderer.js +69 -21
  249. package/renderer/AxisRenderer.js.map +1 -1
  250. package/renderer/BarChartRenderer.d.ts +11 -0
  251. package/renderer/BarChartRenderer.js +99 -71
  252. package/renderer/BarChartRenderer.js.map +1 -1
  253. package/renderer/BarLineScatterCandleBubbleRenderer.d.ts +37 -0
  254. package/renderer/BarLineScatterCandleBubbleRenderer.js +36 -8
  255. package/renderer/BarLineScatterCandleBubbleRenderer.js.map +1 -1
  256. package/renderer/BubbleChartRenderer.d.ts +6 -2
  257. package/renderer/BubbleChartRenderer.js +51 -40
  258. package/renderer/BubbleChartRenderer.js.map +1 -1
  259. package/renderer/CandleStickChartRenderer.d.ts +1 -1
  260. package/renderer/CandleStickChartRenderer.js +64 -50
  261. package/renderer/CandleStickChartRenderer.js.map +1 -1
  262. package/renderer/CombinedChartRenderer.d.ts +20 -1
  263. package/renderer/CombinedChartRenderer.js +72 -42
  264. package/renderer/CombinedChartRenderer.js.map +1 -1
  265. package/renderer/DataRenderer.d.ts +78 -4
  266. package/renderer/DataRenderer.js +65 -6
  267. package/renderer/DataRenderer.js.map +1 -1
  268. package/renderer/HorizontalBarChartRenderer.d.ts +5 -2
  269. package/renderer/HorizontalBarChartRenderer.js +87 -66
  270. package/renderer/HorizontalBarChartRenderer.js.map +1 -1
  271. package/renderer/LegendRenderer.d.ts +32 -0
  272. package/renderer/LegendRenderer.js +98 -59
  273. package/renderer/LegendRenderer.js.map +1 -1
  274. package/renderer/LineChartRenderer.d.ts +38 -1
  275. package/renderer/LineChartRenderer.js +185 -110
  276. package/renderer/LineChartRenderer.js.map +1 -1
  277. package/renderer/LineRadarRenderer.d.ts +19 -0
  278. package/renderer/LineRadarRenderer.js +25 -1
  279. package/renderer/LineRadarRenderer.js.map +1 -1
  280. package/renderer/LineScatterCandleRadarRenderer.d.ts +11 -0
  281. package/renderer/LineScatterCandleRadarRenderer.js +26 -9
  282. package/renderer/LineScatterCandleRadarRenderer.js.map +1 -1
  283. package/renderer/PieChartRenderer.d.ts +45 -1
  284. package/renderer/PieChartRenderer.js +195 -122
  285. package/renderer/PieChartRenderer.js.map +1 -1
  286. package/renderer/RadarChartRenderer.d.ts +10 -0
  287. package/renderer/RadarChartRenderer.js +119 -77
  288. package/renderer/RadarChartRenderer.js.map +1 -1
  289. package/renderer/Renderer.d.ts +8 -0
  290. package/renderer/Renderer.js +5 -0
  291. package/renderer/Renderer.js.map +1 -1
  292. package/renderer/ScatterChartRenderer.d.ts +5 -5
  293. package/renderer/ScatterChartRenderer.js +51 -37
  294. package/renderer/ScatterChartRenderer.js.map +1 -1
  295. package/renderer/XAxisRenderer.d.ts +29 -4
  296. package/renderer/XAxisRenderer.js +128 -95
  297. package/renderer/XAxisRenderer.js.map +1 -1
  298. package/renderer/XAxisRendererHorizontalBarChart.d.ts +11 -0
  299. package/renderer/XAxisRendererHorizontalBarChart.js +75 -57
  300. package/renderer/XAxisRendererHorizontalBarChart.js.map +1 -1
  301. package/renderer/XAxisRendererRadarChart.d.ts +5 -0
  302. package/renderer/XAxisRendererRadarChart.js +26 -13
  303. package/renderer/XAxisRendererRadarChart.js.map +1 -1
  304. package/renderer/YAxisRenderer.d.ts +42 -5
  305. package/renderer/YAxisRenderer.js +126 -69
  306. package/renderer/YAxisRenderer.js.map +1 -1
  307. package/renderer/YAxisRendererHorizontalBarChart.d.ts +22 -1
  308. package/renderer/YAxisRendererHorizontalBarChart.js +80 -58
  309. package/renderer/YAxisRendererHorizontalBarChart.js.map +1 -1
  310. package/renderer/YAxisRendererRadarChart.js +62 -32
  311. package/renderer/YAxisRendererRadarChart.js.map +1 -1
  312. package/renderer/scatter/ChevronDownShapeRenderer.d.ts +4 -0
  313. package/renderer/scatter/ChevronDownShapeRenderer.js +5 -1
  314. package/renderer/scatter/ChevronDownShapeRenderer.js.map +1 -1
  315. package/renderer/scatter/ChevronUpShapeRenderer.d.ts +4 -0
  316. package/renderer/scatter/ChevronUpShapeRenderer.js +5 -1
  317. package/renderer/scatter/ChevronUpShapeRenderer.js.map +1 -1
  318. package/renderer/scatter/CircleShapeRenderer.d.ts +4 -0
  319. package/renderer/scatter/CircleShapeRenderer.js +8 -5
  320. package/renderer/scatter/CircleShapeRenderer.js.map +1 -1
  321. package/renderer/scatter/CrossShapeRenderer.d.ts +4 -0
  322. package/renderer/scatter/CrossShapeRenderer.js +5 -1
  323. package/renderer/scatter/CrossShapeRenderer.js.map +1 -1
  324. package/renderer/scatter/IShapeRenderer.d.ts +14 -0
  325. package/renderer/scatter/IShapeRenderer.js.map +1 -1
  326. package/renderer/scatter/SquareShapeRenderer.d.ts +4 -0
  327. package/renderer/scatter/SquareShapeRenderer.js +8 -5
  328. package/renderer/scatter/SquareShapeRenderer.js.map +1 -1
  329. package/renderer/scatter/TriangleShapeRenderer.d.ts +4 -0
  330. package/renderer/scatter/TriangleShapeRenderer.js +9 -5
  331. package/renderer/scatter/TriangleShapeRenderer.js.map +1 -1
  332. package/renderer/scatter/XShapeRenderer.d.ts +4 -0
  333. package/renderer/scatter/XShapeRenderer.js +5 -1
  334. package/renderer/scatter/XShapeRenderer.js.map +1 -1
  335. package/utils/ColorTemplate.d.ts +21 -1
  336. package/utils/ColorTemplate.js +21 -3
  337. package/utils/ColorTemplate.js.map +1 -1
  338. package/utils/HorizontalViewPortHandler.d.ts +3 -0
  339. package/utils/HorizontalViewPortHandler.js +3 -0
  340. package/utils/HorizontalViewPortHandler.js.map +1 -1
  341. package/utils/MPSize.d.ts +7 -0
  342. package/utils/ObjectPool.d.ts +56 -0
  343. package/utils/ObjectPool.js +66 -8
  344. package/utils/ObjectPool.js.map +1 -1
  345. package/utils/Transformer.d.ts +118 -0
  346. package/utils/Transformer.js +141 -7
  347. package/utils/Transformer.js.map +1 -1
  348. package/utils/TransformerHorizontalBarChart.d.ts +10 -0
  349. package/utils/TransformerHorizontalBarChart.js +18 -2
  350. package/utils/TransformerHorizontalBarChart.js.map +1 -1
  351. package/utils/Utils.d.ts +139 -17
  352. package/utils/Utils.js +185 -60
  353. package/utils/Utils.js.map +1 -1
  354. package/utils/ViewPortHandler.d.ts +234 -19
  355. package/utils/ViewPortHandler.js +306 -63
  356. package/utils/ViewPortHandler.js.map +1 -1
  357. package/utils/colors/colorful.js.map +1 -1
  358. package/utils/colors/joyful.js.map +1 -1
  359. package/utils/colors/liberty.js.map +1 -1
  360. package/utils/colors/material.js.map +1 -1
  361. package/utils/colors/pastel.js.map +1 -1
  362. package/utils/colors/vordiplom.js.map +1 -1
  363. package/charts/index.d.ts +0 -11
  364. package/charts/index.js +0 -15
  365. package/charts/index.js.map +0 -1
@@ -15,25 +15,80 @@ export interface CustomRenderer extends BaseCustomRenderer {
15
15
  }
16
16
  export declare class BarChart extends BarLineChartBase<Entry, BarDataSet, BarData> implements BarDataProvider {
17
17
  protected mRenderer: BarChartRenderer;
18
- protected mHighlightFullBarEnabled: any;
19
- protected mFitBars: any;
20
- private mDrawValueAboveBar;
21
- private mDrawBarShadow;
22
- private mCustomRenderer;
18
+ /**
19
+ * Set this to true to make the highlight operation full-bar oriented, false to make it highlight single values (relevant
20
+ * only for stacked). If enabled, highlighting operations will highlight the whole bar, even if only a single stack entry
21
+ * was tapped.
22
+ * Default: false
23
+ *
24
+ * @param enabled
25
+ */
26
+ highlightFullBarEnabled: boolean;
27
+ /**
28
+ * Adds half of the bar width to each side of the x-axis range in order to allow the bars of the barchart to be
29
+ * fully displayed.
30
+ * Default: false
31
+ */
32
+ fitBars: boolean;
33
+ /**
34
+ * if set to true, all values are drawn above their bars, instead of below their top
35
+ */
36
+ drawValueAboveBarEnabled: boolean;
37
+ /**
38
+ * if set to true, a grey area is drawn behind each bar that indicates the maximum value
39
+ */
40
+ drawBarShadowEnabled: boolean;
41
+ customRenderer: CustomRenderer;
23
42
  protected init(): void;
24
43
  protected calcMinMax(): void;
44
+ /**
45
+ * Returns the Highlight object (contains x-index and DataSet index) of the selected value at the given touch
46
+ * point
47
+ * inside the BarChart.
48
+ *
49
+ * @param x
50
+ * @param y
51
+ * @return
52
+ */
53
+ getHighlightsByTouchPoint(x: number, y: number): Highlight<Entry>[];
54
+ /**
55
+ * Returns the Highlight object (contains x-index and DataSet index) of the selected value at the given touch
56
+ * point
57
+ * inside the BarChart.
58
+ *
59
+ * @param x
60
+ * @param y
61
+ * @return
62
+ */
25
63
  getHighlightByTouchPoint(x: number, y: number): Highlight;
64
+ /**
65
+ * Returns the bounding box of the specified Entry in the specified DataSet. Returns null if the Entry could not be
66
+ * found in the charts data.
67
+ *
68
+ * @param e
69
+ * @return
70
+ */
26
71
  getBarBounds(e: BarEntry): RectF;
27
- setDrawValueAboveBar(enabled: boolean): void;
28
- isDrawValueAboveBarEnabled(): boolean;
29
- setDrawBarShadow(enabled: boolean): void;
30
- isDrawBarShadowEnabled(): any;
31
- setHighlightFullBarEnabled(enabled: boolean): void;
32
- isHighlightFullBarEnabled(): any;
72
+ /**
73
+ * Highlights the value at the given x-value in the given DataSet. Provide
74
+ * -1 as the dataSetIndex to undo all highlighting.
75
+ *
76
+ * @param x
77
+ * @param dataSetIndex
78
+ * @param stackIndex the index inside the stack - only relevant for stacked entries
79
+ * @param callListener
80
+ */
33
81
  highlightValue(x: number, dataSetIndex: number, stackIndex: number, callListener?: boolean): void;
34
- getBarData(): BarData;
35
- setFitBars(enabled: boolean): void;
36
- setCustomRenderer(renderer: CustomRenderer): void;
37
- getCustomRenderer(): CustomRenderer;
82
+ get barData(): BarData;
83
+ /**
84
+ * Groups all BarDataSet objects this data object holds together by modifying the x-value of their entries.
85
+ * Previously set x-values of entries will be overwritten. Leaves space between bars and groups as specified
86
+ * by the parameters.
87
+ * Calls notifyDataSetChanged() afterwards.
88
+ *
89
+ * @param fromX the starting polet on the x-axis where the grouping should begin
90
+ * @param groupSpace the space between groups of bars in values (not pixels) e.g. 0.8f for bar width 1
91
+ * @param barSpace the space between individual bars in values (not pixels) e.g. 0.1 for bar width 1
92
+ */
38
93
  groupBars(fromX: any, groupSpace: any, barSpace: any): void;
39
94
  }
@@ -7,106 +7,135 @@ const LOG_TAG = 'BarChart';
7
7
  export class BarChart extends BarLineChartBase {
8
8
  constructor() {
9
9
  super(...arguments);
10
- this.mDrawValueAboveBar = true;
10
+ /**
11
+ * Set this to true to make the highlight operation full-bar oriented, false to make it highlight single values (relevant
12
+ * only for stacked). If enabled, highlighting operations will highlight the whole bar, even if only a single stack entry
13
+ * was tapped.
14
+ * Default: false
15
+ *
16
+ * @param enabled
17
+ */
18
+ this.highlightFullBarEnabled = false;
19
+ /**
20
+ * if set to true, all values are drawn above their bars, instead of below their top
21
+ */
22
+ this.drawValueAboveBarEnabled = true;
11
23
  }
12
24
  init() {
13
25
  super.init();
14
- this.mRenderer = new BarChartRenderer(this, this.mAnimator, this.mViewPortHandler);
15
- this.setHighlighter(new BarHighlighter(this));
16
- this.getXAxis().setSpaceMin(0.5);
17
- this.getXAxis().setSpaceMax(0.5);
26
+ this.renderer = new BarChartRenderer(this, this.animator, this.viewPortHandler);
27
+ this.highlighter = new BarHighlighter(this);
28
+ this.xAxis.spaceMin = 0.5;
29
+ this.xAxis.spaceMax = 0.5;
18
30
  }
19
31
  calcMinMax() {
20
- if (this.mFitBars) {
21
- this.mXAxis.calculate(this.mData.getXMin() - this.mData.getBarWidth() / 2, this.mData.getXMax() + this.mData.getBarWidth() / 2);
32
+ if (this.fitBars) {
33
+ this.xAxis.calculate(this.mData.xMin - this.mData.barWidth / 2, this.mData.xMax + this.mData.barWidth / 2);
22
34
  }
23
35
  else {
24
- this.mXAxis.calculate(this.mData.getXMin(), this.mData.getXMax());
36
+ this.xAxis.calculate(this.mData.xMin, this.mData.xMax);
25
37
  }
26
- if (this.mAxisLeft.isEnabled()) {
38
+ // calculate axis range (min / max) according to provided data
39
+ if (this.mAxisLeft.enabled) {
27
40
  this.mAxisLeft.calculate(this.mData.getYMin(AxisDependency.LEFT), this.mData.getYMax(AxisDependency.LEFT));
28
41
  }
29
- if (this.mAxisRight && this.mAxisRight.isEnabled()) {
42
+ if (this.mAxisRight?.enabled) {
30
43
  this.mAxisRight.calculate(this.mData.getYMin(AxisDependency.RIGHT), this.mData.getYMax(AxisDependency.RIGHT));
31
44
  }
32
45
  }
33
- getHighlightByTouchPoint(x, y) {
34
- if (this.mData == null) {
46
+ /**
47
+ * Returns the Highlight object (contains x-index and DataSet index) of the selected value at the given touch
48
+ * point
49
+ * inside the BarChart.
50
+ *
51
+ * @param x
52
+ * @param y
53
+ * @return
54
+ */
55
+ getHighlightsByTouchPoint(x, y) {
56
+ if (!this.mData) {
35
57
  console.error(LOG_TAG, "Can't select by touch. No data set.");
36
58
  return null;
37
59
  }
38
- const h = this.getHighlighter().getHighlight(x, y);
39
- if (h === null || !this.isHighlightFullBarEnabled()) {
40
- return h;
41
- }
42
- return {
43
- x: h.x,
44
- y: h.y,
45
- xPx: h.xPx,
46
- yPx: h.yPx,
47
- dataSetIndex: h.dataSetIndex,
48
- axis: h.axis
49
- };
50
- }
60
+ return this.highlighter.getHighlight(x, y);
61
+ }
62
+ /**
63
+ * Returns the Highlight object (contains x-index and DataSet index) of the selected value at the given touch
64
+ * point
65
+ * inside the BarChart.
66
+ *
67
+ * @param x
68
+ * @param y
69
+ * @return
70
+ */
71
+ getHighlightByTouchPoint(x, y) {
72
+ // if (h === null || !this.highlightFullBarEnabled) {
73
+ return this.getHighlightsByTouchPoint(x, y)?.[0];
74
+ // }
75
+ // For isHighlightFullBarEnabled, remove stackIndex
76
+ // return {
77
+ // x: h.x,
78
+ // y: h.y,
79
+ // xPx: h.xPx,
80
+ // yPx: h.yPx,
81
+ // dataSetIndex: h.dataSetIndex,
82
+ // axis: h.axis
83
+ // };
84
+ }
85
+ /**
86
+ * Returns the bounding box of the specified Entry in the specified DataSet. Returns null if the Entry could not be
87
+ * found in the charts data.
88
+ *
89
+ * @param e
90
+ * @return
91
+ */
51
92
  getBarBounds(e) {
93
+ // WARNING: wont work if index is used as xKey(xKey not set)
52
94
  const { set, index } = this.mData.getDataSetAndIndexForEntry(e);
53
- if (set === null) {
95
+ if (!set) {
54
96
  return new RectF(Number.MIN_VALUE, Number.MIN_VALUE, Number.MIN_VALUE, Number.MIN_VALUE);
55
97
  }
56
98
  const xKey = set.xProperty;
57
99
  const yKey = set.yProperty;
58
100
  const x = set.getEntryXValue(e, index);
59
101
  const y = e[yKey];
60
- const barWidth = this.mData.getBarWidth();
102
+ const barWidth = this.mData.barWidth;
61
103
  const left = x - barWidth / 2;
62
104
  const right = x + barWidth / 2;
63
105
  const top = y >= 0 ? y : 0;
64
106
  const bottom = y <= 0 ? y : 0;
65
107
  const outputRect = new RectF(left, top, right, bottom);
66
- this.getTransformer(set.getAxisDependency()).rectValueToPixel(outputRect);
108
+ this.getTransformer(set.axisDependency).rectValueToPixel(outputRect);
67
109
  return outputRect;
68
110
  }
69
- setDrawValueAboveBar(enabled) {
70
- this.mDrawValueAboveBar = enabled;
71
- }
72
- isDrawValueAboveBarEnabled() {
73
- return this.mDrawValueAboveBar;
74
- }
75
- setDrawBarShadow(enabled) {
76
- this.mDrawBarShadow = enabled;
77
- }
78
- isDrawBarShadowEnabled() {
79
- return this.mDrawBarShadow;
80
- }
81
- setHighlightFullBarEnabled(enabled) {
82
- this.mHighlightFullBarEnabled = enabled;
83
- }
84
- isHighlightFullBarEnabled() {
85
- return this.mHighlightFullBarEnabled;
86
- }
111
+ /**
112
+ * Highlights the value at the given x-value in the given DataSet. Provide
113
+ * -1 as the dataSetIndex to undo all highlighting.
114
+ *
115
+ * @param x
116
+ * @param dataSetIndex
117
+ * @param stackIndex the index inside the stack - only relevant for stacked entries
118
+ * @param callListener
119
+ */
87
120
  highlightValue(x, dataSetIndex, stackIndex, callListener = false) {
88
121
  this.highlight({ x, y: 0, dataSetIndex, stackIndex }, callListener);
89
122
  }
90
- getBarData() {
123
+ get barData() {
91
124
  return this.mData;
92
125
  }
93
- setFitBars(enabled) {
94
- this.mFitBars = enabled;
95
- }
96
- setCustomRenderer(renderer) {
97
- this.mCustomRenderer = renderer;
98
- }
99
- getCustomRenderer() {
100
- return this.mCustomRenderer;
101
- }
126
+ /**
127
+ * Groups all BarDataSet objects this data object holds together by modifying the x-value of their entries.
128
+ * Previously set x-values of entries will be overwritten. Leaves space between bars and groups as specified
129
+ * by the parameters.
130
+ * Calls notifyDataSetChanged() afterwards.
131
+ *
132
+ * @param fromX the starting polet on the x-axis where the grouping should begin
133
+ * @param groupSpace the space between groups of bars in values (not pixels) e.g. 0.8f for bar width 1
134
+ * @param barSpace the space between individual bars in values (not pixels) e.g. 0.1 for bar width 1
135
+ */
102
136
  groupBars(fromX, groupSpace, barSpace) {
103
- if (this.getBarData() === null) {
104
- throw new Error('You need to set data for the chart before grouping bars.');
105
- }
106
- else {
107
- this.getBarData().groupBars(fromX, groupSpace, barSpace);
108
- this.notifyDataSetChanged();
109
- }
137
+ this.barData.groupBars(fromX, groupSpace, barSpace);
138
+ this.notifyDataSetChanged();
110
139
  }
111
140
  }
112
141
  //# sourceMappingURL=BarChart.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"BarChart.js","sourceRoot":"../src/","sources":["charts/BarChart.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"BarChart.js","sourceRoot":"","sources":["../../../src/ui-chart/charts/BarChart.ts"],"names":[],"mappings":"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"}