echarts 4.0.1 → 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.
- package/.jshintrc-dist +70 -0
- package/KEYS +74 -0
- package/LICENSE +223 -29
- package/NOTICE +5 -0
- package/README.md +22 -8
- package/build/addHeader.js +113 -0
- package/build/amd2common.js +19 -0
- package/build/build.js +19 -0
- package/build/config.js +25 -1
- package/build/mangleString.js +19 -0
- package/build/optimize.js +19 -0
- package/build/pre-publish.js +26 -3
- package/build/preamble.js +20 -0
- package/build/rollup-plugin-ec-lang.js +20 -0
- package/build/rollup-plugin-ec-remove-dev.js +19 -0
- package/dist/echarts-en.common.js +7106 -1621
- package/dist/echarts-en.common.min.js +21 -1
- package/dist/echarts-en.js +13949 -4217
- package/dist/echarts-en.js.map +1 -1
- package/dist/echarts-en.min.js +21 -1
- package/dist/echarts-en.simple.js +5206 -1375
- package/dist/echarts-en.simple.min.js +21 -1
- package/dist/echarts.common.js +7106 -1621
- package/dist/echarts.common.min.js +21 -1
- package/dist/echarts.js +13949 -4217
- package/dist/echarts.js.map +1 -1
- package/dist/echarts.min.js +21 -1
- package/dist/echarts.simple.js +5206 -1375
- package/dist/echarts.simple.min.js +21 -1
- package/dist/extension/bmap.js +76 -0
- package/dist/extension/bmap.js.map +1 -1
- package/dist/extension/bmap.min.js +20 -0
- package/dist/extension/dataTool.js +95 -0
- package/dist/extension/dataTool.js.map +1 -1
- package/dist/extension/dataTool.min.js +20 -0
- package/echarts.all.js +19 -0
- package/echarts.blank.js +19 -0
- package/echarts.common.js +19 -0
- package/echarts.simple.js +19 -0
- package/extension/bmap/BMapCoordSys.js +19 -0
- package/extension/bmap/BMapModel.js +18 -0
- package/extension/bmap/BMapView.js +18 -0
- package/extension/bmap/bmap.js +19 -0
- package/extension/dataTool/gexf.js +18 -0
- package/extension/dataTool/index.js +19 -0
- package/extension/dataTool/prepareBoxplotData.js +19 -0
- package/extension/dataTool/quantile.js +19 -0
- package/extension/echarts.js +19 -0
- package/extension/webpack.config.js +19 -0
- package/extension-src/bmap/BMapCoordSys.js +19 -0
- package/extension-src/bmap/BMapModel.js +19 -0
- package/extension-src/bmap/BMapView.js +19 -0
- package/extension-src/bmap/bmap.js +19 -0
- package/extension-src/dataTool/gexf.js +19 -0
- package/extension-src/dataTool/index.js +19 -0
- package/extension-src/dataTool/prepareBoxplotData.js +19 -0
- package/extension-src/dataTool/quantile.js +19 -0
- package/index.common.js +19 -0
- package/index.js +19 -0
- package/index.simple.js +19 -0
- package/lib/CoordinateSystem.js +18 -0
- package/lib/ExtensionAPI.js +18 -0
- package/lib/action/createDataSelectAction.js +18 -0
- package/lib/action/geoRoam.js +19 -0
- package/lib/action/roamHelper.js +19 -0
- package/lib/chart/bar/BarSeries.js +42 -1
- package/lib/chart/bar/BarView.js +120 -15
- package/lib/chart/bar/BaseBarSeries.js +22 -0
- package/lib/chart/bar/PictorialBarSeries.js +18 -0
- package/lib/chart/bar/PictorialBarView.js +19 -0
- package/lib/chart/bar/barItemStyle.js +18 -0
- package/lib/chart/bar/helper.js +18 -0
- package/lib/chart/bar.js +28 -7
- package/lib/chart/boxplot/BoxplotSeries.js +35 -1
- package/lib/chart/boxplot/BoxplotView.js +128 -21
- package/lib/chart/boxplot/boxplotLayout.js +70 -63
- package/lib/chart/boxplot/boxplotVisual.js +18 -0
- package/lib/chart/boxplot.js +18 -0
- package/lib/chart/candlestick/CandlestickSeries.js +38 -4
- package/lib/chart/candlestick/CandlestickView.js +236 -22
- package/lib/chart/candlestick/candlestickLayout.js +143 -83
- package/lib/chart/candlestick/candlestickVisual.js +59 -14
- package/lib/chart/candlestick/preprocessor.js +18 -0
- package/lib/chart/candlestick.js +18 -0
- package/lib/chart/chord/ChordSeries.js +18 -0
- package/lib/chart/chord/ChordView.js +18 -0
- package/lib/chart/chord/Ribbon.js +18 -0
- package/lib/chart/chord/chordCircularLayout.js +19 -0
- package/lib/chart/chord.js +18 -0
- package/lib/chart/custom.js +20 -2
- package/lib/chart/effectScatter/EffectScatterSeries.js +18 -0
- package/lib/chart/effectScatter/EffectScatterView.js +18 -0
- package/lib/chart/effectScatter.js +18 -0
- package/lib/chart/funnel/FunnelSeries.js +19 -0
- package/lib/chart/funnel/FunnelView.js +19 -0
- package/lib/chart/funnel/funnelLayout.js +18 -0
- package/lib/chart/funnel.js +18 -0
- package/lib/chart/gauge/GaugeSeries.js +18 -0
- package/lib/chart/gauge/GaugeView.js +18 -0
- package/lib/chart/gauge/PointerPath.js +18 -0
- package/lib/chart/graph/GraphSeries.js +25 -1
- package/lib/chart/graph/GraphView.js +18 -0
- package/lib/chart/graph/adjustEdge.js +18 -0
- package/lib/chart/graph/backwardCompat.js +18 -0
- package/lib/chart/graph/categoryFilter.js +18 -0
- package/lib/chart/graph/categoryVisual.js +18 -0
- package/lib/chart/graph/circularLayout.js +18 -0
- package/lib/chart/graph/circularLayoutHelper.js +18 -0
- package/lib/chart/graph/createView.js +18 -0
- package/lib/chart/graph/edgeVisual.js +18 -0
- package/lib/chart/graph/forceHelper.js +18 -0
- package/lib/chart/graph/forceLayout.js +18 -0
- package/lib/chart/graph/graphAction.js +19 -0
- package/lib/chart/graph/simpleLayout.js +18 -0
- package/lib/chart/graph/simpleLayoutHelper.js +18 -0
- package/lib/chart/graph.js +18 -0
- package/lib/chart/heatmap/HeatmapLayer.js +19 -0
- package/lib/chart/heatmap/HeatmapSeries.js +21 -1
- package/lib/chart/heatmap/HeatmapView.js +18 -0
- package/lib/chart/helper/EffectLine.js +19 -0
- package/lib/chart/helper/EffectPolyline.js +19 -0
- package/lib/chart/helper/EffectSymbol.js +19 -0
- package/lib/chart/helper/LargeLineDraw.js +18 -0
- package/lib/chart/helper/LargeSymbolDraw.js +18 -0
- package/lib/chart/helper/Line.js +31 -13
- package/lib/chart/helper/LineDraw.js +26 -1
- package/lib/chart/helper/LinePath.js +19 -0
- package/lib/chart/helper/Polyline.js +19 -0
- package/lib/chart/helper/Symbol.js +63 -12
- package/lib/chart/helper/SymbolDraw.js +65 -18
- package/lib/chart/helper/createGraphFromNodeEdge.js +27 -3
- package/lib/chart/helper/createGraphFromNodeMatrix.js +19 -0
- package/lib/chart/helper/createListFromArray.js +33 -8
- package/lib/chart/helper/createListSimply.js +19 -0
- package/lib/chart/helper/createRenderPlanner.js +22 -3
- package/lib/chart/helper/labelHelper.js +19 -0
- package/lib/chart/helper/treeHelper.js +18 -0
- package/lib/chart/helper/whiskerBoxCommon.js +20 -21
- package/lib/chart/line/LineSeries.js +32 -11
- package/lib/chart/line/LineView.js +165 -102
- package/lib/chart/line/helper.js +117 -0
- package/lib/chart/line/lineAnimationDiff.js +31 -32
- package/lib/chart/line/poly.js +136 -0
- package/lib/chart/line.js +18 -0
- package/lib/chart/lines/LinesSeries.js +25 -6
- package/lib/chart/lines/LinesView.js +20 -1
- package/lib/chart/lines/linesLayout.js +19 -1
- package/lib/chart/lines/linesVisual.js +18 -0
- package/lib/chart/lines.js +18 -0
- package/lib/chart/map/MapSeries.js +45 -8
- package/lib/chart/map/MapView.js +18 -0
- package/lib/chart/map/backwardCompat.js +18 -0
- package/lib/chart/map/mapDataStatistic.js +18 -0
- package/lib/chart/map/mapSymbolLayout.js +18 -0
- package/lib/chart/map/mapVisual.js +18 -0
- package/lib/chart/map.js +18 -0
- package/lib/chart/parallel/ParallelSeries.js +20 -7
- package/lib/chart/parallel/ParallelView.js +86 -55
- package/lib/chart/parallel/parallelVisual.js +38 -15
- package/lib/chart/parallel.js +18 -0
- package/lib/chart/pictorialBar.js +18 -0
- package/lib/chart/pie/PieSeries.js +39 -2
- package/lib/chart/pie/PieView.js +19 -0
- package/lib/chart/pie/labelLayout.js +18 -0
- package/lib/chart/pie/pieLayout.js +19 -1
- package/lib/chart/pie.js +18 -0
- package/lib/chart/radar/RadarSeries.js +21 -2
- package/lib/chart/radar/RadarView.js +18 -0
- package/lib/chart/radar/backwardCompat.js +18 -0
- package/lib/chart/radar/radarLayout.js +19 -1
- package/lib/chart/radar.js +18 -0
- package/lib/chart/sankey/SankeySeries.js +26 -0
- package/lib/chart/sankey/SankeyView.js +62 -10
- package/lib/chart/sankey/sankeyAction.js +34 -0
- package/lib/chart/sankey/sankeyLayout.js +68 -19
- package/lib/chart/sankey/sankeyVisual.js +49 -19
- package/lib/chart/sankey.js +20 -0
- package/lib/chart/scatter/ScatterSeries.js +20 -2
- package/lib/chart/scatter/ScatterView.js +18 -0
- package/lib/chart/scatter.js +18 -0
- package/lib/chart/sunburst/SunburstPiece.js +70 -19
- package/lib/chart/sunburst/SunburstSeries.js +18 -0
- package/lib/chart/sunburst/SunburstView.js +39 -20
- package/lib/chart/sunburst/sunburstAction.js +19 -0
- package/lib/chart/sunburst/sunburstLayout.js +18 -0
- package/lib/chart/sunburst.js +18 -0
- package/lib/chart/themeRiver/ThemeRiverSeries.js +19 -1
- package/lib/chart/themeRiver/ThemeRiverView.js +19 -0
- package/lib/chart/themeRiver/themeRiverLayout.js +19 -0
- package/lib/chart/themeRiver/themeRiverVisual.js +19 -0
- package/lib/chart/themeRiver.js +18 -0
- package/lib/chart/tree/TreeSeries.js +40 -3
- package/lib/chart/tree/TreeView.js +32 -6
- package/lib/chart/tree/layoutHelper.js +19 -0
- package/lib/chart/tree/traversalHelper.js +19 -0
- package/lib/chart/tree/treeAction.js +18 -0
- package/lib/chart/tree/treeLayout.js +137 -0
- package/lib/chart/tree.js +20 -5
- package/lib/chart/treemap/Breadcrumb.js +19 -0
- package/lib/chart/treemap/TreemapSeries.js +18 -0
- package/lib/chart/treemap/TreemapView.js +18 -0
- package/lib/chart/treemap/helper.js +18 -0
- package/lib/chart/treemap/treemapAction.js +19 -0
- package/lib/chart/treemap/treemapLayout.js +18 -0
- package/lib/chart/treemap/treemapVisual.js +18 -0
- package/lib/chart/treemap.js +18 -0
- package/lib/component/axis/AngleAxisView.js +59 -27
- package/lib/component/axis/AxisBuilder.js +59 -73
- package/lib/component/axis/AxisView.js +19 -0
- package/lib/component/axis/CartesianAxisView.js +71 -39
- package/lib/component/axis/ParallelAxisView.js +18 -0
- package/lib/component/axis/RadiusAxisView.js +26 -4
- package/lib/component/axis/SingleAxisView.js +25 -14
- package/lib/component/axis/parallelAxisAction.js +19 -0
- package/lib/component/axisPointer/AxisPointerModel.js +18 -0
- package/lib/component/axisPointer/AxisPointerView.js +18 -0
- package/lib/component/axisPointer/BaseAxisPointer.js +19 -0
- package/lib/component/axisPointer/CartesianAxisPointer.js +20 -2
- package/lib/component/axisPointer/PolarAxisPointer.js +19 -1
- package/lib/component/axisPointer/SingleAxisPointer.js +19 -1
- package/lib/component/axisPointer/axisTrigger.js +20 -1
- package/lib/component/axisPointer/findPointFromSeries.js +19 -0
- package/lib/component/axisPointer/globalListener.js +19 -0
- package/lib/component/axisPointer/modelHelper.js +20 -1
- package/lib/component/axisPointer/viewHelper.js +20 -0
- package/lib/component/axisPointer.js +18 -0
- package/lib/component/brush/BrushModel.js +25 -1
- package/lib/component/brush/BrushView.js +23 -0
- package/lib/component/brush/brushAction.js +19 -0
- package/lib/component/brush/preprocessor.js +18 -0
- package/lib/component/brush/selector.js +18 -0
- package/lib/component/brush/visualEncoding.js +18 -0
- package/lib/component/brush.js +19 -0
- package/lib/component/calendar/CalendarView.js +18 -0
- package/lib/component/dataZoom/AxisProxy.js +42 -23
- package/lib/component/dataZoom/DataZoomModel.js +18 -0
- package/lib/component/dataZoom/DataZoomView.js +18 -0
- package/lib/component/dataZoom/InsideZoomModel.js +18 -0
- package/lib/component/dataZoom/InsideZoomView.js +36 -13
- package/lib/component/dataZoom/SelectZoomModel.js +18 -0
- package/lib/component/dataZoom/SelectZoomView.js +18 -0
- package/lib/component/dataZoom/SliderZoomModel.js +18 -0
- package/lib/component/dataZoom/SliderZoomView.js +29 -6
- package/lib/component/dataZoom/dataZoomAction.js +18 -0
- package/lib/component/dataZoom/dataZoomProcessor.js +23 -1
- package/lib/component/dataZoom/helper.js +18 -0
- package/lib/component/dataZoom/history.js +18 -0
- package/lib/component/dataZoom/roams.js +19 -18
- package/lib/component/dataZoom/typeDefaulter.js +18 -0
- package/lib/component/dataset.js +56 -3
- package/lib/component/geo/GeoView.js +18 -0
- package/lib/component/geo.js +18 -0
- package/lib/component/graphic.js +18 -0
- package/lib/component/gridSimple.js +18 -0
- package/lib/component/helper/BrushController.js +18 -0
- package/lib/component/helper/BrushTargetManager.js +18 -0
- package/lib/component/helper/MapDraw.js +18 -0
- package/lib/component/helper/RoamController.js +19 -0
- package/lib/component/helper/brushHelper.js +18 -0
- package/lib/component/helper/cursorHelper.js +18 -0
- package/lib/component/helper/interactionMutex.js +18 -0
- package/lib/component/helper/listComponent.js +19 -0
- package/lib/component/helper/roamHelper.js +19 -0
- package/lib/component/helper/selectableMixin.js +21 -16
- package/lib/component/helper/sliderMove.js +19 -0
- package/lib/component/legend/LegendModel.js +25 -6
- package/lib/component/legend/LegendView.js +41 -12
- package/lib/component/legend/ScrollableLegendModel.js +19 -0
- package/lib/component/legend/ScrollableLegendView.js +19 -0
- package/lib/component/legend/legendAction.js +18 -0
- package/lib/component/legend/legendFilter.js +18 -0
- package/lib/component/legend/scrollableLegendAction.js +19 -0
- package/lib/component/legend.js +18 -0
- package/lib/component/markArea.js +18 -0
- package/lib/component/markLine.js +18 -0
- package/lib/component/markPoint.js +18 -0
- package/lib/component/marker/MarkAreaModel.js +18 -0
- package/lib/component/marker/MarkAreaView.js +20 -2
- package/lib/component/marker/MarkLineModel.js +18 -0
- package/lib/component/marker/MarkLineView.js +20 -2
- package/lib/component/marker/MarkPointModel.js +18 -0
- package/lib/component/marker/MarkPointView.js +20 -4
- package/lib/component/marker/MarkerModel.js +19 -1
- package/lib/component/marker/MarkerView.js +18 -0
- package/lib/component/marker/markerHelper.js +58 -17
- package/lib/component/parallel.js +18 -0
- package/lib/component/polar.js +18 -0
- package/lib/component/radar/RadarView.js +22 -4
- package/lib/component/singleAxis.js +18 -0
- package/lib/component/timeline/SliderTimelineModel.js +18 -0
- package/lib/component/timeline/SliderTimelineView.js +42 -33
- package/lib/component/timeline/TimelineAxis.js +24 -35
- package/lib/component/timeline/TimelineModel.js +18 -0
- package/lib/component/timeline/TimelineView.js +18 -0
- package/lib/component/timeline/preprocessor.js +18 -0
- package/lib/component/timeline/timelineAction.js +18 -0
- package/lib/component/timeline/typeDefaulter.js +18 -0
- package/lib/component/timeline.js +19 -0
- package/lib/component/title.js +19 -0
- package/lib/component/toolbox/ToolboxModel.js +20 -2
- package/lib/component/toolbox/ToolboxView.js +18 -0
- package/lib/component/toolbox/feature/Brush.js +18 -0
- package/lib/component/toolbox/feature/DataView.js +18 -0
- package/lib/component/toolbox/feature/DataZoom.js +22 -1
- package/lib/component/toolbox/feature/MagicType.js +18 -0
- package/lib/component/toolbox/feature/Restore.js +18 -0
- package/lib/component/toolbox/feature/SaveAsImage.js +18 -0
- package/lib/component/toolbox/featureManager.js +18 -0
- package/lib/component/tooltip/TooltipContent.js +18 -0
- package/lib/component/tooltip/TooltipModel.js +18 -0
- package/lib/component/tooltip/TooltipView.js +19 -1
- package/lib/component/tooltip.js +18 -0
- package/lib/component/visualMap/ContinuousModel.js +19 -1
- package/lib/component/visualMap/ContinuousView.js +18 -0
- package/lib/component/visualMap/PiecewiseModel.js +20 -1
- package/lib/component/visualMap/PiecewiseView.js +18 -0
- package/lib/component/visualMap/VisualMapModel.js +32 -1
- package/lib/component/visualMap/VisualMapView.js +18 -0
- package/lib/component/visualMap/helper.js +19 -0
- package/lib/component/visualMap/preprocessor.js +18 -0
- package/lib/component/visualMap/typeDefaulter.js +18 -0
- package/lib/component/visualMap/visualEncoding.js +21 -1
- package/lib/component/visualMap/visualMapAction.js +18 -0
- package/lib/component/visualMapContinuous.js +19 -0
- package/lib/component/visualMapPiecewise.js +19 -0
- package/lib/config.js +18 -0
- package/lib/coord/Axis.js +166 -87
- package/lib/coord/View.js +19 -0
- package/lib/coord/axisDefault.js +52 -42
- package/lib/coord/axisHelper.js +136 -89
- package/lib/coord/axisModelCommonMixin.js +18 -8
- package/lib/coord/axisModelCreator.js +26 -3
- package/lib/coord/axisTickLabelBuilder.js +350 -0
- package/lib/coord/calendar/Calendar.js +20 -2
- package/lib/coord/calendar/CalendarModel.js +19 -0
- package/lib/coord/calendar/prepareCustom.js +18 -0
- package/lib/coord/cartesian/Axis2D.js +24 -16
- package/lib/coord/cartesian/AxisModel.js +18 -0
- package/lib/coord/cartesian/Cartesian.js +19 -0
- package/lib/coord/cartesian/Cartesian2D.js +26 -4
- package/lib/coord/cartesian/Grid.js +71 -79
- package/lib/coord/cartesian/GridModel.js +18 -0
- package/lib/{component/axis → coord/cartesian}/cartesianAxisHelper.js +29 -9
- package/lib/coord/cartesian/prepareCustom.js +18 -0
- package/lib/coord/geo/Geo.js +18 -0
- package/lib/coord/geo/GeoModel.js +18 -0
- package/lib/coord/geo/Region.js +19 -0
- package/lib/coord/geo/fix/diaoyuIsland.js +18 -0
- package/lib/coord/geo/fix/geoCoord.js +18 -0
- package/lib/coord/geo/fix/nanhai.js +18 -0
- package/lib/coord/geo/fix/textCoord.js +18 -0
- package/lib/coord/geo/geoCreator.js +19 -0
- package/lib/coord/geo/parseGeoJson.js +19 -0
- package/lib/coord/geo/prepareCustom.js +23 -3
- package/lib/coord/parallel/AxisModel.js +31 -4
- package/lib/coord/parallel/Parallel.js +35 -12
- package/lib/coord/parallel/ParallelAxis.js +19 -0
- package/lib/coord/parallel/ParallelModel.js +18 -0
- package/lib/coord/parallel/parallelCreator.js +19 -0
- package/lib/coord/parallel/parallelPreprocessor.js +18 -0
- package/lib/coord/polar/AngleAxis.js +18 -0
- package/lib/coord/polar/AxisModel.js +18 -0
- package/lib/coord/polar/Polar.js +19 -0
- package/lib/coord/polar/PolarModel.js +18 -0
- package/lib/coord/polar/RadiusAxis.js +18 -0
- package/lib/coord/polar/polarCreator.js +24 -3
- package/lib/coord/polar/prepareCustom.js +18 -0
- package/lib/coord/radar/IndicatorAxis.js +18 -0
- package/lib/coord/radar/Radar.js +18 -0
- package/lib/coord/radar/RadarModel.js +18 -0
- package/lib/coord/single/AxisModel.js +18 -0
- package/lib/coord/single/Single.js +19 -0
- package/lib/coord/single/SingleAxis.js +19 -5
- package/lib/coord/single/prepareCustom.js +18 -0
- package/lib/{component/axis → coord/single}/singleAxisHelper.js +20 -2
- package/lib/coord/single/singleCreator.js +19 -0
- package/lib/data/DataDiffer.js +18 -0
- package/lib/data/Graph.js +19 -0
- package/lib/data/List.js +413 -201
- package/lib/data/OrdinalMeta.js +19 -0
- package/lib/data/Source.js +19 -0
- package/lib/data/Tree.js +19 -0
- package/lib/data/helper/completeDimensions.js +63 -22
- package/lib/data/helper/createDimensions.js +23 -4
- package/lib/data/helper/dataProvider.js +63 -6
- package/lib/data/helper/dataStackHelper.js +162 -0
- package/lib/data/helper/dimensionHelper.js +46 -10
- package/lib/data/helper/linkList.js +19 -0
- package/lib/data/helper/sourceHelper.js +19 -0
- package/lib/data/helper/sourceType.js +18 -0
- package/lib/echarts.js +128 -118
- package/lib/export.js +19 -0
- package/lib/helper.js +41 -0
- package/lib/lang.js +18 -0
- package/lib/langEN.js +18 -0
- package/lib/langFI.js +18 -0
- package/lib/langTH.js +18 -0
- package/lib/layout/barGrid.js +178 -53
- package/lib/layout/barPolar.js +88 -71
- package/lib/layout/points.js +39 -4
- package/lib/loading/default.js +18 -0
- package/lib/model/Component.js +19 -0
- package/lib/model/Global.js +30 -2
- package/lib/model/Model.js +19 -0
- package/lib/model/OptionManager.js +19 -0
- package/lib/model/Series.js +23 -5
- package/lib/model/globalDefault.js +21 -5
- package/lib/model/mixin/areaStyle.js +18 -0
- package/lib/model/mixin/boxLayout.js +18 -0
- package/lib/model/mixin/colorPalette.js +27 -0
- package/lib/model/mixin/dataFormat.js +20 -1
- package/lib/model/mixin/itemStyle.js +18 -0
- package/lib/model/mixin/lineStyle.js +18 -0
- package/lib/model/mixin/makeStyleMapper.js +18 -0
- package/lib/model/mixin/textStyle.js +18 -0
- package/lib/model/referHelper.js +19 -0
- package/lib/preprocessor/backwardCompat.js +18 -0
- package/lib/preprocessor/helper/compatStyle.js +42 -15
- package/lib/processor/dataFilter.js +19 -1
- package/lib/processor/dataSample.js +27 -5
- package/lib/processor/dataStack.js +118 -0
- package/lib/scale/Interval.js +19 -14
- package/lib/scale/Log.js +22 -3
- package/lib/scale/Ordinal.js +27 -2
- package/lib/scale/Scale.js +27 -16
- package/lib/scale/Time.js +18 -0
- package/lib/scale/helper.js +19 -0
- package/lib/stream/Scheduler.js +123 -37
- package/lib/stream/task.js +165 -14
- package/lib/theme/dark.js +18 -0
- package/lib/theme/light.js +18 -0
- package/lib/util/KDTree.js +19 -0
- package/lib/util/animation.js +19 -0
- package/lib/util/array/nest.js +19 -0
- package/lib/util/clazz.js +18 -0
- package/lib/util/component.js +19 -0
- package/lib/util/format.js +36 -11
- package/lib/util/graphic.js +19 -0
- package/lib/util/layout.js +18 -0
- package/lib/util/model.js +33 -6
- package/lib/util/number.js +18 -0
- package/lib/util/quickSelect.js +19 -0
- package/lib/util/symbol.js +18 -0
- package/lib/util/throttle.js +26 -1
- package/lib/view/Chart.js +44 -7
- package/lib/view/Component.js +18 -0
- package/lib/visual/VisualMapping.js +28 -0
- package/lib/visual/aria.js +18 -0
- package/lib/visual/dataColor.js +19 -1
- package/lib/visual/seriesColor.js +19 -1
- package/lib/visual/symbol.js +28 -2
- package/lib/visual/visualDefault.js +19 -0
- package/lib/visual/visualSolution.js +24 -3
- package/licenses/LICENSE-d3 +27 -0
- package/licenses/LICENSE-zrender +29 -0
- package/map/js/china-contour.js +19 -0
- package/map/js/china.js +19 -0
- package/map/js/province/anhui.js +19 -0
- package/map/js/province/aomen.js +19 -0
- package/map/js/province/beijing.js +19 -0
- package/map/js/province/chongqing.js +19 -0
- package/map/js/province/fujian.js +19 -0
- package/map/js/province/gansu.js +19 -0
- package/map/js/province/guangdong.js +19 -0
- package/map/js/province/guangxi.js +19 -0
- package/map/js/province/guizhou.js +19 -0
- package/map/js/province/hainan.js +19 -0
- package/map/js/province/hebei.js +19 -0
- package/map/js/province/heilongjiang.js +19 -0
- package/map/js/province/henan.js +19 -0
- package/map/js/province/hubei.js +19 -0
- package/map/js/province/hunan.js +19 -0
- package/map/js/province/jiangsu.js +19 -0
- package/map/js/province/jiangxi.js +19 -0
- package/map/js/province/jilin.js +19 -0
- package/map/js/province/liaoning.js +19 -0
- package/map/js/province/neimenggu.js +19 -0
- package/map/js/province/ningxia.js +19 -0
- package/map/js/province/qinghai.js +19 -0
- package/map/js/province/shandong.js +19 -0
- package/map/js/province/shanghai.js +19 -0
- package/map/js/province/shanxi.js +19 -0
- package/map/js/province/shanxi1.js +19 -0
- package/map/js/province/sichuan.js +19 -0
- package/map/js/province/taiwan.js +19 -0
- package/map/js/province/tianjin.js +19 -0
- package/map/js/province/xianggang.js +19 -0
- package/map/js/province/xinjiang.js +19 -0
- package/map/js/province/xizang.js +19 -0
- package/map/js/province/yunnan.js +19 -0
- package/map/js/province/zhejiang.js +19 -0
- package/map/js/world.js +19 -0
- package/package.json +3 -3
- package/src/CoordinateSystem.js +19 -0
- package/src/ExtensionAPI.js +19 -0
- package/src/action/createDataSelectAction.js +19 -0
- package/src/action/geoRoam.js +19 -0
- package/src/action/roamHelper.js +19 -0
- package/src/chart/bar/BarSeries.js +44 -1
- package/src/chart/bar/BarView.js +128 -17
- package/src/chart/bar/BaseBarSeries.js +24 -0
- package/src/chart/bar/PictorialBarSeries.js +19 -0
- package/src/chart/bar/PictorialBarView.js +19 -0
- package/src/chart/bar/barItemStyle.js +19 -0
- package/src/chart/bar/helper.js +20 -1
- package/src/chart/bar.js +28 -7
- package/src/chart/boxplot/BoxplotSeries.js +26 -1
- package/src/chart/boxplot/BoxplotView.js +152 -21
- package/src/chart/boxplot/boxplotLayout.js +75 -71
- package/src/chart/boxplot/boxplotVisual.js +19 -0
- package/src/chart/boxplot.js +19 -0
- package/src/chart/candlestick/CandlestickSeries.js +35 -4
- package/src/chart/candlestick/CandlestickView.js +272 -24
- package/src/chart/candlestick/candlestickLayout.js +151 -97
- package/src/chart/candlestick/candlestickVisual.js +66 -17
- package/src/chart/candlestick/preprocessor.js +19 -0
- package/src/chart/candlestick.js +19 -0
- package/src/chart/chord/ChordSeries.js +19 -0
- package/src/chart/chord/ChordView.js +19 -0
- package/src/chart/chord/Ribbon.js +19 -0
- package/src/chart/chord/chordCircularLayout.js +19 -0
- package/src/chart/chord.js +19 -0
- package/src/chart/custom.js +23 -6
- package/src/chart/effectScatter/EffectScatterSeries.js +19 -0
- package/src/chart/effectScatter/EffectScatterView.js +19 -0
- package/src/chart/effectScatter.js +19 -0
- package/src/chart/funnel/FunnelSeries.js +19 -0
- package/src/chart/funnel/FunnelView.js +19 -0
- package/src/chart/funnel/funnelLayout.js +19 -0
- package/src/chart/funnel.js +19 -0
- package/src/chart/gauge/GaugeSeries.js +19 -0
- package/src/chart/gauge/GaugeView.js +19 -0
- package/src/chart/gauge/PointerPath.js +19 -0
- package/src/chart/gauge.js +19 -0
- package/src/chart/graph/GraphSeries.js +27 -0
- package/src/chart/graph/GraphView.js +19 -0
- package/src/chart/graph/adjustEdge.js +19 -0
- package/src/chart/graph/backwardCompat.js +19 -0
- package/src/chart/graph/categoryFilter.js +19 -0
- package/src/chart/graph/categoryVisual.js +19 -0
- package/src/chart/graph/circularLayout.js +19 -0
- package/src/chart/graph/circularLayoutHelper.js +19 -0
- package/src/chart/graph/createView.js +19 -0
- package/src/chart/graph/edgeVisual.js +19 -0
- package/src/chart/graph/forceHelper.js +19 -0
- package/src/chart/graph/forceLayout.js +19 -0
- package/src/chart/graph/graphAction.js +19 -0
- package/src/chart/graph/simpleLayout.js +19 -0
- package/src/chart/graph/simpleLayoutHelper.js +19 -0
- package/src/chart/graph.js +19 -0
- package/src/chart/heatmap/HeatmapLayer.js +19 -0
- package/src/chart/heatmap/HeatmapSeries.js +22 -1
- package/src/chart/heatmap/HeatmapView.js +19 -0
- package/src/chart/heatmap.js +19 -0
- package/src/chart/helper/EffectLine.js +19 -0
- package/src/chart/helper/EffectPolyline.js +19 -0
- package/src/chart/helper/EffectSymbol.js +19 -0
- package/src/chart/helper/LargeLineDraw.js +20 -0
- package/src/chart/helper/LargeSymbolDraw.js +19 -0
- package/src/chart/helper/Line.js +38 -16
- package/src/chart/helper/LineDraw.js +27 -0
- package/src/chart/helper/LinePath.js +19 -0
- package/src/chart/helper/Polyline.js +19 -0
- package/src/chart/helper/Symbol.js +68 -15
- package/src/chart/helper/SymbolDraw.js +61 -18
- package/src/chart/helper/createGraphFromNodeEdge.js +29 -6
- package/src/chart/helper/createGraphFromNodeMatrix.js +19 -0
- package/src/chart/helper/createListFromArray.js +32 -7
- package/src/chart/helper/createListSimply.js +19 -0
- package/src/chart/helper/createRenderPlanner.js +22 -3
- package/src/chart/helper/labelHelper.js +19 -0
- package/src/chart/helper/treeHelper.js +19 -0
- package/src/chart/helper/whiskerBoxCommon.js +19 -24
- package/src/chart/line/LineSeries.js +35 -11
- package/src/chart/line/LineView.js +174 -105
- package/src/chart/line/helper.js +106 -0
- package/src/chart/line/lineAnimationDiff.js +32 -39
- package/src/chart/line/poly.js +149 -0
- package/src/chart/line.js +19 -0
- package/src/chart/lines/LinesSeries.js +27 -7
- package/src/chart/lines/LinesView.js +21 -1
- package/src/chart/lines/linesLayout.js +20 -1
- package/src/chart/lines/linesVisual.js +19 -0
- package/src/chart/lines.js +19 -0
- package/src/chart/map/MapSeries.js +42 -5
- package/src/chart/map/MapView.js +19 -0
- package/src/chart/map/backwardCompat.js +19 -0
- package/src/chart/map/mapDataStatistic.js +19 -0
- package/src/chart/map/mapSymbolLayout.js +19 -0
- package/src/chart/map/mapVisual.js +19 -0
- package/src/chart/map.js +19 -0
- package/src/chart/parallel/ParallelSeries.js +21 -7
- package/src/chart/parallel/ParallelView.js +90 -58
- package/src/chart/parallel/parallelVisual.js +39 -14
- package/src/chart/parallel.js +19 -0
- package/src/chart/pictorialBar.js +19 -0
- package/src/chart/pie/PieSeries.js +37 -2
- package/src/chart/pie/PieView.js +19 -0
- package/src/chart/pie/labelLayout.js +19 -0
- package/src/chart/pie/pieLayout.js +20 -1
- package/src/chart/pie.js +19 -0
- package/src/chart/radar/RadarSeries.js +21 -2
- package/src/chart/radar/RadarView.js +19 -0
- package/src/chart/radar/backwardCompat.js +19 -0
- package/src/chart/radar/radarLayout.js +20 -1
- package/src/chart/radar.js +19 -0
- package/src/chart/sankey/SankeySeries.js +28 -0
- package/src/chart/sankey/SankeyView.js +62 -11
- package/src/chart/sankey/sankeyAction.js +31 -0
- package/src/chart/sankey/sankeyLayout.js +71 -17
- package/src/chart/sankey/sankeyVisual.js +49 -25
- package/src/chart/sankey.js +20 -0
- package/src/chart/scatter/ScatterSeries.js +21 -2
- package/src/chart/scatter/ScatterView.js +19 -0
- package/src/chart/scatter.js +19 -0
- package/src/chart/sunburst/SunburstPiece.js +72 -20
- package/src/chart/sunburst/SunburstSeries.js +19 -0
- package/src/chart/sunburst/SunburstView.js +39 -17
- package/src/chart/sunburst/sunburstAction.js +19 -0
- package/src/chart/sunburst/sunburstLayout.js +19 -0
- package/src/chart/sunburst.js +19 -0
- package/src/chart/themeRiver/ThemeRiverSeries.js +19 -1
- package/src/chart/themeRiver/ThemeRiverView.js +19 -0
- package/src/chart/themeRiver/themeRiverLayout.js +19 -0
- package/src/chart/themeRiver/themeRiverVisual.js +19 -0
- package/src/chart/themeRiver.js +19 -0
- package/src/chart/tree/TreeSeries.js +38 -2
- package/src/chart/tree/TreeView.js +31 -5
- package/src/chart/tree/layoutHelper.js +19 -0
- package/src/chart/tree/traversalHelper.js +19 -0
- package/src/chart/tree/treeAction.js +19 -0
- package/src/chart/tree/treeLayout.js +128 -0
- package/src/chart/tree.js +21 -4
- package/src/chart/treemap/Breadcrumb.js +19 -0
- package/src/chart/treemap/TreemapSeries.js +19 -0
- package/src/chart/treemap/TreemapView.js +19 -0
- package/src/chart/treemap/helper.js +19 -0
- package/src/chart/treemap/treemapAction.js +19 -0
- package/src/chart/treemap/treemapLayout.js +19 -0
- package/src/chart/treemap/treemapVisual.js +19 -0
- package/src/chart/treemap.js +19 -0
- package/src/component/angleAxis.js +19 -0
- package/src/component/axis/AngleAxisView.js +62 -25
- package/src/component/axis/AxisBuilder.js +68 -94
- package/src/component/axis/AxisView.js +19 -0
- package/src/component/axis/CartesianAxisView.js +69 -54
- package/src/component/axis/ParallelAxisView.js +19 -0
- package/src/component/axis/RadiusAxisView.js +26 -4
- package/src/component/axis/SingleAxisView.js +26 -18
- package/src/component/axis/parallelAxisAction.js +19 -0
- package/src/component/axis.js +19 -0
- package/src/component/axisPointer/AxisPointerModel.js +19 -0
- package/src/component/axisPointer/AxisPointerView.js +19 -0
- package/src/component/axisPointer/BaseAxisPointer.js +19 -0
- package/src/component/axisPointer/CartesianAxisPointer.js +21 -2
- package/src/component/axisPointer/PolarAxisPointer.js +20 -1
- package/src/component/axisPointer/SingleAxisPointer.js +20 -1
- package/src/component/axisPointer/axisTrigger.js +21 -1
- package/src/component/axisPointer/findPointFromSeries.js +19 -0
- package/src/component/axisPointer/globalListener.js +19 -0
- package/src/component/axisPointer/modelHelper.js +21 -1
- package/src/component/axisPointer/viewHelper.js +20 -0
- package/src/component/axisPointer.js +19 -0
- package/src/component/brush/BrushModel.js +26 -1
- package/src/component/brush/BrushView.js +24 -0
- package/src/component/brush/brushAction.js +19 -0
- package/src/component/brush/preprocessor.js +19 -0
- package/src/component/brush/selector.js +19 -0
- package/src/component/brush/visualEncoding.js +19 -0
- package/src/component/brush.js +19 -0
- package/src/component/calendar/CalendarView.js +19 -0
- package/src/component/calendar.js +19 -0
- package/src/component/dataZoom/AxisProxy.js +42 -20
- package/src/component/dataZoom/DataZoomModel.js +19 -0
- package/src/component/dataZoom/DataZoomView.js +19 -0
- package/src/component/dataZoom/InsideZoomModel.js +19 -0
- package/src/component/dataZoom/InsideZoomView.js +37 -10
- package/src/component/dataZoom/SelectZoomModel.js +19 -0
- package/src/component/dataZoom/SelectZoomView.js +19 -0
- package/src/component/dataZoom/SliderZoomModel.js +19 -0
- package/src/component/dataZoom/SliderZoomView.js +30 -5
- package/src/component/dataZoom/dataZoomAction.js +19 -0
- package/src/component/dataZoom/dataZoomProcessor.js +24 -1
- package/src/component/dataZoom/helper.js +19 -0
- package/src/component/dataZoom/history.js +19 -0
- package/src/component/dataZoom/roams.js +20 -15
- package/src/component/dataZoom/typeDefaulter.js +19 -0
- package/src/component/dataZoom.js +19 -0
- package/src/component/dataZoomInside.js +19 -0
- package/src/component/dataZoomSelect.js +19 -0
- package/src/component/dataset.js +63 -3
- package/src/component/geo/GeoView.js +19 -0
- package/src/component/geo.js +19 -0
- package/src/component/graphic.js +19 -0
- package/src/component/grid.js +19 -0
- package/src/component/gridSimple.js +19 -0
- package/src/component/helper/BrushController.js +19 -0
- package/src/component/helper/BrushTargetManager.js +19 -0
- package/src/component/helper/MapDraw.js +19 -0
- package/src/component/helper/RoamController.js +19 -0
- package/src/component/helper/brushHelper.js +19 -0
- package/src/component/helper/cursorHelper.js +19 -0
- package/src/component/helper/interactionMutex.js +19 -0
- package/src/component/helper/listComponent.js +19 -0
- package/src/component/helper/roamHelper.js +19 -0
- package/src/component/helper/selectableMixin.js +22 -12
- package/src/component/helper/sliderMove.js +19 -0
- package/src/component/legend/LegendModel.js +25 -6
- package/src/component/legend/LegendView.js +51 -13
- package/src/component/legend/ScrollableLegendModel.js +19 -0
- package/src/component/legend/ScrollableLegendView.js +19 -0
- package/src/component/legend/legendAction.js +19 -0
- package/src/component/legend/legendFilter.js +19 -0
- package/src/component/legend/scrollableLegendAction.js +19 -0
- package/src/component/legend.js +19 -0
- package/src/component/legendScroll.js +19 -0
- package/src/component/markArea.js +19 -0
- package/src/component/markLine.js +19 -0
- package/src/component/markPoint.js +19 -0
- package/src/component/marker/MarkAreaModel.js +19 -0
- package/src/component/marker/MarkAreaView.js +22 -3
- package/src/component/marker/MarkLineModel.js +19 -0
- package/src/component/marker/MarkLineView.js +22 -3
- package/src/component/marker/MarkPointModel.js +19 -0
- package/src/component/marker/MarkPointView.js +21 -3
- package/src/component/marker/MarkerModel.js +20 -1
- package/src/component/marker/MarkerView.js +19 -0
- package/src/component/marker/markerHelper.js +60 -20
- package/src/component/parallel.js +19 -0
- package/src/component/parallelAxis.js +19 -0
- package/src/component/polar.js +19 -0
- package/src/component/radar/RadarView.js +23 -4
- package/src/component/radar.js +19 -0
- package/src/component/radiusAxis.js +19 -0
- package/src/component/singleAxis.js +19 -0
- package/src/component/timeline/SliderTimelineModel.js +19 -0
- package/src/component/timeline/SliderTimelineView.js +41 -33
- package/src/component/timeline/TimelineAxis.js +25 -43
- package/src/component/timeline/TimelineModel.js +19 -0
- package/src/component/timeline/TimelineView.js +19 -0
- package/src/component/timeline/preprocessor.js +19 -0
- package/src/component/timeline/timelineAction.js +19 -0
- package/src/component/timeline/typeDefaulter.js +19 -0
- package/src/component/timeline.js +19 -0
- package/src/component/title.js +19 -0
- package/src/component/toolbox/ToolboxModel.js +21 -2
- package/src/component/toolbox/ToolboxView.js +19 -0
- package/src/component/toolbox/feature/Brush.js +19 -0
- package/src/component/toolbox/feature/DataView.js +19 -0
- package/src/component/toolbox/feature/DataZoom.js +22 -0
- package/src/component/toolbox/feature/MagicType.js +19 -0
- package/src/component/toolbox/feature/Restore.js +19 -0
- package/src/component/toolbox/feature/SaveAsImage.js +19 -0
- package/src/component/toolbox/featureManager.js +19 -0
- package/src/component/toolbox.js +19 -0
- package/src/component/tooltip/TooltipContent.js +19 -0
- package/src/component/tooltip/TooltipModel.js +19 -0
- package/src/component/tooltip/TooltipView.js +20 -1
- package/src/component/tooltip.js +19 -0
- package/src/component/visualMap/ContinuousModel.js +20 -1
- package/src/component/visualMap/ContinuousView.js +19 -0
- package/src/component/visualMap/PiecewiseModel.js +20 -1
- package/src/component/visualMap/PiecewiseView.js +19 -0
- package/src/component/visualMap/VisualMapModel.js +31 -3
- package/src/component/visualMap/VisualMapView.js +19 -0
- package/src/component/visualMap/helper.js +19 -0
- package/src/component/visualMap/preprocessor.js +19 -0
- package/src/component/visualMap/typeDefaulter.js +19 -0
- package/src/component/visualMap/visualEncoding.js +23 -1
- package/src/component/visualMap/visualMapAction.js +19 -0
- package/src/component/visualMap.js +19 -0
- package/src/component/visualMapContinuous.js +19 -0
- package/src/component/visualMapPiecewise.js +19 -0
- package/src/config.js +19 -0
- package/src/coord/Axis.js +159 -100
- package/src/coord/View.js +19 -0
- package/src/coord/axisDefault.js +68 -41
- package/src/coord/axisHelper.js +142 -93
- package/src/coord/axisModelCommonMixin.js +19 -11
- package/src/coord/axisModelCreator.js +25 -2
- package/src/coord/axisTickLabelBuilder.js +369 -0
- package/src/coord/calendar/Calendar.js +24 -2
- package/src/coord/calendar/CalendarModel.js +19 -0
- package/src/coord/calendar/prepareCustom.js +20 -1
- package/src/coord/cartesian/Axis2D.js +25 -18
- package/src/coord/cartesian/AxisModel.js +19 -0
- package/src/coord/cartesian/Cartesian.js +19 -0
- package/src/coord/cartesian/Cartesian2D.js +27 -4
- package/src/coord/cartesian/Grid.js +65 -76
- package/src/coord/cartesian/GridModel.js +19 -0
- package/src/{component/axis → coord/cartesian}/cartesianAxisHelper.js +28 -9
- package/src/coord/cartesian/prepareCustom.js +19 -0
- package/src/coord/geo/Geo.js +19 -0
- package/src/coord/geo/GeoModel.js +19 -0
- package/src/coord/geo/Region.js +19 -0
- package/src/coord/geo/fix/diaoyuIsland.js +19 -0
- package/src/coord/geo/fix/geoCoord.js +19 -0
- package/src/coord/geo/fix/nanhai.js +19 -0
- package/src/coord/geo/fix/textCoord.js +19 -0
- package/src/coord/geo/geoCreator.js +19 -0
- package/src/coord/geo/parseGeoJson.js +19 -0
- package/src/coord/geo/prepareCustom.js +24 -3
- package/src/coord/parallel/AxisModel.js +32 -3
- package/src/coord/parallel/Parallel.js +38 -12
- package/src/coord/parallel/ParallelAxis.js +19 -0
- package/src/coord/parallel/ParallelModel.js +19 -0
- package/src/coord/parallel/parallelCreator.js +19 -0
- package/src/coord/parallel/parallelPreprocessor.js +19 -0
- package/src/coord/polar/AngleAxis.js +19 -0
- package/src/coord/polar/AxisModel.js +19 -0
- package/src/coord/polar/Polar.js +19 -0
- package/src/coord/polar/PolarModel.js +19 -0
- package/src/coord/polar/RadiusAxis.js +19 -0
- package/src/coord/polar/polarCreator.js +26 -3
- package/src/coord/polar/prepareCustom.js +19 -0
- package/src/coord/radar/IndicatorAxis.js +19 -0
- package/src/coord/radar/Radar.js +19 -0
- package/src/coord/radar/RadarModel.js +19 -0
- package/src/coord/single/AxisModel.js +19 -0
- package/src/coord/single/Single.js +19 -0
- package/src/coord/single/SingleAxis.js +19 -5
- package/src/coord/single/prepareCustom.js +19 -0
- package/src/{component/axis → coord/single}/singleAxisHelper.js +21 -4
- package/src/coord/single/singleCreator.js +19 -0
- package/src/data/DataDiffer.js +19 -0
- package/src/data/Graph.js +20 -1
- package/src/data/List.js +412 -207
- package/src/data/OrdinalMeta.js +19 -0
- package/src/data/Source.js +19 -0
- package/src/data/Tree.js +19 -0
- package/src/data/helper/completeDimensions.js +62 -29
- package/src/data/helper/createDimensions.js +23 -4
- package/src/data/helper/dataProvider.js +61 -6
- package/src/data/helper/dataStackHelper.js +162 -0
- package/src/data/helper/dimensionHelper.js +49 -10
- package/src/data/helper/linkList.js +19 -0
- package/src/data/helper/sourceHelper.js +19 -0
- package/src/data/helper/sourceType.js +19 -0
- package/src/echarts.js +127 -114
- package/src/export.js +19 -0
- package/src/helper.js +30 -1
- package/src/lang.js +19 -0
- package/src/langEN.js +19 -0
- package/src/langFI.js +19 -0
- package/src/langTH.js +19 -0
- package/src/layout/barGrid.js +174 -64
- package/src/layout/barPolar.js +81 -66
- package/src/layout/points.js +32 -4
- package/src/loading/default.js +19 -0
- package/src/model/Component.js +19 -0
- package/src/model/Global.js +29 -2
- package/src/model/Model.js +19 -0
- package/src/model/OptionManager.js +19 -0
- package/src/model/Series.js +23 -5
- package/src/model/globalDefault.js +23 -5
- package/src/model/mixin/areaStyle.js +19 -0
- package/src/model/mixin/boxLayout.js +19 -0
- package/src/model/mixin/colorPalette.js +26 -0
- package/src/model/mixin/dataFormat.js +20 -1
- package/src/model/mixin/itemStyle.js +19 -0
- package/src/model/mixin/lineStyle.js +19 -0
- package/src/model/mixin/makeStyleMapper.js +19 -0
- package/src/model/mixin/textStyle.js +19 -0
- package/src/model/referHelper.js +19 -0
- package/src/preprocessor/backwardCompat.js +19 -0
- package/src/preprocessor/helper/compatStyle.js +45 -15
- package/src/processor/dataFilter.js +20 -1
- package/src/processor/dataSample.js +29 -3
- package/src/processor/dataStack.js +129 -0
- package/src/scale/Interval.js +19 -12
- package/src/scale/Log.js +22 -3
- package/src/scale/Ordinal.js +28 -2
- package/src/scale/Scale.js +27 -13
- package/src/scale/Time.js +19 -0
- package/src/scale/helper.js +19 -0
- package/src/stream/Scheduler.js +124 -32
- package/src/stream/task.js +166 -16
- package/src/theme/dark.js +19 -0
- package/src/theme/light.js +19 -0
- package/src/util/KDTree.js +19 -0
- package/src/util/animation.js +19 -0
- package/src/util/array/nest.js +19 -0
- package/src/util/clazz.js +19 -0
- package/src/util/component.js +19 -0
- package/src/util/format.js +47 -20
- package/src/util/graphic.js +19 -0
- package/src/util/layout.js +19 -0
- package/src/util/model.js +33 -5
- package/src/util/number.js +19 -0
- package/src/util/quickSelect.js +19 -0
- package/src/util/symbol.js +19 -0
- package/src/util/throttle.js +27 -0
- package/src/view/Chart.js +48 -10
- package/src/view/Component.js +19 -0
- package/src/visual/VisualMapping.js +29 -0
- package/src/visual/aria.js +19 -0
- package/src/visual/dataColor.js +21 -1
- package/src/visual/seriesColor.js +20 -1
- package/src/visual/symbol.js +34 -2
- package/src/visual/visualDefault.js +19 -0
- package/src/visual/visualSolution.js +23 -3
- package/theme/dark.js +19 -0
- package/theme/infographic.js +19 -0
- package/theme/macarons.js +19 -0
- package/theme/roma.js +19 -0
- package/theme/shine.js +19 -0
- package/theme/vintage.js +19 -0
- package/build/rollup-plugin-ec-dev.js +0 -38
- package/lib/chart/helper/WhiskerBoxDraw.js +0 -201
- package/lib/chart/tree/commonLayout.js +0 -108
- package/lib/chart/tree/orthogonalLayout.js +0 -9
- package/lib/chart/tree/radialLayout.js +0 -9
- package/lib/component/dataset/DatasetModel.js +0 -29
- package/src/chart/helper/WhiskerBoxDraw.js +0 -213
- package/src/chart/tree/commonLayout.js +0 -96
- package/src/chart/tree/orthogonalLayout.js +0 -7
- package/src/chart/tree/radialLayout.js +0 -7
- package/src/component/dataset/DatasetModel.js +0 -31
package/lib/stream/Scheduler.js
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
var _util = require("zrender/lib/core/util");
|
|
2
2
|
|
|
3
3
|
var each = _util.each;
|
|
4
|
+
var map = _util.map;
|
|
5
|
+
var isArray = _util.isArray;
|
|
4
6
|
var isFunction = _util.isFunction;
|
|
5
7
|
var createHashMap = _util.createHashMap;
|
|
6
8
|
var noop = _util.noop;
|
|
@@ -21,6 +23,25 @@ var _model = require("../util/model");
|
|
|
21
23
|
|
|
22
24
|
var normalizeToArray = _model.normalizeToArray;
|
|
23
25
|
|
|
26
|
+
/*
|
|
27
|
+
* Licensed to the Apache Software Foundation (ASF) under one
|
|
28
|
+
* or more contributor license agreements. See the NOTICE file
|
|
29
|
+
* distributed with this work for additional information
|
|
30
|
+
* regarding copyright ownership. The ASF licenses this file
|
|
31
|
+
* to you under the Apache License, Version 2.0 (the
|
|
32
|
+
* "License"); you may not use this file except in compliance
|
|
33
|
+
* with the License. You may obtain a copy of the License at
|
|
34
|
+
*
|
|
35
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
36
|
+
*
|
|
37
|
+
* Unless required by applicable law or agreed to in writing,
|
|
38
|
+
* software distributed under the License is distributed on an
|
|
39
|
+
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
40
|
+
* KIND, either express or implied. See the License for the
|
|
41
|
+
* specific language governing permissions and limitations
|
|
42
|
+
* under the License.
|
|
43
|
+
*/
|
|
44
|
+
|
|
24
45
|
/**
|
|
25
46
|
* @module echarts/stream/Scheduler
|
|
26
47
|
*/
|
|
@@ -28,11 +49,17 @@ var normalizeToArray = _model.normalizeToArray;
|
|
|
28
49
|
/**
|
|
29
50
|
* @constructor
|
|
30
51
|
*/
|
|
31
|
-
function Scheduler(ecInstance, api) {
|
|
32
|
-
// this._pipelineMap = createHashMap();
|
|
52
|
+
function Scheduler(ecInstance, api, dataProcessorHandlers, visualHandlers) {
|
|
33
53
|
this.ecInstance = ecInstance;
|
|
34
54
|
this.api = api;
|
|
35
|
-
this.unfinished;
|
|
55
|
+
this.unfinished; // Fix current processors in case that in some rear cases that
|
|
56
|
+
// processors might be registered after echarts instance created.
|
|
57
|
+
// Register processors incrementally for a echarts instance is
|
|
58
|
+
// not supported by this stream architecture.
|
|
59
|
+
|
|
60
|
+
var dataProcessorHandlers = this._dataProcessorHandlers = dataProcessorHandlers.slice();
|
|
61
|
+
var visualHandlers = this._visualHandlers = visualHandlers.slice();
|
|
62
|
+
this._allHandlers = dataProcessorHandlers.concat(visualHandlers);
|
|
36
63
|
/**
|
|
37
64
|
* @private
|
|
38
65
|
* @type {
|
|
@@ -48,7 +75,43 @@ function Scheduler(ecInstance, api) {
|
|
|
48
75
|
this._stageTaskMap = createHashMap();
|
|
49
76
|
}
|
|
50
77
|
|
|
51
|
-
var proto = Scheduler.prototype;
|
|
78
|
+
var proto = Scheduler.prototype;
|
|
79
|
+
/**
|
|
80
|
+
* @param {module:echarts/model/Global} ecModel
|
|
81
|
+
* @param {Object} payload
|
|
82
|
+
*/
|
|
83
|
+
|
|
84
|
+
proto.restoreData = function (ecModel, payload) {
|
|
85
|
+
// TODO: Only restroe needed series and components, but not all components.
|
|
86
|
+
// Currently `restoreData` of all of the series and component will be called.
|
|
87
|
+
// But some independent components like `title`, `legend`, `graphic`, `toolbox`,
|
|
88
|
+
// `tooltip`, `axisPointer`, etc, do not need series refresh when `setOption`,
|
|
89
|
+
// and some components like coordinate system, axes, dataZoom, visualMap only
|
|
90
|
+
// need their target series refresh.
|
|
91
|
+
// (1) If we are implementing this feature some day, we should consider these cases:
|
|
92
|
+
// if a data processor depends on a component (e.g., dataZoomProcessor depends
|
|
93
|
+
// on the settings of `dataZoom`), it should be re-performed if the component
|
|
94
|
+
// is modified by `setOption`.
|
|
95
|
+
// (2) If a processor depends on sevral series, speicified by its `getTargetSeries`,
|
|
96
|
+
// it should be re-performed when the result array of `getTargetSeries` changed.
|
|
97
|
+
// We use `dependencies` to cover these issues.
|
|
98
|
+
// (3) How to update target series when coordinate system related components modified.
|
|
99
|
+
// TODO: simply the dirty mechanism? Check whether only the case here can set tasks dirty,
|
|
100
|
+
// and this case all of the tasks will be set as dirty.
|
|
101
|
+
ecModel.restoreData(payload); // Theoretically an overall task not only depends on each of its target series, but also
|
|
102
|
+
// depends on all of the series.
|
|
103
|
+
// The overall task is not in pipeline, and `ecModel.restoreData` only set pipeline tasks
|
|
104
|
+
// dirty. If `getTargetSeries` of an overall task returns nothing, we should also ensure
|
|
105
|
+
// that the overall task is set as dirty and to be performed, otherwise it probably cause
|
|
106
|
+
// state chaos. So we have to set dirty of all of the overall tasks manually, otherwise it
|
|
107
|
+
// probably cause state chaos (consider `dataZoomProcessor`).
|
|
108
|
+
|
|
109
|
+
this._stageTaskMap.each(function (taskRecord) {
|
|
110
|
+
var overallTask = taskRecord.overallTask;
|
|
111
|
+
overallTask && overallTask.dirty();
|
|
112
|
+
});
|
|
113
|
+
}; // If seriesModel provided, incremental threshold is check by series data.
|
|
114
|
+
|
|
52
115
|
|
|
53
116
|
proto.getPerformArgs = function (task, isBlock) {
|
|
54
117
|
// For overall task
|
|
@@ -59,9 +122,14 @@ proto.getPerformArgs = function (task, isBlock) {
|
|
|
59
122
|
var pipeline = this._pipelineMap.get(task.__pipeline.id);
|
|
60
123
|
|
|
61
124
|
var pCtx = pipeline.context;
|
|
62
|
-
var incremental = !isBlock && pipeline.progressiveEnabled && (!pCtx || pCtx.
|
|
125
|
+
var incremental = !isBlock && pipeline.progressiveEnabled && (!pCtx || pCtx.progressiveRender) && task.__idxInPipeline > pipeline.blockIndex;
|
|
126
|
+
var step = incremental ? pipeline.step : null;
|
|
127
|
+
var modDataCount = pCtx && pCtx.modDataCount;
|
|
128
|
+
var modBy = modDataCount != null ? Math.ceil(modDataCount / step) : null;
|
|
63
129
|
return {
|
|
64
|
-
step:
|
|
130
|
+
step: step,
|
|
131
|
+
modBy: modBy,
|
|
132
|
+
modDataCount: modDataCount
|
|
65
133
|
};
|
|
66
134
|
};
|
|
67
135
|
|
|
@@ -81,11 +149,20 @@ proto.updateStreamModes = function (seriesModel, view) {
|
|
|
81
149
|
var pipeline = this._pipelineMap.get(seriesModel.uid);
|
|
82
150
|
|
|
83
151
|
var data = seriesModel.getData();
|
|
84
|
-
var dataLen = data.count();
|
|
85
|
-
|
|
86
|
-
|
|
152
|
+
var dataLen = data.count(); // `progressiveRender` means that can render progressively in each
|
|
153
|
+
// animation frame. Note that some types of series do not provide
|
|
154
|
+
// `view.incrementalPrepareRender` but support `chart.appendData`. We
|
|
155
|
+
// use the term `incremental` but not `progressive` to describe the
|
|
156
|
+
// case that `chart.appendData`.
|
|
157
|
+
|
|
158
|
+
var progressiveRender = pipeline.progressiveEnabled && view.incrementalPrepareRender && dataLen >= pipeline.threshold;
|
|
159
|
+
var large = seriesModel.get('large') && dataLen >= seriesModel.get('largeThreshold'); // TODO: modDataCount should not updated if `appendData`, otherwise cause whole repaint.
|
|
160
|
+
// see `test/candlestick-large3.html`
|
|
161
|
+
|
|
162
|
+
var modDataCount = seriesModel.get('progressiveChunkMode') === 'mod' ? dataLen : null;
|
|
87
163
|
seriesModel.pipelineContext = pipeline.context = {
|
|
88
|
-
|
|
164
|
+
progressiveRender: progressiveRender,
|
|
165
|
+
modDataCount: modDataCount,
|
|
89
166
|
large: large
|
|
90
167
|
};
|
|
91
168
|
};
|
|
@@ -102,20 +179,19 @@ proto.restorePipelines = function (ecModel) {
|
|
|
102
179
|
tail: null,
|
|
103
180
|
threshold: seriesModel.getProgressiveThreshold(),
|
|
104
181
|
progressiveEnabled: progressive && !(seriesModel.preventIncremental && seriesModel.preventIncremental()),
|
|
105
|
-
|
|
106
|
-
step: progressive || 700,
|
|
107
|
-
// ??? Temporarily number
|
|
182
|
+
blockIndex: -1,
|
|
183
|
+
step: Math.round(progressive || 700),
|
|
108
184
|
count: 0
|
|
109
185
|
});
|
|
110
186
|
pipe(scheduler, seriesModel, seriesModel.dataTask);
|
|
111
187
|
});
|
|
112
188
|
};
|
|
113
189
|
|
|
114
|
-
proto.prepareStageTasks = function (
|
|
190
|
+
proto.prepareStageTasks = function () {
|
|
115
191
|
var stageTaskMap = this._stageTaskMap;
|
|
116
192
|
var ecModel = this.ecInstance.getModel();
|
|
117
193
|
var api = this.api;
|
|
118
|
-
each(
|
|
194
|
+
each(this._allHandlers, function (handler) {
|
|
119
195
|
var record = stageTaskMap.get(handler.uid) || stageTaskMap.set(handler.uid, []);
|
|
120
196
|
handler.reset && createSeriesStageTask(this, handler, record, ecModel, api);
|
|
121
197
|
handler.overallReset && createOverallStageTask(this, handler, record, ecModel, api);
|
|
@@ -132,9 +208,9 @@ proto.prepareView = function (view, model, ecModel, api) {
|
|
|
132
208
|
pipe(this, model, renderTask);
|
|
133
209
|
};
|
|
134
210
|
|
|
135
|
-
proto.performDataProcessorTasks = function (
|
|
211
|
+
proto.performDataProcessorTasks = function (ecModel, payload) {
|
|
136
212
|
// If we do not use `block` here, it should be considered when to update modes.
|
|
137
|
-
performStageTasks(this,
|
|
213
|
+
performStageTasks(this, this._dataProcessorHandlers, ecModel, payload, {
|
|
138
214
|
block: true
|
|
139
215
|
});
|
|
140
216
|
}; // opt
|
|
@@ -142,8 +218,8 @@ proto.performDataProcessorTasks = function (stageHandlers, ecModel, payload) {
|
|
|
142
218
|
// opt.setDirty
|
|
143
219
|
|
|
144
220
|
|
|
145
|
-
proto.performVisualTasks = function (
|
|
146
|
-
performStageTasks(this,
|
|
221
|
+
proto.performVisualTasks = function (ecModel, payload, opt) {
|
|
222
|
+
performStageTasks(this, this._visualHandlers, ecModel, payload, opt);
|
|
147
223
|
};
|
|
148
224
|
|
|
149
225
|
function performStageTasks(scheduler, stageHandlers, ecModel, payload, opt) {
|
|
@@ -216,7 +292,7 @@ proto.plan = function () {
|
|
|
216
292
|
|
|
217
293
|
do {
|
|
218
294
|
if (task.__block) {
|
|
219
|
-
pipeline.
|
|
295
|
+
pipeline.blockIndex = task.__idxInPipeline;
|
|
220
296
|
break;
|
|
221
297
|
}
|
|
222
298
|
|
|
@@ -291,7 +367,7 @@ function createOverallStageTask(scheduler, stageHandler, stageHandlerRecord, ecM
|
|
|
291
367
|
var seriesType = stageHandler.seriesType;
|
|
292
368
|
var getTargetSeries = stageHandler.getTargetSeries;
|
|
293
369
|
var overallProgress = true;
|
|
294
|
-
var
|
|
370
|
+
var modifyOutputEnd = stageHandler.modifyOutputEnd; // An overall task with seriesType detected or has `getTargetSeries`, we add
|
|
295
371
|
// stub in each pipelines, it will set the overall task dirty when the pipeline
|
|
296
372
|
// progress. Moreover, to avoid call the overall task each frame (too frequent),
|
|
297
373
|
// we set the pipeline block.
|
|
@@ -311,14 +387,22 @@ function createOverallStageTask(scheduler, stageHandler, stageHandlerRecord, ecM
|
|
|
311
387
|
|
|
312
388
|
function createStub(seriesModel) {
|
|
313
389
|
var pipelineId = seriesModel.uid;
|
|
314
|
-
var stub = agentStubMap.get(pipelineId)
|
|
315
|
-
|
|
316
|
-
|
|
317
|
-
|
|
390
|
+
var stub = agentStubMap.get(pipelineId);
|
|
391
|
+
|
|
392
|
+
if (!stub) {
|
|
393
|
+
stub = agentStubMap.set(pipelineId, createTask({
|
|
394
|
+
reset: stubReset,
|
|
395
|
+
onDirty: stubOnDirty
|
|
396
|
+
})); // When the result of `getTargetSeries` changed, the overallTask
|
|
397
|
+
// should be set as dirty and re-performed.
|
|
398
|
+
|
|
399
|
+
overallTask.dirty();
|
|
400
|
+
}
|
|
401
|
+
|
|
318
402
|
stub.context = {
|
|
319
403
|
model: seriesModel,
|
|
320
404
|
overallProgress: overallProgress,
|
|
321
|
-
|
|
405
|
+
modifyOutputEnd: modifyOutputEnd
|
|
322
406
|
};
|
|
323
407
|
stub.agent = overallTask;
|
|
324
408
|
stub.__block = overallProgress;
|
|
@@ -329,7 +413,10 @@ function createOverallStageTask(scheduler, stageHandler, stageHandlerRecord, ecM
|
|
|
329
413
|
var pipelineMap = scheduler._pipelineMap;
|
|
330
414
|
agentStubMap.each(function (stub, pipelineId) {
|
|
331
415
|
if (!pipelineMap.get(pipelineId)) {
|
|
332
|
-
stub.dispose();
|
|
416
|
+
stub.dispose(); // When the result of `getTargetSeries` changed, the overallTask
|
|
417
|
+
// should be set as dirty and re-performed.
|
|
418
|
+
|
|
419
|
+
overallTask.dirty();
|
|
333
420
|
agentStubMap.removeKey(pipelineId);
|
|
334
421
|
}
|
|
335
422
|
});
|
|
@@ -362,18 +449,17 @@ function seriesTaskReset(context) {
|
|
|
362
449
|
}
|
|
363
450
|
|
|
364
451
|
var resetDefines = context.resetDefines = normalizeToArray(context.reset(context.model, context.ecModel, context.api, context.payload));
|
|
365
|
-
|
|
366
|
-
|
|
367
|
-
|
|
368
|
-
}
|
|
452
|
+
return resetDefines.length > 1 ? map(resetDefines, function (v, idx) {
|
|
453
|
+
return makeSeriesTaskProgress(idx);
|
|
454
|
+
}) : singleSeriesTaskProgress;
|
|
369
455
|
}
|
|
370
456
|
|
|
371
|
-
|
|
372
|
-
var data = context.data;
|
|
373
|
-
var resetDefines = context.resetDefines;
|
|
457
|
+
var singleSeriesTaskProgress = makeSeriesTaskProgress(0);
|
|
374
458
|
|
|
375
|
-
|
|
376
|
-
|
|
459
|
+
function makeSeriesTaskProgress(resetDefineIdx) {
|
|
460
|
+
return function (params, context) {
|
|
461
|
+
var data = context.data;
|
|
462
|
+
var resetDefine = context.resetDefines[resetDefineIdx];
|
|
377
463
|
|
|
378
464
|
if (resetDefine && resetDefine.dataEach) {
|
|
379
465
|
for (var i = params.start; i < params.end; i++) {
|
|
@@ -382,7 +468,7 @@ function seriesTaskProgress(params, context) {
|
|
|
382
468
|
} else if (resetDefine && resetDefine.progress) {
|
|
383
469
|
resetDefine.progress(params, data);
|
|
384
470
|
}
|
|
385
|
-
}
|
|
471
|
+
};
|
|
386
472
|
}
|
|
387
473
|
|
|
388
474
|
function seriesTaskCount(context) {
|
package/lib/stream/task.js
CHANGED
|
@@ -1,11 +1,31 @@
|
|
|
1
1
|
var _util = require("zrender/lib/core/util");
|
|
2
2
|
|
|
3
3
|
var assert = _util.assert;
|
|
4
|
+
var isArray = _util.isArray;
|
|
4
5
|
|
|
5
6
|
var _config = require("../config");
|
|
6
7
|
|
|
7
8
|
var __DEV__ = _config.__DEV__;
|
|
8
9
|
|
|
10
|
+
/*
|
|
11
|
+
* Licensed to the Apache Software Foundation (ASF) under one
|
|
12
|
+
* or more contributor license agreements. See the NOTICE file
|
|
13
|
+
* distributed with this work for additional information
|
|
14
|
+
* regarding copyright ownership. The ASF licenses this file
|
|
15
|
+
* to you under the Apache License, Version 2.0 (the
|
|
16
|
+
* "License"); you may not use this file except in compliance
|
|
17
|
+
* with the License. You may obtain a copy of the License at
|
|
18
|
+
*
|
|
19
|
+
* http://www.apache.org/licenses/LICENSE-2.0
|
|
20
|
+
*
|
|
21
|
+
* Unless required by applicable law or agreed to in writing,
|
|
22
|
+
* software distributed under the License is distributed on an
|
|
23
|
+
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
24
|
+
* KIND, either express or implied. See the License for the
|
|
25
|
+
* specific language governing permissions and limitations
|
|
26
|
+
* under the License.
|
|
27
|
+
*/
|
|
28
|
+
|
|
9
29
|
/**
|
|
10
30
|
* @param {Object} define
|
|
11
31
|
* @return See the return of `createTask`.
|
|
@@ -40,6 +60,8 @@ var taskProto = Task.prototype;
|
|
|
40
60
|
* @param {Object} performArgs
|
|
41
61
|
* @param {number} [performArgs.step] Specified step.
|
|
42
62
|
* @param {number} [performArgs.skip] Skip customer perform call.
|
|
63
|
+
* @param {number} [performArgs.modBy] Sampling window size.
|
|
64
|
+
* @param {number} [performArgs.modDataCount] Sampling count.
|
|
43
65
|
*/
|
|
44
66
|
|
|
45
67
|
taskProto.perform = function (performArgs) {
|
|
@@ -61,18 +83,37 @@ taskProto.perform = function (performArgs) {
|
|
|
61
83
|
|
|
62
84
|
if (this._plan && !skip) {
|
|
63
85
|
planResult = this._plan(this.context);
|
|
86
|
+
} // Support sharding by mod, which changes the render sequence and makes the rendered graphic
|
|
87
|
+
// elements uniformed distributed when progress, especially when moving or zooming.
|
|
88
|
+
|
|
89
|
+
|
|
90
|
+
var lastModBy = normalizeModBy(this._modBy);
|
|
91
|
+
var lastModDataCount = this._modDataCount || 0;
|
|
92
|
+
var modBy = normalizeModBy(performArgs && performArgs.modBy);
|
|
93
|
+
var modDataCount = performArgs && performArgs.modDataCount || 0;
|
|
94
|
+
|
|
95
|
+
if (lastModBy !== modBy || lastModDataCount !== modDataCount) {
|
|
96
|
+
planResult = 'reset';
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
function normalizeModBy(val) {
|
|
100
|
+
!(val >= 1) && (val = 1); // jshint ignore:line
|
|
101
|
+
|
|
102
|
+
return val;
|
|
64
103
|
}
|
|
65
104
|
|
|
105
|
+
var forceFirstProgress;
|
|
106
|
+
|
|
66
107
|
if (this._dirty || planResult === 'reset') {
|
|
67
108
|
this._dirty = false;
|
|
68
|
-
reset(this, skip);
|
|
109
|
+
forceFirstProgress = reset(this, skip);
|
|
69
110
|
}
|
|
70
111
|
|
|
112
|
+
this._modBy = modBy;
|
|
113
|
+
this._modDataCount = modDataCount;
|
|
71
114
|
var step = performArgs && performArgs.step;
|
|
72
115
|
|
|
73
116
|
if (upTask) {
|
|
74
|
-
// ??? FIXME move to schedueler?
|
|
75
|
-
// this._dueEnd = Math.max(upTask._outputDueEnd, this._dueEnd);
|
|
76
117
|
this._dueEnd = upTask._outputDueEnd;
|
|
77
118
|
} // DataTask or overallTask
|
|
78
119
|
else {
|
|
@@ -84,10 +125,19 @@ taskProto.perform = function (performArgs) {
|
|
|
84
125
|
if (this._progress) {
|
|
85
126
|
var start = this._dueIndex;
|
|
86
127
|
var end = Math.min(step != null ? this._dueIndex + step : Infinity, this._dueEnd);
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
128
|
+
|
|
129
|
+
if (!skip && (forceFirstProgress || start < end)) {
|
|
130
|
+
var progress = this._progress;
|
|
131
|
+
|
|
132
|
+
if (isArray(progress)) {
|
|
133
|
+
for (var i = 0; i < progress.length; i++) {
|
|
134
|
+
doProgress(this, progress[i], start, end, modBy, modDataCount);
|
|
135
|
+
}
|
|
136
|
+
} else {
|
|
137
|
+
doProgress(this, progress, start, end, modBy, modDataCount);
|
|
138
|
+
}
|
|
139
|
+
}
|
|
140
|
+
|
|
91
141
|
this._dueIndex = end; // If no `outputDueEnd`, assume that output data and
|
|
92
142
|
// input data is the same, so use `dueIndex` as `outputDueEnd`.
|
|
93
143
|
|
|
@@ -103,21 +153,80 @@ taskProto.perform = function (performArgs) {
|
|
|
103
153
|
return this.unfinished();
|
|
104
154
|
};
|
|
105
155
|
|
|
156
|
+
var iterator = function () {
|
|
157
|
+
var end;
|
|
158
|
+
var current;
|
|
159
|
+
var modBy;
|
|
160
|
+
var modDataCount;
|
|
161
|
+
var winCount;
|
|
162
|
+
var it = {
|
|
163
|
+
reset: function (s, e, sStep, sCount) {
|
|
164
|
+
current = s;
|
|
165
|
+
end = e;
|
|
166
|
+
modBy = sStep;
|
|
167
|
+
modDataCount = sCount;
|
|
168
|
+
winCount = Math.ceil(modDataCount / modBy);
|
|
169
|
+
it.next = modBy > 1 && modDataCount > 0 ? modNext : sequentialNext;
|
|
170
|
+
}
|
|
171
|
+
};
|
|
172
|
+
return it;
|
|
173
|
+
|
|
174
|
+
function sequentialNext() {
|
|
175
|
+
return current < end ? current++ : null;
|
|
176
|
+
}
|
|
177
|
+
|
|
178
|
+
function modNext() {
|
|
179
|
+
var dataIndex = current % winCount * modBy + Math.ceil(current / winCount);
|
|
180
|
+
var result = current >= end ? null : dataIndex < modDataCount ? dataIndex // If modDataCount is smaller than data.count() (consider `appendData` case),
|
|
181
|
+
// Use normal linear rendering mode.
|
|
182
|
+
: current;
|
|
183
|
+
current++;
|
|
184
|
+
return result;
|
|
185
|
+
}
|
|
186
|
+
}();
|
|
187
|
+
|
|
106
188
|
taskProto.dirty = function () {
|
|
107
189
|
this._dirty = true;
|
|
108
190
|
this._onDirty && this._onDirty(this.context);
|
|
109
191
|
};
|
|
110
|
-
/**
|
|
111
|
-
* @param {Object} [params]
|
|
112
|
-
*/
|
|
113
192
|
|
|
193
|
+
function doProgress(taskIns, progress, start, end, modBy, modDataCount) {
|
|
194
|
+
iterator.reset(start, end, modBy, modDataCount);
|
|
195
|
+
taskIns._callingProgress = progress;
|
|
196
|
+
|
|
197
|
+
taskIns._callingProgress({
|
|
198
|
+
start: start,
|
|
199
|
+
end: end,
|
|
200
|
+
count: end - start,
|
|
201
|
+
next: iterator.next
|
|
202
|
+
}, taskIns.context);
|
|
203
|
+
}
|
|
114
204
|
|
|
115
205
|
function reset(taskIns, skip) {
|
|
116
206
|
taskIns._dueIndex = taskIns._outputDueEnd = taskIns._dueEnd = 0;
|
|
117
207
|
taskIns._settedOutputEnd = null;
|
|
118
|
-
|
|
208
|
+
var progress;
|
|
209
|
+
var forceFirstProgress;
|
|
210
|
+
|
|
211
|
+
if (!skip && taskIns._reset) {
|
|
212
|
+
progress = taskIns._reset(taskIns.context);
|
|
213
|
+
|
|
214
|
+
if (progress && progress.progress) {
|
|
215
|
+
forceFirstProgress = progress.forceFirstProgress;
|
|
216
|
+
progress = progress.progress;
|
|
217
|
+
} // To simplify no progress checking, array must has item.
|
|
218
|
+
|
|
219
|
+
|
|
220
|
+
if (isArray(progress) && !progress.length) {
|
|
221
|
+
progress = null;
|
|
222
|
+
}
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
taskIns._progress = progress;
|
|
226
|
+
taskIns._modBy = taskIns._modDataCount = null;
|
|
119
227
|
var downstream = taskIns._downstream;
|
|
120
228
|
downstream && downstream.dirty();
|
|
229
|
+
return forceFirstProgress;
|
|
121
230
|
}
|
|
122
231
|
/**
|
|
123
232
|
* @return {boolean}
|
|
@@ -162,13 +271,55 @@ taskProto.getDownstream = function () {
|
|
|
162
271
|
};
|
|
163
272
|
|
|
164
273
|
taskProto.setOutputEnd = function (end) {
|
|
165
|
-
// ??? FIXME: check
|
|
166
274
|
// This only happend in dataTask, dataZoom, map, currently.
|
|
167
275
|
// where dataZoom do not set end each time, but only set
|
|
168
276
|
// when reset. So we should record the setted end, in case
|
|
169
277
|
// that the stub of dataZoom perform again and earse the
|
|
170
278
|
// setted end by upstream.
|
|
171
|
-
this._outputDueEnd = this._settedOutputEnd = end;
|
|
172
|
-
};
|
|
279
|
+
this._outputDueEnd = this._settedOutputEnd = end;
|
|
280
|
+
}; ///////////////////////////////////////////////////////////
|
|
281
|
+
// For stream debug (Should be commented out after used!)
|
|
282
|
+
// Usage: printTask(this, 'begin');
|
|
283
|
+
// Usage: printTask(this, null, {someExtraProp});
|
|
284
|
+
// function printTask(task, prefix, extra) {
|
|
285
|
+
// window.ecTaskUID == null && (window.ecTaskUID = 0);
|
|
286
|
+
// task.uidDebug == null && (task.uidDebug = `task_${window.ecTaskUID++}`);
|
|
287
|
+
// task.agent && task.agent.uidDebug == null && (task.agent.uidDebug = `task_${window.ecTaskUID++}`);
|
|
288
|
+
// var props = [];
|
|
289
|
+
// if (task.__pipeline) {
|
|
290
|
+
// var val = `${task.__idxInPipeline}/${task.__pipeline.tail.__idxInPipeline} ${task.agent ? '(stub)' : ''}`;
|
|
291
|
+
// props.push({text: 'idx', value: val});
|
|
292
|
+
// } else {
|
|
293
|
+
// var stubCount = 0;
|
|
294
|
+
// task.agentStubMap.each(() => stubCount++);
|
|
295
|
+
// props.push({text: 'idx', value: `overall (stubs: ${stubCount})`});
|
|
296
|
+
// }
|
|
297
|
+
// props.push({text: 'uid', value: task.uidDebug});
|
|
298
|
+
// if (task.__pipeline) {
|
|
299
|
+
// props.push({text: 'pid', value: task.__pipeline.id});
|
|
300
|
+
// task.agent && props.push(
|
|
301
|
+
// {text: 'stubFor', value: task.agent.uidDebug}
|
|
302
|
+
// );
|
|
303
|
+
// }
|
|
304
|
+
// props.push(
|
|
305
|
+
// {text: 'dirty', value: task._dirty},
|
|
306
|
+
// {text: 'dueIndex', value: task._dueIndex},
|
|
307
|
+
// {text: 'dueEnd', value: task._dueEnd},
|
|
308
|
+
// {text: 'outputDueEnd', value: task._outputDueEnd}
|
|
309
|
+
// );
|
|
310
|
+
// if (extra) {
|
|
311
|
+
// Object.keys(extra).forEach(key => {
|
|
312
|
+
// props.push({text: key, value: extra[key]});
|
|
313
|
+
// });
|
|
314
|
+
// }
|
|
315
|
+
// var args = ['color: blue'];
|
|
316
|
+
// var msg = `%c[${prefix || 'T'}] %c` + props.map(item => (
|
|
317
|
+
// args.push('color: black', 'color: red'),
|
|
318
|
+
// `${item.text}: %c${item.value}`
|
|
319
|
+
// )).join('%c, ');
|
|
320
|
+
// console.log.apply(console, [msg].concat(args));
|
|
321
|
+
// // console.log(this);
|
|
322
|
+
// }
|
|
323
|
+
|
|
173
324
|
|
|
174
325
|
exports.createTask = createTask;
|
package/lib/theme/dark.js
CHANGED
|
@@ -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
|
var contrastColor = '#eee';
|
|
2
20
|
|
|
3
21
|
var axisCommon = function () {
|
package/lib/theme/light.js
CHANGED
|
@@ -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
|
var colorAll = ['#37A2DA', '#32C5E9', '#67E0E3', '#9FE6B8', '#FFDB5C', '#ff9f7f', '#fb7293', '#E062AE', '#E690D1', '#e7bcf3', '#9d96f5', '#8378EA', '#96BFFF'];
|
|
2
20
|
var _default = {
|
|
3
21
|
color: colorAll,
|
package/lib/util/KDTree.js
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
1
1
|
var quickSelect = require("./quickSelect");
|
|
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
|
* K-Dimension Tree
|
|
5
24
|
*
|
package/lib/util/animation.js
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
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 {number} [time=500] Time in ms
|
|
5
24
|
* @param {string} [easing='linear']
|
package/lib/util/array/nest.js
CHANGED
|
@@ -1,5 +1,24 @@
|
|
|
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
|
* nest helper used to group by the array.
|
|
5
24
|
* can specified the keys and sort the keys.
|
package/lib/util/clazz.js
CHANGED
|
@@ -4,6 +4,24 @@ var __DEV__ = _config.__DEV__;
|
|
|
4
4
|
|
|
5
5
|
var zrUtil = require("zrender/lib/core/util");
|
|
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
|
+
*/
|
|
7
25
|
var TYPE_DELIMITER = '.';
|
|
8
26
|
var IS_CONTAINER = '___EC__COMPONENT__CONTAINER___';
|
|
9
27
|
/**
|