echarts 4.0.4 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (918) hide show
  1. package/.jshintrc-dist +1 -1
  2. package/KEYS +74 -0
  3. package/LICENSE +223 -29
  4. package/NOTICE +5 -0
  5. package/README.md +8 -1
  6. package/build/addHeader.js +113 -0
  7. package/build/amd2common.js +19 -0
  8. package/build/build.js +19 -0
  9. package/build/config.js +25 -1
  10. package/build/mangleString.js +19 -0
  11. package/build/optimize.js +19 -0
  12. package/build/pre-publish.js +26 -3
  13. package/build/preamble.js +20 -0
  14. package/build/rollup-plugin-ec-lang.js +20 -0
  15. package/build/rollup-plugin-ec-remove-dev.js +19 -0
  16. package/dist/echarts-en.common.js +5624 -1049
  17. package/dist/echarts-en.common.min.js +21 -1
  18. package/dist/echarts-en.js +10720 -1979
  19. package/dist/echarts-en.js.map +1 -1
  20. package/dist/echarts-en.min.js +21 -1
  21. package/dist/echarts-en.simple.js +3835 -869
  22. package/dist/echarts-en.simple.min.js +21 -1
  23. package/dist/echarts.common.js +5624 -1049
  24. package/dist/echarts.common.min.js +21 -1
  25. package/dist/echarts.js +10720 -1979
  26. package/dist/echarts.js.map +1 -1
  27. package/dist/echarts.min.js +21 -1
  28. package/dist/echarts.simple.js +3835 -869
  29. package/dist/echarts.simple.min.js +21 -1
  30. package/dist/extension/bmap.js +76 -0
  31. package/dist/extension/bmap.js.map +1 -1
  32. package/dist/extension/bmap.min.js +20 -0
  33. package/dist/extension/dataTool.js +95 -0
  34. package/dist/extension/dataTool.js.map +1 -1
  35. package/dist/extension/dataTool.min.js +20 -0
  36. package/echarts.all.js +19 -0
  37. package/echarts.blank.js +19 -0
  38. package/echarts.common.js +19 -0
  39. package/echarts.simple.js +19 -0
  40. package/extension/bmap/BMapCoordSys.js +19 -0
  41. package/extension/bmap/BMapModel.js +18 -0
  42. package/extension/bmap/BMapView.js +18 -0
  43. package/extension/bmap/bmap.js +19 -0
  44. package/extension/dataTool/gexf.js +18 -0
  45. package/extension/dataTool/index.js +19 -0
  46. package/extension/dataTool/prepareBoxplotData.js +19 -0
  47. package/extension/dataTool/quantile.js +19 -0
  48. package/extension/echarts.js +19 -0
  49. package/extension/webpack.config.js +19 -0
  50. package/extension-src/bmap/BMapCoordSys.js +19 -0
  51. package/extension-src/bmap/BMapModel.js +19 -0
  52. package/extension-src/bmap/BMapView.js +19 -0
  53. package/extension-src/bmap/bmap.js +19 -0
  54. package/extension-src/dataTool/gexf.js +19 -0
  55. package/extension-src/dataTool/index.js +19 -0
  56. package/extension-src/dataTool/prepareBoxplotData.js +19 -0
  57. package/extension-src/dataTool/quantile.js +19 -0
  58. package/index.common.js +19 -0
  59. package/index.js +19 -0
  60. package/index.simple.js +19 -0
  61. package/lib/CoordinateSystem.js +18 -0
  62. package/lib/ExtensionAPI.js +18 -0
  63. package/lib/action/createDataSelectAction.js +18 -0
  64. package/lib/action/geoRoam.js +19 -0
  65. package/lib/action/roamHelper.js +19 -0
  66. package/lib/chart/bar/BarSeries.js +42 -1
  67. package/lib/chart/bar/BarView.js +112 -14
  68. package/lib/chart/bar/BaseBarSeries.js +22 -0
  69. package/lib/chart/bar/PictorialBarSeries.js +18 -0
  70. package/lib/chart/bar/PictorialBarView.js +19 -0
  71. package/lib/chart/bar/barItemStyle.js +18 -0
  72. package/lib/chart/bar/helper.js +18 -0
  73. package/lib/chart/bar.js +28 -7
  74. package/lib/chart/boxplot/BoxplotSeries.js +35 -1
  75. package/lib/chart/boxplot/BoxplotView.js +128 -21
  76. package/lib/chart/boxplot/boxplotLayout.js +70 -63
  77. package/lib/chart/boxplot/boxplotVisual.js +18 -0
  78. package/lib/chart/boxplot.js +18 -0
  79. package/lib/chart/candlestick/CandlestickSeries.js +38 -4
  80. package/lib/chart/candlestick/CandlestickView.js +236 -22
  81. package/lib/chart/candlestick/candlestickLayout.js +143 -83
  82. package/lib/chart/candlestick/candlestickVisual.js +59 -14
  83. package/lib/chart/candlestick/preprocessor.js +18 -0
  84. package/lib/chart/candlestick.js +18 -0
  85. package/lib/chart/chord/ChordSeries.js +18 -0
  86. package/lib/chart/chord/ChordView.js +18 -0
  87. package/lib/chart/chord/Ribbon.js +18 -0
  88. package/lib/chart/chord/chordCircularLayout.js +19 -0
  89. package/lib/chart/chord.js +18 -0
  90. package/lib/chart/custom.js +18 -0
  91. package/lib/chart/effectScatter/EffectScatterSeries.js +18 -0
  92. package/lib/chart/effectScatter/EffectScatterView.js +18 -0
  93. package/lib/chart/effectScatter.js +18 -0
  94. package/lib/chart/funnel/FunnelSeries.js +19 -0
  95. package/lib/chart/funnel/FunnelView.js +19 -0
  96. package/lib/chart/funnel/funnelLayout.js +18 -0
  97. package/lib/chart/funnel.js +18 -0
  98. package/lib/chart/gauge/GaugeSeries.js +18 -0
  99. package/lib/chart/gauge/GaugeView.js +18 -0
  100. package/lib/chart/gauge/PointerPath.js +18 -0
  101. package/lib/chart/graph/GraphSeries.js +25 -1
  102. package/lib/chart/graph/GraphView.js +18 -0
  103. package/lib/chart/graph/adjustEdge.js +18 -0
  104. package/lib/chart/graph/backwardCompat.js +18 -0
  105. package/lib/chart/graph/categoryFilter.js +18 -0
  106. package/lib/chart/graph/categoryVisual.js +18 -0
  107. package/lib/chart/graph/circularLayout.js +18 -0
  108. package/lib/chart/graph/circularLayoutHelper.js +18 -0
  109. package/lib/chart/graph/createView.js +18 -0
  110. package/lib/chart/graph/edgeVisual.js +18 -0
  111. package/lib/chart/graph/forceHelper.js +18 -0
  112. package/lib/chart/graph/forceLayout.js +18 -0
  113. package/lib/chart/graph/graphAction.js +19 -0
  114. package/lib/chart/graph/simpleLayout.js +18 -0
  115. package/lib/chart/graph/simpleLayoutHelper.js +18 -0
  116. package/lib/chart/graph.js +18 -0
  117. package/lib/chart/heatmap/HeatmapLayer.js +19 -0
  118. package/lib/chart/heatmap/HeatmapSeries.js +18 -0
  119. package/lib/chart/heatmap/HeatmapView.js +18 -0
  120. package/lib/chart/helper/EffectLine.js +19 -0
  121. package/lib/chart/helper/EffectPolyline.js +19 -0
  122. package/lib/chart/helper/EffectSymbol.js +19 -0
  123. package/lib/chart/helper/LargeLineDraw.js +18 -0
  124. package/lib/chart/helper/LargeSymbolDraw.js +18 -0
  125. package/lib/chart/helper/Line.js +31 -13
  126. package/lib/chart/helper/LineDraw.js +26 -1
  127. package/lib/chart/helper/LinePath.js +19 -0
  128. package/lib/chart/helper/Polyline.js +19 -0
  129. package/lib/chart/helper/Symbol.js +53 -12
  130. package/lib/chart/helper/SymbolDraw.js +22 -2
  131. package/lib/chart/helper/createGraphFromNodeEdge.js +27 -3
  132. package/lib/chart/helper/createGraphFromNodeMatrix.js +19 -0
  133. package/lib/chart/helper/createListFromArray.js +19 -0
  134. package/lib/chart/helper/createListSimply.js +19 -0
  135. package/lib/chart/helper/createRenderPlanner.js +21 -2
  136. package/lib/chart/helper/labelHelper.js +19 -0
  137. package/lib/chart/helper/treeHelper.js +18 -0
  138. package/lib/chart/helper/whiskerBoxCommon.js +20 -27
  139. package/lib/chart/line/LineSeries.js +25 -10
  140. package/lib/chart/line/LineView.js +122 -41
  141. package/lib/chart/line/helper.js +39 -4
  142. package/lib/chart/line/lineAnimationDiff.js +18 -0
  143. package/lib/chart/line/poly.js +62 -36
  144. package/lib/chart/line.js +18 -0
  145. package/lib/chart/lines/LinesSeries.js +25 -4
  146. package/lib/chart/lines/LinesView.js +20 -1
  147. package/lib/chart/lines/linesLayout.js +19 -1
  148. package/lib/chart/lines/linesVisual.js +18 -0
  149. package/lib/chart/lines.js +18 -0
  150. package/lib/chart/map/MapSeries.js +18 -0
  151. package/lib/chart/map/MapView.js +18 -0
  152. package/lib/chart/map/backwardCompat.js +18 -0
  153. package/lib/chart/map/mapDataStatistic.js +18 -0
  154. package/lib/chart/map/mapSymbolLayout.js +18 -0
  155. package/lib/chart/map/mapVisual.js +18 -0
  156. package/lib/chart/map.js +18 -0
  157. package/lib/chart/parallel/ParallelSeries.js +20 -7
  158. package/lib/chart/parallel/ParallelView.js +86 -55
  159. package/lib/chart/parallel/parallelVisual.js +38 -15
  160. package/lib/chart/parallel.js +18 -0
  161. package/lib/chart/pictorialBar.js +18 -0
  162. package/lib/chart/pie/PieSeries.js +19 -0
  163. package/lib/chart/pie/PieView.js +19 -0
  164. package/lib/chart/pie/labelLayout.js +18 -0
  165. package/lib/chart/pie/pieLayout.js +18 -0
  166. package/lib/chart/pie.js +18 -0
  167. package/lib/chart/radar/RadarSeries.js +19 -0
  168. package/lib/chart/radar/RadarView.js +18 -0
  169. package/lib/chart/radar/backwardCompat.js +18 -0
  170. package/lib/chart/radar/radarLayout.js +19 -1
  171. package/lib/chart/radar.js +18 -0
  172. package/lib/chart/sankey/SankeySeries.js +26 -0
  173. package/lib/chart/sankey/SankeyView.js +62 -10
  174. package/lib/chart/sankey/sankeyAction.js +34 -0
  175. package/lib/chart/sankey/sankeyLayout.js +68 -19
  176. package/lib/chart/sankey/sankeyVisual.js +49 -19
  177. package/lib/chart/sankey.js +20 -0
  178. package/lib/chart/scatter/ScatterSeries.js +20 -2
  179. package/lib/chart/scatter/ScatterView.js +18 -0
  180. package/lib/chart/scatter.js +18 -0
  181. package/lib/chart/sunburst/SunburstPiece.js +24 -0
  182. package/lib/chart/sunburst/SunburstSeries.js +18 -0
  183. package/lib/chart/sunburst/SunburstView.js +27 -9
  184. package/lib/chart/sunburst/sunburstAction.js +19 -0
  185. package/lib/chart/sunburst/sunburstLayout.js +18 -0
  186. package/lib/chart/sunburst.js +18 -0
  187. package/lib/chart/themeRiver/ThemeRiverSeries.js +19 -1
  188. package/lib/chart/themeRiver/ThemeRiverView.js +19 -0
  189. package/lib/chart/themeRiver/themeRiverLayout.js +19 -0
  190. package/lib/chart/themeRiver/themeRiverVisual.js +19 -0
  191. package/lib/chart/themeRiver.js +18 -0
  192. package/lib/chart/tree/TreeSeries.js +40 -3
  193. package/lib/chart/tree/TreeView.js +32 -6
  194. package/lib/chart/tree/layoutHelper.js +19 -0
  195. package/lib/chart/tree/traversalHelper.js +19 -0
  196. package/lib/chart/tree/treeAction.js +18 -0
  197. package/lib/chart/tree/treeLayout.js +137 -0
  198. package/lib/chart/tree.js +20 -5
  199. package/lib/chart/treemap/Breadcrumb.js +19 -0
  200. package/lib/chart/treemap/TreemapSeries.js +18 -0
  201. package/lib/chart/treemap/TreemapView.js +18 -0
  202. package/lib/chart/treemap/helper.js +18 -0
  203. package/lib/chart/treemap/treemapAction.js +19 -0
  204. package/lib/chart/treemap/treemapLayout.js +18 -0
  205. package/lib/chart/treemap/treemapVisual.js +18 -0
  206. package/lib/chart/treemap.js +18 -0
  207. package/lib/component/axis/AngleAxisView.js +59 -27
  208. package/lib/component/axis/AxisBuilder.js +39 -69
  209. package/lib/component/axis/AxisView.js +19 -0
  210. package/lib/component/axis/CartesianAxisView.js +71 -39
  211. package/lib/component/axis/ParallelAxisView.js +18 -0
  212. package/lib/component/axis/RadiusAxisView.js +26 -4
  213. package/lib/component/axis/SingleAxisView.js +25 -14
  214. package/lib/component/axis/parallelAxisAction.js +19 -0
  215. package/lib/component/axisPointer/AxisPointerModel.js +18 -0
  216. package/lib/component/axisPointer/AxisPointerView.js +18 -0
  217. package/lib/component/axisPointer/BaseAxisPointer.js +19 -0
  218. package/lib/component/axisPointer/CartesianAxisPointer.js +20 -2
  219. package/lib/component/axisPointer/PolarAxisPointer.js +19 -1
  220. package/lib/component/axisPointer/SingleAxisPointer.js +19 -1
  221. package/lib/component/axisPointer/axisTrigger.js +18 -0
  222. package/lib/component/axisPointer/findPointFromSeries.js +19 -0
  223. package/lib/component/axisPointer/globalListener.js +19 -0
  224. package/lib/component/axisPointer/modelHelper.js +18 -0
  225. package/lib/component/axisPointer/viewHelper.js +20 -0
  226. package/lib/component/axisPointer.js +18 -0
  227. package/lib/component/brush/BrushModel.js +25 -1
  228. package/lib/component/brush/BrushView.js +18 -0
  229. package/lib/component/brush/brushAction.js +19 -0
  230. package/lib/component/brush/preprocessor.js +18 -0
  231. package/lib/component/brush/selector.js +18 -0
  232. package/lib/component/brush/visualEncoding.js +18 -0
  233. package/lib/component/brush.js +19 -0
  234. package/lib/component/calendar/CalendarView.js +18 -0
  235. package/lib/component/dataZoom/AxisProxy.js +18 -0
  236. package/lib/component/dataZoom/DataZoomModel.js +18 -0
  237. package/lib/component/dataZoom/DataZoomView.js +18 -0
  238. package/lib/component/dataZoom/InsideZoomModel.js +18 -0
  239. package/lib/component/dataZoom/InsideZoomView.js +36 -13
  240. package/lib/component/dataZoom/SelectZoomModel.js +18 -0
  241. package/lib/component/dataZoom/SelectZoomView.js +18 -0
  242. package/lib/component/dataZoom/SliderZoomModel.js +18 -0
  243. package/lib/component/dataZoom/SliderZoomView.js +29 -6
  244. package/lib/component/dataZoom/dataZoomAction.js +18 -0
  245. package/lib/component/dataZoom/dataZoomProcessor.js +23 -1
  246. package/lib/component/dataZoom/helper.js +18 -0
  247. package/lib/component/dataZoom/history.js +18 -0
  248. package/lib/component/dataZoom/roams.js +19 -18
  249. package/lib/component/dataZoom/typeDefaulter.js +18 -0
  250. package/lib/component/dataset.js +56 -3
  251. package/lib/component/geo/GeoView.js +18 -0
  252. package/lib/component/geo.js +18 -0
  253. package/lib/component/graphic.js +18 -0
  254. package/lib/component/gridSimple.js +18 -0
  255. package/lib/component/helper/BrushController.js +18 -0
  256. package/lib/component/helper/BrushTargetManager.js +18 -0
  257. package/lib/component/helper/MapDraw.js +18 -0
  258. package/lib/component/helper/RoamController.js +19 -0
  259. package/lib/component/helper/brushHelper.js +18 -0
  260. package/lib/component/helper/cursorHelper.js +18 -0
  261. package/lib/component/helper/interactionMutex.js +18 -0
  262. package/lib/component/helper/listComponent.js +19 -0
  263. package/lib/component/helper/roamHelper.js +19 -0
  264. package/lib/component/helper/selectableMixin.js +19 -0
  265. package/lib/component/helper/sliderMove.js +19 -0
  266. package/lib/component/legend/LegendModel.js +19 -0
  267. package/lib/component/legend/LegendView.js +41 -12
  268. package/lib/component/legend/ScrollableLegendModel.js +19 -0
  269. package/lib/component/legend/ScrollableLegendView.js +19 -0
  270. package/lib/component/legend/legendAction.js +18 -0
  271. package/lib/component/legend/legendFilter.js +18 -0
  272. package/lib/component/legend/scrollableLegendAction.js +19 -0
  273. package/lib/component/legend.js +18 -0
  274. package/lib/component/markArea.js +18 -0
  275. package/lib/component/markLine.js +18 -0
  276. package/lib/component/markPoint.js +18 -0
  277. package/lib/component/marker/MarkAreaModel.js +18 -0
  278. package/lib/component/marker/MarkAreaView.js +20 -2
  279. package/lib/component/marker/MarkLineModel.js +18 -0
  280. package/lib/component/marker/MarkLineView.js +20 -2
  281. package/lib/component/marker/MarkPointModel.js +18 -0
  282. package/lib/component/marker/MarkPointView.js +18 -0
  283. package/lib/component/marker/MarkerModel.js +19 -1
  284. package/lib/component/marker/MarkerView.js +18 -0
  285. package/lib/component/marker/markerHelper.js +25 -1
  286. package/lib/component/parallel.js +18 -0
  287. package/lib/component/polar.js +18 -0
  288. package/lib/component/radar/RadarView.js +22 -4
  289. package/lib/component/singleAxis.js +18 -0
  290. package/lib/component/timeline/SliderTimelineModel.js +18 -0
  291. package/lib/component/timeline/SliderTimelineView.js +41 -31
  292. package/lib/component/timeline/TimelineAxis.js +24 -35
  293. package/lib/component/timeline/TimelineModel.js +18 -0
  294. package/lib/component/timeline/TimelineView.js +18 -0
  295. package/lib/component/timeline/preprocessor.js +18 -0
  296. package/lib/component/timeline/timelineAction.js +18 -0
  297. package/lib/component/timeline/typeDefaulter.js +18 -0
  298. package/lib/component/timeline.js +19 -0
  299. package/lib/component/title.js +19 -0
  300. package/lib/component/toolbox/ToolboxModel.js +20 -2
  301. package/lib/component/toolbox/ToolboxView.js +18 -0
  302. package/lib/component/toolbox/feature/Brush.js +18 -0
  303. package/lib/component/toolbox/feature/DataView.js +18 -0
  304. package/lib/component/toolbox/feature/DataZoom.js +22 -1
  305. package/lib/component/toolbox/feature/MagicType.js +18 -0
  306. package/lib/component/toolbox/feature/Restore.js +18 -0
  307. package/lib/component/toolbox/feature/SaveAsImage.js +18 -0
  308. package/lib/component/toolbox/featureManager.js +18 -0
  309. package/lib/component/tooltip/TooltipContent.js +18 -0
  310. package/lib/component/tooltip/TooltipModel.js +18 -0
  311. package/lib/component/tooltip/TooltipView.js +19 -1
  312. package/lib/component/tooltip.js +18 -0
  313. package/lib/component/visualMap/ContinuousModel.js +18 -0
  314. package/lib/component/visualMap/ContinuousView.js +18 -0
  315. package/lib/component/visualMap/PiecewiseModel.js +19 -0
  316. package/lib/component/visualMap/PiecewiseView.js +18 -0
  317. package/lib/component/visualMap/VisualMapModel.js +18 -0
  318. package/lib/component/visualMap/VisualMapView.js +18 -0
  319. package/lib/component/visualMap/helper.js +19 -0
  320. package/lib/component/visualMap/preprocessor.js +18 -0
  321. package/lib/component/visualMap/typeDefaulter.js +18 -0
  322. package/lib/component/visualMap/visualEncoding.js +21 -1
  323. package/lib/component/visualMap/visualMapAction.js +18 -0
  324. package/lib/component/visualMapContinuous.js +19 -0
  325. package/lib/component/visualMapPiecewise.js +19 -0
  326. package/lib/config.js +18 -0
  327. package/lib/coord/Axis.js +164 -85
  328. package/lib/coord/View.js +19 -0
  329. package/lib/coord/axisDefault.js +52 -42
  330. package/lib/coord/axisHelper.js +120 -85
  331. package/lib/coord/axisModelCommonMixin.js +18 -8
  332. package/lib/coord/axisModelCreator.js +26 -3
  333. package/lib/coord/axisTickLabelBuilder.js +350 -0
  334. package/lib/coord/calendar/Calendar.js +19 -1
  335. package/lib/coord/calendar/CalendarModel.js +19 -0
  336. package/lib/coord/calendar/prepareCustom.js +18 -0
  337. package/lib/coord/cartesian/Axis2D.js +24 -16
  338. package/lib/coord/cartesian/AxisModel.js +18 -0
  339. package/lib/coord/cartesian/Cartesian.js +19 -0
  340. package/lib/coord/cartesian/Cartesian2D.js +26 -4
  341. package/lib/coord/cartesian/Grid.js +71 -79
  342. package/lib/coord/cartesian/GridModel.js +18 -0
  343. package/lib/{component/axis → coord/cartesian}/cartesianAxisHelper.js +29 -9
  344. package/lib/coord/cartesian/prepareCustom.js +18 -0
  345. package/lib/coord/geo/Geo.js +18 -0
  346. package/lib/coord/geo/GeoModel.js +18 -0
  347. package/lib/coord/geo/Region.js +19 -0
  348. package/lib/coord/geo/fix/diaoyuIsland.js +18 -0
  349. package/lib/coord/geo/fix/geoCoord.js +18 -0
  350. package/lib/coord/geo/fix/nanhai.js +18 -0
  351. package/lib/coord/geo/fix/textCoord.js +18 -0
  352. package/lib/coord/geo/geoCreator.js +19 -0
  353. package/lib/coord/geo/parseGeoJson.js +19 -0
  354. package/lib/coord/geo/prepareCustom.js +18 -0
  355. package/lib/coord/parallel/AxisModel.js +31 -4
  356. package/lib/coord/parallel/Parallel.js +35 -12
  357. package/lib/coord/parallel/ParallelAxis.js +19 -0
  358. package/lib/coord/parallel/ParallelModel.js +18 -0
  359. package/lib/coord/parallel/parallelCreator.js +19 -0
  360. package/lib/coord/parallel/parallelPreprocessor.js +18 -0
  361. package/lib/coord/polar/AngleAxis.js +18 -0
  362. package/lib/coord/polar/AxisModel.js +18 -0
  363. package/lib/coord/polar/Polar.js +19 -0
  364. package/lib/coord/polar/PolarModel.js +18 -0
  365. package/lib/coord/polar/RadiusAxis.js +18 -0
  366. package/lib/coord/polar/polarCreator.js +24 -3
  367. package/lib/coord/polar/prepareCustom.js +18 -0
  368. package/lib/coord/radar/IndicatorAxis.js +18 -0
  369. package/lib/coord/radar/Radar.js +18 -0
  370. package/lib/coord/radar/RadarModel.js +18 -0
  371. package/lib/coord/single/AxisModel.js +18 -0
  372. package/lib/coord/single/Single.js +19 -0
  373. package/lib/coord/single/SingleAxis.js +19 -5
  374. package/lib/coord/single/prepareCustom.js +18 -0
  375. package/lib/{component/axis → coord/single}/singleAxisHelper.js +20 -2
  376. package/lib/coord/single/singleCreator.js +19 -0
  377. package/lib/data/DataDiffer.js +18 -0
  378. package/lib/data/Graph.js +19 -0
  379. package/lib/data/List.js +184 -121
  380. package/lib/data/OrdinalMeta.js +19 -0
  381. package/lib/data/Source.js +19 -0
  382. package/lib/data/Tree.js +19 -0
  383. package/lib/data/helper/completeDimensions.js +26 -2
  384. package/lib/data/helper/createDimensions.js +19 -0
  385. package/lib/data/helper/dataProvider.js +22 -4
  386. package/lib/data/helper/dataStackHelper.js +50 -5
  387. package/lib/data/helper/dimensionHelper.js +26 -1
  388. package/lib/data/helper/linkList.js +19 -0
  389. package/lib/data/helper/sourceHelper.js +19 -0
  390. package/lib/data/helper/sourceType.js +18 -0
  391. package/lib/echarts.js +38 -16
  392. package/lib/export.js +19 -0
  393. package/lib/helper.js +21 -1
  394. package/lib/lang.js +18 -0
  395. package/lib/langEN.js +18 -0
  396. package/lib/langFI.js +18 -0
  397. package/lib/langTH.js +18 -0
  398. package/lib/layout/barGrid.js +139 -22
  399. package/lib/layout/barPolar.js +21 -1
  400. package/lib/layout/points.js +30 -7
  401. package/lib/loading/default.js +18 -0
  402. package/lib/model/Component.js +19 -0
  403. package/lib/model/Global.js +19 -1
  404. package/lib/model/Model.js +19 -0
  405. package/lib/model/OptionManager.js +19 -0
  406. package/lib/model/Series.js +21 -2
  407. package/lib/model/globalDefault.js +18 -0
  408. package/lib/model/mixin/areaStyle.js +18 -0
  409. package/lib/model/mixin/boxLayout.js +18 -0
  410. package/lib/model/mixin/colorPalette.js +19 -0
  411. package/lib/model/mixin/dataFormat.js +20 -1
  412. package/lib/model/mixin/itemStyle.js +18 -0
  413. package/lib/model/mixin/lineStyle.js +18 -0
  414. package/lib/model/mixin/makeStyleMapper.js +18 -0
  415. package/lib/model/mixin/textStyle.js +18 -0
  416. package/lib/model/referHelper.js +19 -0
  417. package/lib/preprocessor/backwardCompat.js +18 -0
  418. package/lib/preprocessor/helper/compatStyle.js +20 -0
  419. package/lib/processor/dataFilter.js +18 -0
  420. package/lib/processor/dataSample.js +27 -5
  421. package/lib/processor/dataStack.js +18 -0
  422. package/lib/scale/Interval.js +19 -14
  423. package/lib/scale/Log.js +19 -0
  424. package/lib/scale/Ordinal.js +26 -1
  425. package/lib/scale/Scale.js +26 -15
  426. package/lib/scale/Time.js +18 -0
  427. package/lib/scale/helper.js +19 -0
  428. package/lib/stream/Scheduler.js +110 -37
  429. package/lib/stream/task.js +104 -11
  430. package/lib/theme/dark.js +18 -0
  431. package/lib/theme/light.js +18 -0
  432. package/lib/util/KDTree.js +19 -0
  433. package/lib/util/animation.js +19 -0
  434. package/lib/util/array/nest.js +19 -0
  435. package/lib/util/clazz.js +18 -0
  436. package/lib/util/component.js +19 -0
  437. package/lib/util/format.js +30 -1
  438. package/lib/util/graphic.js +19 -0
  439. package/lib/util/layout.js +18 -0
  440. package/lib/util/model.js +19 -0
  441. package/lib/util/number.js +18 -0
  442. package/lib/util/quickSelect.js +19 -0
  443. package/lib/util/symbol.js +18 -0
  444. package/lib/util/throttle.js +26 -1
  445. package/lib/view/Chart.js +20 -2
  446. package/lib/view/Component.js +18 -0
  447. package/lib/visual/VisualMapping.js +28 -0
  448. package/lib/visual/aria.js +18 -0
  449. package/lib/visual/dataColor.js +18 -0
  450. package/lib/visual/seriesColor.js +18 -0
  451. package/lib/visual/symbol.js +28 -2
  452. package/lib/visual/visualDefault.js +19 -0
  453. package/lib/visual/visualSolution.js +22 -1
  454. package/licenses/LICENSE-d3 +27 -0
  455. package/licenses/LICENSE-zrender +29 -0
  456. package/map/js/china-contour.js +19 -0
  457. package/map/js/china.js +19 -0
  458. package/map/js/province/anhui.js +19 -0
  459. package/map/js/province/aomen.js +19 -0
  460. package/map/js/province/beijing.js +19 -0
  461. package/map/js/province/chongqing.js +19 -0
  462. package/map/js/province/fujian.js +19 -0
  463. package/map/js/province/gansu.js +19 -0
  464. package/map/js/province/guangdong.js +19 -0
  465. package/map/js/province/guangxi.js +19 -0
  466. package/map/js/province/guizhou.js +19 -0
  467. package/map/js/province/hainan.js +19 -0
  468. package/map/js/province/hebei.js +19 -0
  469. package/map/js/province/heilongjiang.js +19 -0
  470. package/map/js/province/henan.js +19 -0
  471. package/map/js/province/hubei.js +19 -0
  472. package/map/js/province/hunan.js +19 -0
  473. package/map/js/province/jiangsu.js +19 -0
  474. package/map/js/province/jiangxi.js +19 -0
  475. package/map/js/province/jilin.js +19 -0
  476. package/map/js/province/liaoning.js +19 -0
  477. package/map/js/province/neimenggu.js +19 -0
  478. package/map/js/province/ningxia.js +19 -0
  479. package/map/js/province/qinghai.js +19 -0
  480. package/map/js/province/shandong.js +19 -0
  481. package/map/js/province/shanghai.js +19 -0
  482. package/map/js/province/shanxi.js +19 -0
  483. package/map/js/province/shanxi1.js +19 -0
  484. package/map/js/province/sichuan.js +19 -0
  485. package/map/js/province/taiwan.js +19 -0
  486. package/map/js/province/tianjin.js +19 -0
  487. package/map/js/province/xianggang.js +19 -0
  488. package/map/js/province/xinjiang.js +19 -0
  489. package/map/js/province/xizang.js +19 -0
  490. package/map/js/province/yunnan.js +19 -0
  491. package/map/js/province/zhejiang.js +19 -0
  492. package/map/js/world.js +19 -0
  493. package/package.json +3 -3
  494. package/src/CoordinateSystem.js +19 -0
  495. package/src/ExtensionAPI.js +19 -0
  496. package/src/action/createDataSelectAction.js +19 -0
  497. package/src/action/geoRoam.js +19 -0
  498. package/src/action/roamHelper.js +19 -0
  499. package/src/chart/bar/BarSeries.js +44 -1
  500. package/src/chart/bar/BarView.js +120 -16
  501. package/src/chart/bar/BaseBarSeries.js +24 -0
  502. package/src/chart/bar/PictorialBarSeries.js +19 -0
  503. package/src/chart/bar/PictorialBarView.js +19 -0
  504. package/src/chart/bar/barItemStyle.js +19 -0
  505. package/src/chart/bar/helper.js +20 -1
  506. package/src/chart/bar.js +28 -7
  507. package/src/chart/boxplot/BoxplotSeries.js +26 -1
  508. package/src/chart/boxplot/BoxplotView.js +152 -21
  509. package/src/chart/boxplot/boxplotLayout.js +75 -71
  510. package/src/chart/boxplot/boxplotVisual.js +19 -0
  511. package/src/chart/boxplot.js +19 -0
  512. package/src/chart/candlestick/CandlestickSeries.js +35 -4
  513. package/src/chart/candlestick/CandlestickView.js +272 -24
  514. package/src/chart/candlestick/candlestickLayout.js +151 -97
  515. package/src/chart/candlestick/candlestickVisual.js +66 -17
  516. package/src/chart/candlestick/preprocessor.js +19 -0
  517. package/src/chart/candlestick.js +19 -0
  518. package/src/chart/chord/ChordSeries.js +19 -0
  519. package/src/chart/chord/ChordView.js +19 -0
  520. package/src/chart/chord/Ribbon.js +19 -0
  521. package/src/chart/chord/chordCircularLayout.js +19 -0
  522. package/src/chart/chord.js +19 -0
  523. package/src/chart/custom.js +19 -0
  524. package/src/chart/effectScatter/EffectScatterSeries.js +19 -0
  525. package/src/chart/effectScatter/EffectScatterView.js +19 -0
  526. package/src/chart/effectScatter.js +19 -0
  527. package/src/chart/funnel/FunnelSeries.js +19 -0
  528. package/src/chart/funnel/FunnelView.js +19 -0
  529. package/src/chart/funnel/funnelLayout.js +19 -0
  530. package/src/chart/funnel.js +19 -0
  531. package/src/chart/gauge/GaugeSeries.js +19 -0
  532. package/src/chart/gauge/GaugeView.js +19 -0
  533. package/src/chart/gauge/PointerPath.js +19 -0
  534. package/src/chart/gauge.js +19 -0
  535. package/src/chart/graph/GraphSeries.js +27 -0
  536. package/src/chart/graph/GraphView.js +19 -0
  537. package/src/chart/graph/adjustEdge.js +19 -0
  538. package/src/chart/graph/backwardCompat.js +19 -0
  539. package/src/chart/graph/categoryFilter.js +19 -0
  540. package/src/chart/graph/categoryVisual.js +19 -0
  541. package/src/chart/graph/circularLayout.js +19 -0
  542. package/src/chart/graph/circularLayoutHelper.js +19 -0
  543. package/src/chart/graph/createView.js +19 -0
  544. package/src/chart/graph/edgeVisual.js +19 -0
  545. package/src/chart/graph/forceHelper.js +19 -0
  546. package/src/chart/graph/forceLayout.js +19 -0
  547. package/src/chart/graph/graphAction.js +19 -0
  548. package/src/chart/graph/simpleLayout.js +19 -0
  549. package/src/chart/graph/simpleLayoutHelper.js +19 -0
  550. package/src/chart/graph.js +19 -0
  551. package/src/chart/heatmap/HeatmapLayer.js +19 -0
  552. package/src/chart/heatmap/HeatmapSeries.js +19 -0
  553. package/src/chart/heatmap/HeatmapView.js +19 -0
  554. package/src/chart/heatmap.js +19 -0
  555. package/src/chart/helper/EffectLine.js +19 -0
  556. package/src/chart/helper/EffectPolyline.js +19 -0
  557. package/src/chart/helper/EffectSymbol.js +19 -0
  558. package/src/chart/helper/LargeLineDraw.js +20 -0
  559. package/src/chart/helper/LargeSymbolDraw.js +19 -0
  560. package/src/chart/helper/Line.js +38 -16
  561. package/src/chart/helper/LineDraw.js +27 -0
  562. package/src/chart/helper/LinePath.js +19 -0
  563. package/src/chart/helper/Polyline.js +19 -0
  564. package/src/chart/helper/Symbol.js +60 -14
  565. package/src/chart/helper/SymbolDraw.js +23 -2
  566. package/src/chart/helper/createGraphFromNodeEdge.js +29 -6
  567. package/src/chart/helper/createGraphFromNodeMatrix.js +19 -0
  568. package/src/chart/helper/createListFromArray.js +19 -0
  569. package/src/chart/helper/createListSimply.js +19 -0
  570. package/src/chart/helper/createRenderPlanner.js +21 -2
  571. package/src/chart/helper/labelHelper.js +19 -0
  572. package/src/chart/helper/treeHelper.js +19 -0
  573. package/src/chart/helper/whiskerBoxCommon.js +19 -32
  574. package/src/chart/line/LineSeries.js +28 -10
  575. package/src/chart/line/LineView.js +127 -38
  576. package/src/chart/line/helper.js +31 -5
  577. package/src/chart/line/lineAnimationDiff.js +19 -0
  578. package/src/chart/line/poly.js +64 -39
  579. package/src/chart/line.js +19 -0
  580. package/src/chart/lines/LinesSeries.js +27 -4
  581. package/src/chart/lines/LinesView.js +21 -1
  582. package/src/chart/lines/linesLayout.js +20 -1
  583. package/src/chart/lines/linesVisual.js +19 -0
  584. package/src/chart/lines.js +19 -0
  585. package/src/chart/map/MapSeries.js +19 -0
  586. package/src/chart/map/MapView.js +19 -0
  587. package/src/chart/map/backwardCompat.js +19 -0
  588. package/src/chart/map/mapDataStatistic.js +19 -0
  589. package/src/chart/map/mapSymbolLayout.js +19 -0
  590. package/src/chart/map/mapVisual.js +19 -0
  591. package/src/chart/map.js +19 -0
  592. package/src/chart/parallel/ParallelSeries.js +21 -7
  593. package/src/chart/parallel/ParallelView.js +90 -58
  594. package/src/chart/parallel/parallelVisual.js +39 -14
  595. package/src/chart/parallel.js +19 -0
  596. package/src/chart/pictorialBar.js +19 -0
  597. package/src/chart/pie/PieSeries.js +19 -0
  598. package/src/chart/pie/PieView.js +19 -0
  599. package/src/chart/pie/labelLayout.js +19 -0
  600. package/src/chart/pie/pieLayout.js +19 -0
  601. package/src/chart/pie.js +19 -0
  602. package/src/chart/radar/RadarSeries.js +19 -0
  603. package/src/chart/radar/RadarView.js +19 -0
  604. package/src/chart/radar/backwardCompat.js +19 -0
  605. package/src/chart/radar/radarLayout.js +20 -1
  606. package/src/chart/radar.js +19 -0
  607. package/src/chart/sankey/SankeySeries.js +28 -0
  608. package/src/chart/sankey/SankeyView.js +62 -11
  609. package/src/chart/sankey/sankeyAction.js +31 -0
  610. package/src/chart/sankey/sankeyLayout.js +71 -17
  611. package/src/chart/sankey/sankeyVisual.js +49 -25
  612. package/src/chart/sankey.js +20 -0
  613. package/src/chart/scatter/ScatterSeries.js +21 -2
  614. package/src/chart/scatter/ScatterView.js +19 -0
  615. package/src/chart/scatter.js +19 -0
  616. package/src/chart/sunburst/SunburstPiece.js +24 -0
  617. package/src/chart/sunburst/SunburstSeries.js +19 -0
  618. package/src/chart/sunburst/SunburstView.js +28 -9
  619. package/src/chart/sunburst/sunburstAction.js +19 -0
  620. package/src/chart/sunburst/sunburstLayout.js +19 -0
  621. package/src/chart/sunburst.js +19 -0
  622. package/src/chart/themeRiver/ThemeRiverSeries.js +19 -1
  623. package/src/chart/themeRiver/ThemeRiverView.js +19 -0
  624. package/src/chart/themeRiver/themeRiverLayout.js +19 -0
  625. package/src/chart/themeRiver/themeRiverVisual.js +19 -0
  626. package/src/chart/themeRiver.js +19 -0
  627. package/src/chart/tree/TreeSeries.js +38 -2
  628. package/src/chart/tree/TreeView.js +31 -5
  629. package/src/chart/tree/layoutHelper.js +19 -0
  630. package/src/chart/tree/traversalHelper.js +19 -0
  631. package/src/chart/tree/treeAction.js +19 -0
  632. package/src/chart/tree/treeLayout.js +128 -0
  633. package/src/chart/tree.js +21 -4
  634. package/src/chart/treemap/Breadcrumb.js +19 -0
  635. package/src/chart/treemap/TreemapSeries.js +19 -0
  636. package/src/chart/treemap/TreemapView.js +19 -0
  637. package/src/chart/treemap/helper.js +19 -0
  638. package/src/chart/treemap/treemapAction.js +19 -0
  639. package/src/chart/treemap/treemapLayout.js +19 -0
  640. package/src/chart/treemap/treemapVisual.js +19 -0
  641. package/src/chart/treemap.js +19 -0
  642. package/src/component/angleAxis.js +19 -0
  643. package/src/component/axis/AngleAxisView.js +62 -25
  644. package/src/component/axis/AxisBuilder.js +43 -88
  645. package/src/component/axis/AxisView.js +19 -0
  646. package/src/component/axis/CartesianAxisView.js +69 -54
  647. package/src/component/axis/ParallelAxisView.js +19 -0
  648. package/src/component/axis/RadiusAxisView.js +26 -4
  649. package/src/component/axis/SingleAxisView.js +26 -18
  650. package/src/component/axis/parallelAxisAction.js +19 -0
  651. package/src/component/axis.js +19 -0
  652. package/src/component/axisPointer/AxisPointerModel.js +19 -0
  653. package/src/component/axisPointer/AxisPointerView.js +19 -0
  654. package/src/component/axisPointer/BaseAxisPointer.js +19 -0
  655. package/src/component/axisPointer/CartesianAxisPointer.js +21 -2
  656. package/src/component/axisPointer/PolarAxisPointer.js +20 -1
  657. package/src/component/axisPointer/SingleAxisPointer.js +20 -1
  658. package/src/component/axisPointer/axisTrigger.js +19 -0
  659. package/src/component/axisPointer/findPointFromSeries.js +19 -0
  660. package/src/component/axisPointer/globalListener.js +19 -0
  661. package/src/component/axisPointer/modelHelper.js +19 -0
  662. package/src/component/axisPointer/viewHelper.js +20 -0
  663. package/src/component/axisPointer.js +19 -0
  664. package/src/component/brush/BrushModel.js +26 -1
  665. package/src/component/brush/BrushView.js +19 -0
  666. package/src/component/brush/brushAction.js +19 -0
  667. package/src/component/brush/preprocessor.js +19 -0
  668. package/src/component/brush/selector.js +19 -0
  669. package/src/component/brush/visualEncoding.js +19 -0
  670. package/src/component/brush.js +19 -0
  671. package/src/component/calendar/CalendarView.js +19 -0
  672. package/src/component/calendar.js +19 -0
  673. package/src/component/dataZoom/AxisProxy.js +19 -0
  674. package/src/component/dataZoom/DataZoomModel.js +19 -0
  675. package/src/component/dataZoom/DataZoomView.js +19 -0
  676. package/src/component/dataZoom/InsideZoomModel.js +19 -0
  677. package/src/component/dataZoom/InsideZoomView.js +37 -10
  678. package/src/component/dataZoom/SelectZoomModel.js +19 -0
  679. package/src/component/dataZoom/SelectZoomView.js +19 -0
  680. package/src/component/dataZoom/SliderZoomModel.js +19 -0
  681. package/src/component/dataZoom/SliderZoomView.js +30 -5
  682. package/src/component/dataZoom/dataZoomAction.js +19 -0
  683. package/src/component/dataZoom/dataZoomProcessor.js +24 -1
  684. package/src/component/dataZoom/helper.js +19 -0
  685. package/src/component/dataZoom/history.js +19 -0
  686. package/src/component/dataZoom/roams.js +20 -15
  687. package/src/component/dataZoom/typeDefaulter.js +19 -0
  688. package/src/component/dataZoom.js +19 -0
  689. package/src/component/dataZoomInside.js +19 -0
  690. package/src/component/dataZoomSelect.js +19 -0
  691. package/src/component/dataset.js +63 -3
  692. package/src/component/geo/GeoView.js +19 -0
  693. package/src/component/geo.js +19 -0
  694. package/src/component/graphic.js +19 -0
  695. package/src/component/grid.js +19 -0
  696. package/src/component/gridSimple.js +19 -0
  697. package/src/component/helper/BrushController.js +19 -0
  698. package/src/component/helper/BrushTargetManager.js +19 -0
  699. package/src/component/helper/MapDraw.js +19 -0
  700. package/src/component/helper/RoamController.js +19 -0
  701. package/src/component/helper/brushHelper.js +19 -0
  702. package/src/component/helper/cursorHelper.js +19 -0
  703. package/src/component/helper/interactionMutex.js +19 -0
  704. package/src/component/helper/listComponent.js +19 -0
  705. package/src/component/helper/roamHelper.js +19 -0
  706. package/src/component/helper/selectableMixin.js +19 -0
  707. package/src/component/helper/sliderMove.js +19 -0
  708. package/src/component/legend/LegendModel.js +19 -0
  709. package/src/component/legend/LegendView.js +51 -13
  710. package/src/component/legend/ScrollableLegendModel.js +19 -0
  711. package/src/component/legend/ScrollableLegendView.js +19 -0
  712. package/src/component/legend/legendAction.js +19 -0
  713. package/src/component/legend/legendFilter.js +19 -0
  714. package/src/component/legend/scrollableLegendAction.js +19 -0
  715. package/src/component/legend.js +19 -0
  716. package/src/component/legendScroll.js +19 -0
  717. package/src/component/markArea.js +19 -0
  718. package/src/component/markLine.js +19 -0
  719. package/src/component/markPoint.js +19 -0
  720. package/src/component/marker/MarkAreaModel.js +19 -0
  721. package/src/component/marker/MarkAreaView.js +22 -3
  722. package/src/component/marker/MarkLineModel.js +19 -0
  723. package/src/component/marker/MarkLineView.js +22 -3
  724. package/src/component/marker/MarkPointModel.js +19 -0
  725. package/src/component/marker/MarkPointView.js +19 -0
  726. package/src/component/marker/MarkerModel.js +20 -1
  727. package/src/component/marker/MarkerView.js +19 -0
  728. package/src/component/marker/markerHelper.js +24 -1
  729. package/src/component/parallel.js +19 -0
  730. package/src/component/parallelAxis.js +19 -0
  731. package/src/component/polar.js +19 -0
  732. package/src/component/radar/RadarView.js +23 -4
  733. package/src/component/radar.js +19 -0
  734. package/src/component/radiusAxis.js +19 -0
  735. package/src/component/singleAxis.js +19 -0
  736. package/src/component/timeline/SliderTimelineModel.js +19 -0
  737. package/src/component/timeline/SliderTimelineView.js +40 -31
  738. package/src/component/timeline/TimelineAxis.js +25 -43
  739. package/src/component/timeline/TimelineModel.js +19 -0
  740. package/src/component/timeline/TimelineView.js +19 -0
  741. package/src/component/timeline/preprocessor.js +19 -0
  742. package/src/component/timeline/timelineAction.js +19 -0
  743. package/src/component/timeline/typeDefaulter.js +19 -0
  744. package/src/component/timeline.js +19 -0
  745. package/src/component/title.js +19 -0
  746. package/src/component/toolbox/ToolboxModel.js +21 -2
  747. package/src/component/toolbox/ToolboxView.js +19 -0
  748. package/src/component/toolbox/feature/Brush.js +19 -0
  749. package/src/component/toolbox/feature/DataView.js +19 -0
  750. package/src/component/toolbox/feature/DataZoom.js +22 -0
  751. package/src/component/toolbox/feature/MagicType.js +19 -0
  752. package/src/component/toolbox/feature/Restore.js +19 -0
  753. package/src/component/toolbox/feature/SaveAsImage.js +19 -0
  754. package/src/component/toolbox/featureManager.js +19 -0
  755. package/src/component/toolbox.js +19 -0
  756. package/src/component/tooltip/TooltipContent.js +19 -0
  757. package/src/component/tooltip/TooltipModel.js +19 -0
  758. package/src/component/tooltip/TooltipView.js +20 -1
  759. package/src/component/tooltip.js +19 -0
  760. package/src/component/visualMap/ContinuousModel.js +19 -0
  761. package/src/component/visualMap/ContinuousView.js +19 -0
  762. package/src/component/visualMap/PiecewiseModel.js +19 -0
  763. package/src/component/visualMap/PiecewiseView.js +19 -0
  764. package/src/component/visualMap/VisualMapModel.js +19 -0
  765. package/src/component/visualMap/VisualMapView.js +19 -0
  766. package/src/component/visualMap/helper.js +19 -0
  767. package/src/component/visualMap/preprocessor.js +19 -0
  768. package/src/component/visualMap/typeDefaulter.js +19 -0
  769. package/src/component/visualMap/visualEncoding.js +23 -1
  770. package/src/component/visualMap/visualMapAction.js +19 -0
  771. package/src/component/visualMap.js +19 -0
  772. package/src/component/visualMapContinuous.js +19 -0
  773. package/src/component/visualMapPiecewise.js +19 -0
  774. package/src/config.js +19 -0
  775. package/src/coord/Axis.js +157 -98
  776. package/src/coord/View.js +19 -0
  777. package/src/coord/axisDefault.js +68 -41
  778. package/src/coord/axisHelper.js +127 -86
  779. package/src/coord/axisModelCommonMixin.js +19 -11
  780. package/src/coord/axisModelCreator.js +25 -2
  781. package/src/coord/axisTickLabelBuilder.js +369 -0
  782. package/src/coord/calendar/Calendar.js +23 -1
  783. package/src/coord/calendar/CalendarModel.js +19 -0
  784. package/src/coord/calendar/prepareCustom.js +19 -0
  785. package/src/coord/cartesian/Axis2D.js +25 -18
  786. package/src/coord/cartesian/AxisModel.js +19 -0
  787. package/src/coord/cartesian/Cartesian.js +19 -0
  788. package/src/coord/cartesian/Cartesian2D.js +27 -4
  789. package/src/coord/cartesian/Grid.js +65 -76
  790. package/src/coord/cartesian/GridModel.js +19 -0
  791. package/src/{component/axis → coord/cartesian}/cartesianAxisHelper.js +28 -9
  792. package/src/coord/cartesian/prepareCustom.js +19 -0
  793. package/src/coord/geo/Geo.js +19 -0
  794. package/src/coord/geo/GeoModel.js +19 -0
  795. package/src/coord/geo/Region.js +19 -0
  796. package/src/coord/geo/fix/diaoyuIsland.js +19 -0
  797. package/src/coord/geo/fix/geoCoord.js +19 -0
  798. package/src/coord/geo/fix/nanhai.js +19 -0
  799. package/src/coord/geo/fix/textCoord.js +19 -0
  800. package/src/coord/geo/geoCreator.js +19 -0
  801. package/src/coord/geo/parseGeoJson.js +19 -0
  802. package/src/coord/geo/prepareCustom.js +19 -0
  803. package/src/coord/parallel/AxisModel.js +32 -3
  804. package/src/coord/parallel/Parallel.js +38 -12
  805. package/src/coord/parallel/ParallelAxis.js +19 -0
  806. package/src/coord/parallel/ParallelModel.js +19 -0
  807. package/src/coord/parallel/parallelCreator.js +19 -0
  808. package/src/coord/parallel/parallelPreprocessor.js +19 -0
  809. package/src/coord/polar/AngleAxis.js +19 -0
  810. package/src/coord/polar/AxisModel.js +19 -0
  811. package/src/coord/polar/Polar.js +19 -0
  812. package/src/coord/polar/PolarModel.js +19 -0
  813. package/src/coord/polar/RadiusAxis.js +19 -0
  814. package/src/coord/polar/polarCreator.js +26 -3
  815. package/src/coord/polar/prepareCustom.js +19 -0
  816. package/src/coord/radar/IndicatorAxis.js +19 -0
  817. package/src/coord/radar/Radar.js +19 -0
  818. package/src/coord/radar/RadarModel.js +19 -0
  819. package/src/coord/single/AxisModel.js +19 -0
  820. package/src/coord/single/Single.js +19 -0
  821. package/src/coord/single/SingleAxis.js +19 -5
  822. package/src/coord/single/prepareCustom.js +19 -0
  823. package/src/{component/axis → coord/single}/singleAxisHelper.js +21 -4
  824. package/src/coord/single/singleCreator.js +19 -0
  825. package/src/data/DataDiffer.js +19 -0
  826. package/src/data/Graph.js +20 -1
  827. package/src/data/List.js +163 -87
  828. package/src/data/OrdinalMeta.js +19 -0
  829. package/src/data/Source.js +19 -0
  830. package/src/data/Tree.js +19 -0
  831. package/src/data/helper/completeDimensions.js +24 -2
  832. package/src/data/helper/createDimensions.js +19 -0
  833. package/src/data/helper/dataProvider.js +23 -4
  834. package/src/data/helper/dataStackHelper.js +46 -9
  835. package/src/data/helper/dimensionHelper.js +26 -1
  836. package/src/data/helper/linkList.js +19 -0
  837. package/src/data/helper/sourceHelper.js +19 -0
  838. package/src/data/helper/sourceType.js +19 -0
  839. package/src/echarts.js +37 -20
  840. package/src/export.js +19 -0
  841. package/src/helper.js +26 -2
  842. package/src/lang.js +19 -0
  843. package/src/langEN.js +19 -0
  844. package/src/langFI.js +19 -0
  845. package/src/langTH.js +19 -0
  846. package/src/layout/barGrid.js +135 -23
  847. package/src/layout/barPolar.js +20 -1
  848. package/src/layout/points.js +27 -7
  849. package/src/loading/default.js +19 -0
  850. package/src/model/Component.js +19 -0
  851. package/src/model/Global.js +19 -2
  852. package/src/model/Model.js +19 -0
  853. package/src/model/OptionManager.js +19 -0
  854. package/src/model/Series.js +21 -2
  855. package/src/model/globalDefault.js +19 -0
  856. package/src/model/mixin/areaStyle.js +19 -0
  857. package/src/model/mixin/boxLayout.js +19 -0
  858. package/src/model/mixin/colorPalette.js +19 -0
  859. package/src/model/mixin/dataFormat.js +20 -1
  860. package/src/model/mixin/itemStyle.js +19 -0
  861. package/src/model/mixin/lineStyle.js +19 -0
  862. package/src/model/mixin/makeStyleMapper.js +19 -0
  863. package/src/model/mixin/textStyle.js +19 -0
  864. package/src/model/referHelper.js +19 -0
  865. package/src/preprocessor/backwardCompat.js +19 -0
  866. package/src/preprocessor/helper/compatStyle.js +22 -0
  867. package/src/processor/dataFilter.js +19 -0
  868. package/src/processor/dataSample.js +29 -3
  869. package/src/processor/dataStack.js +19 -0
  870. package/src/scale/Interval.js +19 -12
  871. package/src/scale/Log.js +19 -0
  872. package/src/scale/Ordinal.js +27 -1
  873. package/src/scale/Scale.js +26 -12
  874. package/src/scale/Time.js +19 -0
  875. package/src/scale/helper.js +19 -0
  876. package/src/stream/Scheduler.js +110 -34
  877. package/src/stream/task.js +105 -11
  878. package/src/theme/dark.js +19 -0
  879. package/src/theme/light.js +19 -0
  880. package/src/util/KDTree.js +19 -0
  881. package/src/util/animation.js +19 -0
  882. package/src/util/array/nest.js +19 -0
  883. package/src/util/clazz.js +19 -0
  884. package/src/util/component.js +19 -0
  885. package/src/util/format.js +34 -6
  886. package/src/util/graphic.js +19 -0
  887. package/src/util/layout.js +19 -0
  888. package/src/util/model.js +20 -0
  889. package/src/util/number.js +19 -0
  890. package/src/util/quickSelect.js +19 -0
  891. package/src/util/symbol.js +19 -0
  892. package/src/util/throttle.js +27 -0
  893. package/src/view/Chart.js +21 -2
  894. package/src/view/Component.js +19 -0
  895. package/src/visual/VisualMapping.js +29 -0
  896. package/src/visual/aria.js +19 -0
  897. package/src/visual/dataColor.js +19 -0
  898. package/src/visual/seriesColor.js +19 -0
  899. package/src/visual/symbol.js +34 -2
  900. package/src/visual/visualDefault.js +19 -0
  901. package/src/visual/visualSolution.js +21 -1
  902. package/theme/dark.js +19 -0
  903. package/theme/infographic.js +19 -0
  904. package/theme/macarons.js +19 -0
  905. package/theme/roma.js +19 -0
  906. package/theme/shine.js +19 -0
  907. package/theme/vintage.js +19 -0
  908. package/build/rollup-plugin-ec-dev.js +0 -38
  909. package/lib/chart/helper/WhiskerBoxDraw.js +0 -222
  910. package/lib/chart/tree/commonLayout.js +0 -108
  911. package/lib/chart/tree/orthogonalLayout.js +0 -9
  912. package/lib/chart/tree/radialLayout.js +0 -9
  913. package/lib/component/dataset/DatasetModel.js +0 -29
  914. package/src/chart/helper/WhiskerBoxDraw.js +0 -233
  915. package/src/chart/tree/commonLayout.js +0 -96
  916. package/src/chart/tree/orthogonalLayout.js +0 -7
  917. package/src/chart/tree/radialLayout.js +0 -7
  918. package/src/component/dataset/DatasetModel.js +0 -31
@@ -1,10 +1,29 @@
1
1
  var zrUtil = require("zrender/lib/core/util");
2
2
 
3
+ /*
4
+ * Licensed to the Apache Software Foundation (ASF) under one
5
+ * or more contributor license agreements. See the NOTICE file
6
+ * distributed with this work for additional information
7
+ * regarding copyright ownership. The ASF licenses this file
8
+ * to you under the Apache License, Version 2.0 (the
9
+ * "License"); you may not use this file except in compliance
10
+ * with the License. You may obtain a copy of the License at
11
+ *
12
+ * http://www.apache.org/licenses/LICENSE-2.0
13
+ *
14
+ * Unless required by applicable law or agreed to in writing,
15
+ * software distributed under the License is distributed on an
16
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
17
+ * KIND, either express or implied. See the License for the
18
+ * specific language governing permissions and limitations
19
+ * under the License.
20
+ */
21
+
3
22
  /**
4
23
  * @param {Object} opt {labelInside}
5
24
  * @return {Object} {
6
25
  * position, rotation, labelDirection, labelOffset,
7
- * tickDirection, labelRotate, labelInterval, z2
26
+ * tickDirection, labelRotate, z2
8
27
  * }
9
28
  */
10
29
  function layout(axisModel, opt) {
@@ -51,7 +70,6 @@ function layout(axisModel, opt) {
51
70
  var labelRotation = opt.rotate;
52
71
  labelRotation == null && (labelRotation = axisModel.get('axisLabel.rotate'));
53
72
  layout.labelRotation = axisPosition === 'top' ? -labelRotation : labelRotation;
54
- layout.labelInterval = axis.getLabelInterval();
55
73
  layout.z2 = 1;
56
74
  return layout;
57
75
  }
@@ -2,6 +2,25 @@ var Single = require("./Single");
2
2
 
3
3
  var CoordinateSystem = require("../../CoordinateSystem");
4
4
 
5
+ /*
6
+ * Licensed to the Apache Software Foundation (ASF) under one
7
+ * or more contributor license agreements. See the NOTICE file
8
+ * distributed with this work for additional information
9
+ * regarding copyright ownership. The ASF licenses this file
10
+ * to you under the Apache License, Version 2.0 (the
11
+ * "License"); you may not use this file except in compliance
12
+ * with the License. You may obtain a copy of the License at
13
+ *
14
+ * http://www.apache.org/licenses/LICENSE-2.0
15
+ *
16
+ * Unless required by applicable law or agreed to in writing,
17
+ * software distributed under the License is distributed on an
18
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
19
+ * KIND, either express or implied. See the License for the
20
+ * specific language governing permissions and limitations
21
+ * under the License.
22
+ */
23
+
5
24
  /**
6
25
  * Single coordinate system creator.
7
26
  */
@@ -1,3 +1,21 @@
1
+ /*
2
+ * Licensed to the Apache Software Foundation (ASF) under one
3
+ * or more contributor license agreements. See the NOTICE file
4
+ * distributed with this work for additional information
5
+ * regarding copyright ownership. The ASF licenses this file
6
+ * to you under the Apache License, Version 2.0 (the
7
+ * "License"); you may not use this file except in compliance
8
+ * with the License. You may obtain a copy of the License at
9
+ *
10
+ * http://www.apache.org/licenses/LICENSE-2.0
11
+ *
12
+ * Unless required by applicable law or agreed to in writing,
13
+ * software distributed under the License is distributed on an
14
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
15
+ * KIND, either express or implied. See the License for the
16
+ * specific language governing permissions and limitations
17
+ * under the License.
18
+ */
1
19
  function defaultKeyGetter(item) {
2
20
  return item;
3
21
  }
package/lib/data/Graph.js CHANGED
@@ -8,6 +8,25 @@ var _clazz = require("../util/clazz");
8
8
 
9
9
  var enableClassCheck = _clazz.enableClassCheck;
10
10
 
11
+ /*
12
+ * Licensed to the Apache Software Foundation (ASF) under one
13
+ * or more contributor license agreements. See the NOTICE file
14
+ * distributed with this work for additional information
15
+ * regarding copyright ownership. The ASF licenses this file
16
+ * to you under the Apache License, Version 2.0 (the
17
+ * "License"); you may not use this file except in compliance
18
+ * with the License. You may obtain a copy of the License at
19
+ *
20
+ * http://www.apache.org/licenses/LICENSE-2.0
21
+ *
22
+ * Unless required by applicable law or agreed to in writing,
23
+ * software distributed under the License is distributed on an
24
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
25
+ * KIND, either express or implied. See the License for the
26
+ * specific language governing permissions and limitations
27
+ * under the License.
28
+ */
29
+
11
30
  /**
12
31
  * Graph data structure
13
32
  *
package/lib/data/List.js CHANGED
@@ -19,26 +19,46 @@ var _dimensionHelper = require("./helper/dimensionHelper");
19
19
 
20
20
  var summarizeDimensions = _dimensionHelper.summarizeDimensions;
21
21
 
22
+ /*
23
+ * Licensed to the Apache Software Foundation (ASF) under one
24
+ * or more contributor license agreements. See the NOTICE file
25
+ * distributed with this work for additional information
26
+ * regarding copyright ownership. The ASF licenses this file
27
+ * to you under the Apache License, Version 2.0 (the
28
+ * "License"); you may not use this file except in compliance
29
+ * with the License. You may obtain a copy of the License at
30
+ *
31
+ * http://www.apache.org/licenses/LICENSE-2.0
32
+ *
33
+ * Unless required by applicable law or agreed to in writing,
34
+ * software distributed under the License is distributed on an
35
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
36
+ * KIND, either express or implied. See the License for the
37
+ * specific language governing permissions and limitations
38
+ * under the License.
39
+ */
40
+
22
41
  /**
23
42
  * List for data storage
24
43
  * @module echarts/data/List
25
44
  */
26
45
  var isObject = zrUtil.isObject;
27
- var UNDEFINED = 'undefined';
28
- var globalObj = typeof window === UNDEFINED ? global : window; // Use prefix to avoid index to be the same as otherIdList[idx],
46
+ var UNDEFINED = 'undefined'; // Use prefix to avoid index to be the same as otherIdList[idx],
29
47
  // which will cause weird udpate animation.
30
48
 
31
49
  var ID_PREFIX = 'e\0\0';
32
50
  var dataCtors = {
33
- 'float': typeof globalObj.Float64Array === UNDEFINED ? Array : globalObj.Float64Array,
34
- 'int': typeof globalObj.Int32Array === UNDEFINED ? Array : globalObj.Int32Array,
51
+ 'float': typeof Float64Array === UNDEFINED ? Array : Float64Array,
52
+ 'int': typeof Int32Array === UNDEFINED ? Array : Int32Array,
35
53
  // Ordinal data type can be string or int
36
54
  'ordinal': Array,
37
55
  'number': Array,
38
56
  'time': Array
39
- };
40
- var CtorUint32Array = typeof globalObj.Uint32Array === UNDEFINED ? Array : globalObj.Uint32Array;
41
- var CtorUint16Array = typeof globalObj.Uint16Array === UNDEFINED ? Array : globalObj.Uint16Array;
57
+ }; // Caution: MUST not use `new CtorUint32Array(arr, 0, len)`, because the Ctor of array is
58
+ // different from the Ctor of typed array.
59
+
60
+ var CtorUint32Array = typeof Uint32Array === UNDEFINED ? Array : Uint32Array;
61
+ var CtorUint16Array = typeof Uint16Array === UNDEFINED ? Array : Uint16Array;
42
62
 
43
63
  function getIndicesCtor(list) {
44
64
  // The possible max value in this._indicies is always this._rawCount despite of filtering.
@@ -51,15 +71,20 @@ function cloneChunk(originalChunk) {
51
71
  return Ctor === Array ? originalChunk.slice() : new Ctor(originalChunk);
52
72
  }
53
73
 
54
- var TRANSFERABLE_PROPERTIES = ['hasItemOption', '_nameList', '_idList', '_calculationInfo', '_invertedIndicesMap', '_rawData', '_rawExtent', '_chunkSize', '_chunkCount', '_dimValueGetter', '_count', '_rawCount', '_nameDimIdx', '_idDimIdx'];
74
+ var TRANSFERABLE_PROPERTIES = ['hasItemOption', '_nameList', '_idList', '_invertedIndicesMap', '_rawData', '_chunkSize', '_chunkCount', '_dimValueGetter', '_count', '_rawCount', '_nameDimIdx', '_idDimIdx'];
75
+ var CLONE_PROPERTIES = ['_extent', '_approximateExtent', '_rawExtent'];
55
76
 
56
- function transferProperties(a, b) {
57
- zrUtil.each(TRANSFERABLE_PROPERTIES.concat(b.__wrappedMethods || []), function (propName) {
58
- if (b.hasOwnProperty(propName)) {
59
- a[propName] = b[propName];
77
+ function transferProperties(target, source) {
78
+ zrUtil.each(TRANSFERABLE_PROPERTIES.concat(source.__wrappedMethods || []), function (propName) {
79
+ if (source.hasOwnProperty(propName)) {
80
+ target[propName] = source[propName];
60
81
  }
61
82
  });
62
- a.__wrappedMethods = b.__wrappedMethods;
83
+ target.__wrappedMethods = source.__wrappedMethods;
84
+ zrUtil.each(CLONE_PROPERTIES, function (propName) {
85
+ target[propName] = zrUtil.clone(source[propName]);
86
+ });
87
+ target._calculationInfo = zrUtil.extend(source._calculationInfo);
63
88
  }
64
89
  /**
65
90
  * @constructor
@@ -413,6 +438,7 @@ listProto._initDataFromProvider = function (start, end) {
413
438
  var rawData = this._rawData;
414
439
  var storage = this._storage;
415
440
  var dimensions = this.dimensions;
441
+ var dimLen = dimensions.length;
416
442
  var dimensionInfoMap = this._dimensionInfos;
417
443
  var nameList = this._nameList;
418
444
  var idList = this._idList;
@@ -422,7 +448,7 @@ listProto._initDataFromProvider = function (start, end) {
422
448
  var chunkCount = this._chunkCount;
423
449
  var lastChunkIndex = chunkCount - 1;
424
450
 
425
- for (var i = 0; i < dimensions.length; i++) {
451
+ for (var i = 0; i < dimLen; i++) {
426
452
  var dim = dimensions[i];
427
453
 
428
454
  if (!rawExtent[dim]) {
@@ -466,9 +492,11 @@ listProto._initDataFromProvider = function (start, end) {
466
492
  this._chunkCount = storage[dim].length;
467
493
  }
468
494
 
495
+ var dataItem = new Array(dimLen);
496
+
469
497
  for (var idx = start; idx < end; idx++) {
470
498
  // NOTICE: Try not to write things into dataItem
471
- var dataItem = rawData.getItem(idx); // Each data item is value
499
+ dataItem = rawData.getItem(idx, dataItem); // Each data item is value
472
500
  // [1, 2]
473
501
  // 2
474
502
  // Bar chart, line chart which uses category axis
@@ -478,20 +506,21 @@ listProto._initDataFromProvider = function (start, end) {
478
506
  var chunkIndex = Math.floor(idx / chunkSize);
479
507
  var chunkOffset = idx % chunkSize; // Store the data by dimensions
480
508
 
481
- for (var k = 0; k < dimensions.length; k++) {
509
+ for (var k = 0; k < dimLen; k++) {
482
510
  var dim = dimensions[k];
483
511
  var dimStorage = storage[dim][chunkIndex]; // PENDING NULL is empty or zero
484
512
 
485
513
  var val = this._dimValueGetter(dataItem, dim, idx, k);
486
514
 
487
515
  dimStorage[chunkOffset] = val;
516
+ var dimRawExtent = rawExtent[dim];
488
517
 
489
- if (val < rawExtent[dim][0]) {
490
- rawExtent[dim][0] = val;
518
+ if (val < dimRawExtent[0]) {
519
+ dimRawExtent[0] = val;
491
520
  }
492
521
 
493
- if (val > rawExtent[dim][1]) {
494
- rawExtent[dim][1] = val;
522
+ if (val > dimRawExtent[1]) {
523
+ dimRawExtent[1] = val;
495
524
  }
496
525
  } // ??? FIXME not check by pure but sourceFormat?
497
526
  // TODO refactor these logic.
@@ -500,13 +529,25 @@ listProto._initDataFromProvider = function (start, end) {
500
529
  if (!rawData.pure) {
501
530
  var name = nameList[idx];
502
531
 
503
- if (dataItem && !name) {
504
- if (nameDimIdx != null) {
505
- name = this._getNameFromStore(idx);
506
- } else if (dataItem.name != null) {
532
+ if (dataItem && name == null) {
533
+ // If dataItem is {name: ...}, it has highest priority.
534
+ // That is appropriate for many common cases.
535
+ if (dataItem.name != null) {
507
536
  // There is no other place to persistent dataItem.name,
508
537
  // so save it to nameList.
509
538
  nameList[idx] = name = dataItem.name;
539
+ } else if (nameDimIdx != null) {
540
+ var nameDim = dimensions[nameDimIdx];
541
+ var nameDimChunk = storage[nameDim][chunkIndex];
542
+
543
+ if (nameDimChunk) {
544
+ name = nameDimChunk[chunkOffset];
545
+ var ordinalMeta = dimensionInfoMap[nameDim].ordinalMeta;
546
+
547
+ if (ordinalMeta && ordinalMeta.categories.length) {
548
+ name = ordinalMeta.categories[name];
549
+ }
550
+ }
510
551
  }
511
552
  } // Try using the id in option
512
553
  // id or name is used on dynamical data, mapping old and new items.
@@ -562,47 +603,30 @@ function prepareInvertedIndex(list) {
562
603
  }
563
604
  }
564
605
  });
565
- } // TODO refactor
566
-
606
+ }
567
607
 
568
- listProto._getNameFromStore = function (rawIndex) {
569
- var nameDimIdx = this._nameDimIdx;
608
+ function getRawValueFromStore(list, dimIndex, rawIndex) {
609
+ var val;
570
610
 
571
- if (nameDimIdx != null) {
572
- var chunkSize = this._chunkSize;
611
+ if (dimIndex != null) {
612
+ var chunkSize = list._chunkSize;
573
613
  var chunkIndex = Math.floor(rawIndex / chunkSize);
574
614
  var chunkOffset = rawIndex % chunkSize;
575
- var dim = this.dimensions[nameDimIdx];
576
- var ordinalMeta = this._dimensionInfos[dim].ordinalMeta;
577
-
578
- if (ordinalMeta) {
579
- return ordinalMeta.categories[rawIndex];
580
- } else {
581
- var chunk = this._storage[dim][chunkIndex];
582
- return chunk && chunk[chunkOffset];
583
- }
584
- }
585
- }; // TODO refactor
586
-
615
+ var dim = list.dimensions[dimIndex];
616
+ var chunk = list._storage[dim][chunkIndex];
587
617
 
588
- listProto._getIdFromStore = function (rawIndex) {
589
- var idDimIdx = this._idDimIdx;
618
+ if (chunk) {
619
+ val = chunk[chunkOffset];
620
+ var ordinalMeta = list._dimensionInfos[dim].ordinalMeta;
590
621
 
591
- if (idDimIdx != null) {
592
- var chunkSize = this._chunkSize;
593
- var chunkIndex = Math.floor(rawIndex / chunkSize);
594
- var chunkOffset = rawIndex % chunkSize;
595
- var dim = this.dimensions[idDimIdx];
596
- var ordinalMeta = this._dimensionInfos[dim].ordinalMeta;
597
-
598
- if (ordinalMeta) {
599
- return ordinalMeta.categories[rawIndex];
600
- } else {
601
- var chunk = this._storage[dim][chunkIndex];
602
- return chunk && chunk[chunkOffset];
622
+ if (ordinalMeta && ordinalMeta.categories.length) {
623
+ val = ordinalMeta.categories[val];
624
+ }
603
625
  }
604
626
  }
605
- };
627
+
628
+ return val;
629
+ }
606
630
  /**
607
631
  * @return {number}
608
632
  */
@@ -613,19 +637,32 @@ listProto.count = function () {
613
637
  };
614
638
 
615
639
  listProto.getIndices = function () {
616
- if (this._indices) {
617
- var Ctor = this._indices.constructor;
618
- return new Ctor(this._indices.buffer, 0, this._count);
619
- }
640
+ var newIndices;
641
+ var indices = this._indices;
620
642
 
621
- var Ctor = getIndicesCtor(this);
622
- var arr = new Ctor(this.count());
643
+ if (indices) {
644
+ var Ctor = indices.constructor;
645
+ var thisCount = this._count; // `new Array(a, b, c)` is different from `new Uint32Array(a, b, c)`.
623
646
 
624
- for (var i = 0; i < arr.length; i++) {
625
- arr[i] = i;
647
+ if (Ctor === Array) {
648
+ newIndices = new Ctor(thisCount);
649
+
650
+ for (var i = 0; i < thisCount; i++) {
651
+ newIndices[i] = indices[i];
652
+ }
653
+ } else {
654
+ newIndices = new Ctor(indices.buffer, 0, thisCount);
655
+ }
656
+ } else {
657
+ var Ctor = getIndicesCtor(this);
658
+ var newIndices = new Ctor(this.count());
659
+
660
+ for (var i = 0; i < newIndices.length; i++) {
661
+ newIndices[i] = i;
662
+ }
626
663
  }
627
664
 
628
- return arr;
665
+ return newIndices;
629
666
  };
630
667
  /**
631
668
  * Get value. Return NaN if idx is out of range.
@@ -884,6 +921,32 @@ listProto.getSum = function (dim
884
921
  }
885
922
 
886
923
  return sum;
924
+ };
925
+ /**
926
+ * Get median of data in one dimension
927
+ * @param {string} dim
928
+ */
929
+
930
+
931
+ listProto.getMedian = function (dim
932
+ /*, stack */
933
+ ) {
934
+ var dimDataArray = []; // map all data of one dimension
935
+
936
+ this.each(dim, function (val, idx) {
937
+ if (!isNaN(val)) {
938
+ dimDataArray.push(val);
939
+ }
940
+ }); // TODO
941
+ // Use quick select?
942
+ // immutability & sort
943
+
944
+ var sortedDimDataArray = [].concat(dimDataArray).sort(function (a, b) {
945
+ return a - b;
946
+ });
947
+ var len = this.count(); // calculate median
948
+
949
+ return len === 0 ? 0 : len % 2 === 1 ? sortedDimDataArray[(len - 1) / 2] : (sortedDimDataArray[len / 2] + sortedDimDataArray[len / 2 - 1]) / 2;
887
950
  }; // /**
888
951
  // * Retreive the index with given value
889
952
  // * @param {string} dim Concrete dimension.
@@ -1085,7 +1148,7 @@ listProto.getRawDataItem = function (idx) {
1085
1148
 
1086
1149
  listProto.getName = function (idx) {
1087
1150
  var rawIndex = this.getRawIndex(idx);
1088
- return this._nameList[rawIndex] || this._getNameFromStore(rawIndex) || '';
1151
+ return this._nameList[rawIndex] || getRawValueFromStore(this, this._nameDimIdx, rawIndex) || '';
1089
1152
  };
1090
1153
  /**
1091
1154
  * @param {number} idx
@@ -1102,7 +1165,7 @@ function getId(list, rawIndex) {
1102
1165
  var id = list._idList[rawIndex];
1103
1166
 
1104
1167
  if (id == null) {
1105
- id = list._getIdFromStore(rawIndex);
1168
+ id = getRawValueFromStore(list, list._idDimIdx, rawIndex);
1106
1169
  }
1107
1170
 
1108
1171
  if (id == null) {
@@ -1265,15 +1328,12 @@ listProto.filterSelf = function (dimensions, cb, context, contextCompat) {
1265
1328
  */
1266
1329
 
1267
1330
 
1268
- listProto.selectRange = function (range
1269
- /*, stack */
1270
- ) {
1331
+ listProto.selectRange = function (range) {
1271
1332
  'use strict';
1272
1333
 
1273
1334
  if (!this._count) {
1274
1335
  return;
1275
- } // stack = stack || false;
1276
-
1336
+ }
1277
1337
 
1278
1338
  var dimensions = [];
1279
1339
 
@@ -1298,67 +1358,69 @@ listProto.selectRange = function (range
1298
1358
  var max = range[dim0][1];
1299
1359
  var quickFinished = false;
1300
1360
 
1301
- if (!this._indices
1302
- /* && !stack */
1303
- ) {
1304
- // Extreme optimization for common case. About 2x faster in chrome.
1305
- var idx = 0;
1361
+ if (!this._indices) {
1362
+ // Extreme optimization for common case. About 2x faster in chrome.
1363
+ var idx = 0;
1306
1364
 
1307
- if (dimSize === 1) {
1308
- var dimStorage = this._storage[dimensions[0]];
1365
+ if (dimSize === 1) {
1366
+ var dimStorage = this._storage[dimensions[0]];
1309
1367
 
1310
- for (var k = 0; k < this._chunkCount; k++) {
1311
- var chunkStorage = dimStorage[k];
1312
- var len = Math.min(this._count - k * this._chunkSize, this._chunkSize);
1368
+ for (var k = 0; k < this._chunkCount; k++) {
1369
+ var chunkStorage = dimStorage[k];
1370
+ var len = Math.min(this._count - k * this._chunkSize, this._chunkSize);
1313
1371
 
1314
- for (var i = 0; i < len; i++) {
1315
- var val = chunkStorage[i];
1372
+ for (var i = 0; i < len; i++) {
1373
+ var val = chunkStorage[i]; // NaN will not be filtered. Consider the case, in line chart, empty
1374
+ // value indicates the line should be broken. But for the case like
1375
+ // scatter plot, a data item with empty value will not be rendered,
1376
+ // but the axis extent may be effected if some other dim of the data
1377
+ // item has value. Fortunately it is not a significant negative effect.
1316
1378
 
1317
- if (val >= min && val <= max) {
1318
- newIndices[offset++] = idx;
1319
- }
1320
-
1321
- idx++;
1379
+ if (val >= min && val <= max || isNaN(val)) {
1380
+ newIndices[offset++] = idx;
1322
1381
  }
1382
+
1383
+ idx++;
1323
1384
  }
1385
+ }
1324
1386
 
1325
- quickFinished = true;
1326
- } else if (dimSize === 2) {
1327
- var dimStorage = this._storage[dim0];
1328
- var dimStorage2 = this._storage[dimensions[1]];
1329
- var min2 = range[dimensions[1]][0];
1330
- var max2 = range[dimensions[1]][1];
1387
+ quickFinished = true;
1388
+ } else if (dimSize === 2) {
1389
+ var dimStorage = this._storage[dim0];
1390
+ var dimStorage2 = this._storage[dimensions[1]];
1391
+ var min2 = range[dimensions[1]][0];
1392
+ var max2 = range[dimensions[1]][1];
1331
1393
 
1332
- for (var k = 0; k < this._chunkCount; k++) {
1333
- var chunkStorage = dimStorage[k];
1334
- var chunkStorage2 = dimStorage2[k];
1335
- var len = Math.min(this._count - k * this._chunkSize, this._chunkSize);
1394
+ for (var k = 0; k < this._chunkCount; k++) {
1395
+ var chunkStorage = dimStorage[k];
1396
+ var chunkStorage2 = dimStorage2[k];
1397
+ var len = Math.min(this._count - k * this._chunkSize, this._chunkSize);
1336
1398
 
1337
- for (var i = 0; i < len; i++) {
1338
- var val = chunkStorage[i];
1339
- var val2 = chunkStorage2[i];
1399
+ for (var i = 0; i < len; i++) {
1400
+ var val = chunkStorage[i];
1401
+ var val2 = chunkStorage2[i]; // Do not filter NaN, see comment above.
1340
1402
 
1341
- if (val >= min && val <= max && val2 >= min2 && val2 <= max2) {
1342
- newIndices[offset++] = idx;
1343
- }
1344
-
1345
- idx++;
1403
+ if ((val >= min && val <= max || isNaN(val)) && (val2 >= min2 && val2 <= max2 || isNaN(val2))) {
1404
+ newIndices[offset++] = idx;
1346
1405
  }
1347
- }
1348
1406
 
1349
- quickFinished = true;
1407
+ idx++;
1408
+ }
1350
1409
  }
1410
+
1411
+ quickFinished = true;
1351
1412
  }
1413
+ }
1352
1414
 
1353
1415
  if (!quickFinished) {
1354
1416
  if (dimSize === 1) {
1355
- // stack = stack || !!this.getCalculationInfo(dim0);
1356
1417
  for (var i = 0; i < originalCount; i++) {
1357
- var rawIndex = this.getRawIndex(i); // var val = stack ? this.get(dim0, i, true) : this._getFast(dim0, rawIndex);
1418
+ var rawIndex = this.getRawIndex(i);
1358
1419
 
1359
- var val = this._getFast(dim0, rawIndex);
1420
+ var val = this._getFast(dim0, rawIndex); // Do not filter NaN, see comment above.
1360
1421
 
1361
- if (val >= min && val <= max) {
1422
+
1423
+ if (val >= min && val <= max || isNaN(val)) {
1362
1424
  newIndices[offset++] = rawIndex;
1363
1425
  }
1364
1426
  }
@@ -1368,9 +1430,10 @@ listProto.selectRange = function (range
1368
1430
  var rawIndex = this.getRawIndex(i);
1369
1431
 
1370
1432
  for (var k = 0; k < dimSize; k++) {
1371
- var dimk = dimensions[k]; // var val = stack ? this.get(dimk, i, true) : this._getFast(dim, rawIndex);
1433
+ var dimk = dimensions[k];
1434
+
1435
+ var val = this._getFast(dim, rawIndex); // Do not filter NaN, see comment above.
1372
1436
 
1373
- var val = this._getFast(dim, rawIndex);
1374
1437
 
1375
1438
  if (val < range[dimk][0] || val > range[dimk][1]) {
1376
1439
  keep = false;
@@ -1430,16 +1493,18 @@ function cloneListForMapAndSample(original, excludeDimensions) {
1430
1493
 
1431
1494
  transferProperties(list, original);
1432
1495
  var storage = list._storage = {};
1433
- var originalStorage = original._storage;
1434
- var rawExtent = zrUtil.extend({}, original._rawExtent); // Init storage
1496
+ var originalStorage = original._storage; // Init storage
1435
1497
 
1436
1498
  for (var i = 0; i < allDimensions.length; i++) {
1437
1499
  var dim = allDimensions[i];
1438
1500
 
1439
1501
  if (originalStorage[dim]) {
1502
+ // Notice that we do not reset invertedIndicesMap here, becuase
1503
+ // there is no scenario of mapping or sampling ordinal dimension.
1440
1504
  if (zrUtil.indexOf(excludeDimensions, dim) >= 0) {
1441
1505
  storage[dim] = cloneDimStore(originalStorage[dim]);
1442
- rawExtent[dim] = getInitialExtent();
1506
+ list._rawExtent[dim] = getInitialExtent();
1507
+ list._extent[dim] = null;
1443
1508
  } else {
1444
1509
  // Direct reference for other dimensions
1445
1510
  storage[dim] = originalStorage[dim];
@@ -1853,8 +1918,6 @@ listProto.cloneShallow = function (list) {
1853
1918
  }
1854
1919
 
1855
1920
  list.getRawIndex = list._indices ? getRawIndexWithIndices : getRawIndexWithoutIndices;
1856
- list._extent = zrUtil.clone(this._extent);
1857
- list._approximateExtent = zrUtil.clone(this._approximateExtent);
1858
1921
  return list;
1859
1922
  };
1860
1923
  /**
@@ -4,6 +4,25 @@ var createHashMap = _util.createHashMap;
4
4
  var isObject = _util.isObject;
5
5
  var map = _util.map;
6
6
 
7
+ /*
8
+ * Licensed to the Apache Software Foundation (ASF) under one
9
+ * or more contributor license agreements. See the NOTICE file
10
+ * distributed with this work for additional information
11
+ * regarding copyright ownership. The ASF licenses this file
12
+ * to you under the Apache License, Version 2.0 (the
13
+ * "License"); you may not use this file except in compliance
14
+ * with the License. You may obtain a copy of the License at
15
+ *
16
+ * http://www.apache.org/licenses/LICENSE-2.0
17
+ *
18
+ * Unless required by applicable law or agreed to in writing,
19
+ * software distributed under the License is distributed on an
20
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
21
+ * KIND, either express or implied. See the License for the
22
+ * specific language governing permissions and limitations
23
+ * under the License.
24
+ */
25
+
7
26
  /**
8
27
  * @constructor
9
28
  * @param {Object} [opt]
@@ -15,6 +15,25 @@ var SOURCE_FORMAT_UNKNOWN = _sourceType.SOURCE_FORMAT_UNKNOWN;
15
15
  var SOURCE_FORMAT_TYPED_ARRAY = _sourceType.SOURCE_FORMAT_TYPED_ARRAY;
16
16
  var SOURCE_FORMAT_KEYED_COLUMNS = _sourceType.SOURCE_FORMAT_KEYED_COLUMNS;
17
17
 
18
+ /*
19
+ * Licensed to the Apache Software Foundation (ASF) under one
20
+ * or more contributor license agreements. See the NOTICE file
21
+ * distributed with this work for additional information
22
+ * regarding copyright ownership. The ASF licenses this file
23
+ * to you under the Apache License, Version 2.0 (the
24
+ * "License"); you may not use this file except in compliance
25
+ * with the License. You may obtain a copy of the License at
26
+ *
27
+ * http://www.apache.org/licenses/LICENSE-2.0
28
+ *
29
+ * Unless required by applicable law or agreed to in writing,
30
+ * software distributed under the License is distributed on an
31
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
32
+ * KIND, either express or implied. See the License for the
33
+ * specific language governing permissions and limitations
34
+ * under the License.
35
+ */
36
+
18
37
  /**
19
38
  * [sourceFormat]
20
39
  *