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/src/coord/axisDefault.js
CHANGED
|
@@ -1,30 +1,51 @@
|
|
|
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
|
+
*/
|
|
19
|
+
|
|
1
20
|
import * as zrUtil from 'zrender/src/core/util';
|
|
2
21
|
|
|
3
22
|
var defaultOption = {
|
|
4
23
|
show: true,
|
|
5
|
-
zlevel: 0,
|
|
6
|
-
z: 0,
|
|
7
|
-
//
|
|
24
|
+
zlevel: 0,
|
|
25
|
+
z: 0,
|
|
26
|
+
// Inverse the axis.
|
|
8
27
|
inverse: false,
|
|
9
28
|
|
|
10
|
-
//
|
|
29
|
+
// Axis name displayed.
|
|
11
30
|
name: '',
|
|
12
|
-
//
|
|
31
|
+
// 'start' | 'middle' | 'end'
|
|
13
32
|
nameLocation: 'end',
|
|
14
|
-
//
|
|
15
|
-
nameRotate: null,
|
|
33
|
+
// By degree. By defualt auto rotate by nameLocation.
|
|
34
|
+
nameRotate: null,
|
|
16
35
|
nameTruncate: {
|
|
17
36
|
maxWidth: null,
|
|
18
37
|
ellipsis: '...',
|
|
19
38
|
placeholder: '.'
|
|
20
39
|
},
|
|
21
|
-
//
|
|
40
|
+
// Use global text style by default.
|
|
22
41
|
nameTextStyle: {},
|
|
23
|
-
//
|
|
42
|
+
// The gap between axisName and axisLine.
|
|
24
43
|
nameGap: 15,
|
|
25
44
|
|
|
26
|
-
|
|
27
|
-
|
|
45
|
+
// Default `false` to support tooltip.
|
|
46
|
+
silent: false,
|
|
47
|
+
// Default `false` to avoid legacy user event listener fail.
|
|
48
|
+
triggerEvent: false,
|
|
28
49
|
|
|
29
50
|
tooltip: {
|
|
30
51
|
show: false
|
|
@@ -32,64 +53,52 @@ var defaultOption = {
|
|
|
32
53
|
|
|
33
54
|
axisPointer: {},
|
|
34
55
|
|
|
35
|
-
// 坐标轴线
|
|
36
56
|
axisLine: {
|
|
37
|
-
// 默认显示,属性show控制显示与否
|
|
38
57
|
show: true,
|
|
39
58
|
onZero: true,
|
|
40
59
|
onZeroAxisIndex: null,
|
|
41
|
-
// 属性lineStyle控制线条样式
|
|
42
60
|
lineStyle: {
|
|
43
61
|
color: '#333',
|
|
44
62
|
width: 1,
|
|
45
63
|
type: 'solid'
|
|
46
64
|
},
|
|
47
|
-
//
|
|
65
|
+
// The arrow at both ends the the axis.
|
|
48
66
|
symbol: ['none', 'none'],
|
|
49
67
|
symbolSize: [10, 15]
|
|
50
68
|
},
|
|
51
|
-
// 坐标轴小标记
|
|
52
69
|
axisTick: {
|
|
53
|
-
// 属性show控制显示与否,默认显示
|
|
54
70
|
show: true,
|
|
55
|
-
//
|
|
71
|
+
// Whether axisTick is inside the grid or outside the grid.
|
|
56
72
|
inside: false,
|
|
57
|
-
//
|
|
73
|
+
// The length of axisTick.
|
|
58
74
|
length: 5,
|
|
59
|
-
// 属性lineStyle控制线条样式
|
|
60
75
|
lineStyle: {
|
|
61
76
|
width: 1
|
|
62
77
|
}
|
|
63
78
|
},
|
|
64
|
-
// 坐标轴文本标签,详见axis.axisLabel
|
|
65
79
|
axisLabel: {
|
|
66
80
|
show: true,
|
|
67
|
-
//
|
|
81
|
+
// Whether axisLabel is inside the grid or outside the grid.
|
|
68
82
|
inside: false,
|
|
69
83
|
rotate: 0,
|
|
70
|
-
|
|
71
|
-
|
|
84
|
+
// true | false | null/undefined (auto)
|
|
85
|
+
showMinLabel: null,
|
|
86
|
+
// true | false | null/undefined (auto)
|
|
87
|
+
showMaxLabel: null,
|
|
72
88
|
margin: 8,
|
|
73
89
|
// formatter: null,
|
|
74
|
-
// 其余属性默认使用全局文本样式,详见TEXTSTYLE
|
|
75
90
|
fontSize: 12
|
|
76
91
|
},
|
|
77
|
-
// 分隔线
|
|
78
92
|
splitLine: {
|
|
79
|
-
// 默认显示,属性show控制显示与否
|
|
80
93
|
show: true,
|
|
81
|
-
// 属性lineStyle(详见lineStyle)控制线条样式
|
|
82
94
|
lineStyle: {
|
|
83
95
|
color: ['#ccc'],
|
|
84
96
|
width: 1,
|
|
85
97
|
type: 'solid'
|
|
86
98
|
}
|
|
87
99
|
},
|
|
88
|
-
// 分隔区域
|
|
89
100
|
splitArea: {
|
|
90
|
-
// 默认不显示,属性show控制显示与否
|
|
91
101
|
show: false,
|
|
92
|
-
// 属性areaStyle(详见areaStyle)控制区域样式
|
|
93
102
|
areaStyle: {
|
|
94
103
|
color: ['rgba(250,250,250,0.3)','rgba(200,200,200,0.3)']
|
|
95
104
|
}
|
|
@@ -99,7 +108,7 @@ var defaultOption = {
|
|
|
99
108
|
var axisDefault = {};
|
|
100
109
|
|
|
101
110
|
axisDefault.categoryAxis = zrUtil.merge({
|
|
102
|
-
//
|
|
111
|
+
// The gap at both ends of the axis. For categoryAxis, boolean.
|
|
103
112
|
boundaryGap: true,
|
|
104
113
|
// Set false to faster category collection.
|
|
105
114
|
// Only usefull in the case like: category is
|
|
@@ -115,43 +124,61 @@ axisDefault.categoryAxis = zrUtil.merge({
|
|
|
115
124
|
splitLine: {
|
|
116
125
|
show: false
|
|
117
126
|
},
|
|
118
|
-
// 坐标轴小标记
|
|
119
127
|
axisTick: {
|
|
120
128
|
// If tick is align with label when boundaryGap is true
|
|
121
129
|
alignWithLabel: false,
|
|
122
130
|
interval: 'auto'
|
|
123
131
|
},
|
|
124
|
-
// 坐标轴文本标签,详见axis.axisLabel
|
|
125
132
|
axisLabel: {
|
|
126
133
|
interval: 'auto'
|
|
127
134
|
}
|
|
128
135
|
}, defaultOption);
|
|
129
136
|
|
|
130
137
|
axisDefault.valueAxis = zrUtil.merge({
|
|
131
|
-
//
|
|
138
|
+
// The gap at both ends of the axis. For value axis, [GAP, GAP], where
|
|
139
|
+
// `GAP` can be an absolute pixel number (like `35`), or percent (like `'30%'`)
|
|
132
140
|
boundaryGap: [0, 0],
|
|
133
141
|
|
|
134
142
|
// TODO
|
|
135
143
|
// min/max: [30, datamin, 60] or [20, datamin] or [datamin, 60]
|
|
136
144
|
|
|
137
|
-
//
|
|
145
|
+
// Min value of the axis. can be:
|
|
146
|
+
// + a number
|
|
147
|
+
// + 'dataMin': use the min value in data.
|
|
148
|
+
// + null/undefined: auto decide min value (consider pretty look and boundaryGap).
|
|
138
149
|
// min: null,
|
|
139
|
-
|
|
150
|
+
|
|
151
|
+
// Max value of the axis. can be:
|
|
152
|
+
// + a number
|
|
153
|
+
// + 'dataMax': use the max value in data.
|
|
154
|
+
// + null/undefined: auto decide max value (consider pretty look and boundaryGap).
|
|
140
155
|
// max: null,
|
|
156
|
+
|
|
141
157
|
// Readonly prop, specifies start value of the range when using data zoom.
|
|
142
158
|
// rangeStart: null
|
|
159
|
+
|
|
143
160
|
// Readonly prop, specifies end value of the range when using data zoom.
|
|
144
161
|
// rangeEnd: null
|
|
145
|
-
|
|
162
|
+
|
|
163
|
+
// Optional value can be:
|
|
164
|
+
// + `false`: always include value 0.
|
|
165
|
+
// + `true`: the extent do not consider value 0.
|
|
146
166
|
// scale: false,
|
|
147
|
-
|
|
167
|
+
|
|
168
|
+
// AxisTick and axisLabel and splitLine are caculated based on splitNumber.
|
|
148
169
|
splitNumber: 5
|
|
149
|
-
|
|
170
|
+
|
|
171
|
+
// Interval specifies the span of the ticks is mandatorily.
|
|
172
|
+
// interval: null
|
|
173
|
+
|
|
174
|
+
// Specify min interval when auto calculate tick interval.
|
|
150
175
|
// minInterval: null
|
|
176
|
+
|
|
177
|
+
// Specify max interval when auto calculate tick interval.
|
|
151
178
|
// maxInterval: null
|
|
179
|
+
|
|
152
180
|
}, defaultOption);
|
|
153
181
|
|
|
154
|
-
// FIXME
|
|
155
182
|
axisDefault.timeAxis = zrUtil.defaults({
|
|
156
183
|
scale: true,
|
|
157
184
|
min: 'dataMin',
|
package/src/coord/axisHelper.js
CHANGED
|
@@ -1,11 +1,34 @@
|
|
|
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
|
+
*/
|
|
19
|
+
|
|
1
20
|
import {__DEV__} from '../config';
|
|
2
21
|
import * as zrUtil from 'zrender/src/core/util';
|
|
3
|
-
import * as textContain from 'zrender/src/contain/text';
|
|
4
22
|
import OrdinalScale from '../scale/Ordinal';
|
|
5
23
|
import IntervalScale from '../scale/Interval';
|
|
6
24
|
import Scale from '../scale/Scale';
|
|
7
25
|
import * as numberUtil from '../util/number';
|
|
8
|
-
import {
|
|
26
|
+
import {
|
|
27
|
+
prepareLayoutBarSeries,
|
|
28
|
+
makeColumnLayout,
|
|
29
|
+
retrieveColumnLayout
|
|
30
|
+
} from '../layout/barGrid';
|
|
31
|
+
import BoundingRect from 'zrender/src/core/BoundingRect';
|
|
9
32
|
|
|
10
33
|
import '../scale/Time';
|
|
11
34
|
import '../scale/Log';
|
|
@@ -98,7 +121,11 @@ export function getScaleExtent(scale, model) {
|
|
|
98
121
|
(min == null || !isFinite(min)) && (min = NaN);
|
|
99
122
|
(max == null || !isFinite(max)) && (max = NaN);
|
|
100
123
|
|
|
101
|
-
scale.setBlank(
|
|
124
|
+
scale.setBlank(
|
|
125
|
+
zrUtil.eqNaN(min)
|
|
126
|
+
|| zrUtil.eqNaN(max)
|
|
127
|
+
|| (scaleType === 'ordinal' && !scale.getOrdinalMeta().categories.length)
|
|
128
|
+
);
|
|
102
129
|
|
|
103
130
|
// Evaluate if axis needs cross zero
|
|
104
131
|
if (model.getNeedCrossZero()) {
|
|
@@ -114,14 +141,28 @@ export function getScaleExtent(scale, model) {
|
|
|
114
141
|
|
|
115
142
|
// If bars are placed on a base axis of type time or interval account for axis boundary overflow and current axis
|
|
116
143
|
// is base axis
|
|
144
|
+
// FIXME
|
|
145
|
+
// (1) Consider support value axis, where below zero and axis `onZero` should be handled properly.
|
|
146
|
+
// (2) Refactor the logic with `barGrid`. Is it not need to `makeBarWidthAndOffsetInfo` twice with different extent?
|
|
147
|
+
// Should not depend on series type `bar`?
|
|
148
|
+
// (3) Fix that might overlap when using dataZoom.
|
|
149
|
+
// (4) Consider other chart types using `barGrid`?
|
|
150
|
+
// See #6728, #4862, `test/bar-overflow-time-plot.html`
|
|
117
151
|
var ecModel = model.ecModel;
|
|
118
|
-
if (ecModel) {
|
|
119
|
-
var
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
152
|
+
if (ecModel && (scaleType === 'time' /*|| scaleType === 'interval' */)) {
|
|
153
|
+
var barSeriesModels = prepareLayoutBarSeries('bar', ecModel);
|
|
154
|
+
var isBaseAxisAndHasBarSeries;
|
|
155
|
+
|
|
156
|
+
zrUtil.each(barSeriesModels, function (seriesModel) {
|
|
157
|
+
isBaseAxisAndHasBarSeries |= seriesModel.getBaseAxis() === model.axis;
|
|
158
|
+
});
|
|
159
|
+
|
|
160
|
+
if (isBaseAxisAndHasBarSeries) {
|
|
161
|
+
// Calculate placement of bars on axis
|
|
162
|
+
var barWidthAndOffset = makeColumnLayout(barSeriesModels);
|
|
163
|
+
|
|
123
164
|
// Adjust axis min and max to account for overflow
|
|
124
|
-
var adjustedScale = adjustScaleForOverflow(min, max, model);
|
|
165
|
+
var adjustedScale = adjustScaleForOverflow(min, max, model, barWidthAndOffset);
|
|
125
166
|
min = adjustedScale.min;
|
|
126
167
|
max = adjustedScale.max;
|
|
127
168
|
}
|
|
@@ -130,26 +171,14 @@ export function getScaleExtent(scale, model) {
|
|
|
130
171
|
return [min, max];
|
|
131
172
|
}
|
|
132
173
|
|
|
133
|
-
|
|
174
|
+
function adjustScaleForOverflow(min, max, model, barWidthAndOffset) {
|
|
134
175
|
|
|
135
|
-
var ecModel = model.ecModel;
|
|
136
176
|
// Get Axis Length
|
|
137
177
|
var axisExtent = model.axis.getExtent();
|
|
138
178
|
var axisLength = axisExtent[1] - axisExtent[0];
|
|
139
179
|
|
|
140
|
-
// Calculate placement of bars on axis
|
|
141
|
-
var barWidthAndOffset = calBarWidthAndOffset(zrUtil.filter(
|
|
142
|
-
ecModel.getSeriesByType('bar'),
|
|
143
|
-
function (seriesModel) {
|
|
144
|
-
return !ecModel.isSeriesFiltered(seriesModel)
|
|
145
|
-
&& seriesModel.coordinateSystem
|
|
146
|
-
&& seriesModel.coordinateSystem.type === 'cartesian2d';
|
|
147
|
-
}
|
|
148
|
-
));
|
|
149
|
-
|
|
150
180
|
// Get bars on current base axis and calculate min and max overflow
|
|
151
|
-
var
|
|
152
|
-
var barsOnCurrentAxis = barWidthAndOffset[baseAxisKey];
|
|
181
|
+
var barsOnCurrentAxis = retrieveColumnLayout(barWidthAndOffset, model.axis);
|
|
153
182
|
if (barsOnCurrentAxis === undefined) {
|
|
154
183
|
return {min: min, max: max};
|
|
155
184
|
}
|
|
@@ -162,7 +191,9 @@ export function adjustScaleForOverflow(min, max, model) {
|
|
|
162
191
|
zrUtil.each(barsOnCurrentAxis, function (item) {
|
|
163
192
|
maxOverflow = Math.max(item.offset + item.width, maxOverflow);
|
|
164
193
|
});
|
|
165
|
-
|
|
194
|
+
minOverflow = Math.abs(minOverflow);
|
|
195
|
+
maxOverflow = Math.abs(maxOverflow);
|
|
196
|
+
var totalOverFlow = minOverflow + maxOverflow;
|
|
166
197
|
|
|
167
198
|
// Calulate required buffer based on old range and overflow
|
|
168
199
|
var oldRange = max - min;
|
|
@@ -245,69 +276,17 @@ export function ifAxisCrossZero(axis) {
|
|
|
245
276
|
}
|
|
246
277
|
|
|
247
278
|
/**
|
|
248
|
-
* @param {
|
|
249
|
-
* @
|
|
250
|
-
*
|
|
251
|
-
*
|
|
252
|
-
*
|
|
253
|
-
*
|
|
279
|
+
* @param {module:echarts/coord/Axis} axis
|
|
280
|
+
* @return {Function} Label formatter function.
|
|
281
|
+
* param: {number} tickValue,
|
|
282
|
+
* param: {number} idx, the index in all ticks.
|
|
283
|
+
* If category axis, this param is not requied.
|
|
284
|
+
* return: {string} label string.
|
|
254
285
|
*/
|
|
255
|
-
export function
|
|
256
|
-
var
|
|
257
|
-
var
|
|
258
|
-
var accumulatedLabelInterval = 0;
|
|
259
|
-
var rotation = (axisRotate - labelRotate) / 180 * Math.PI;
|
|
260
|
-
|
|
261
|
-
var step = 1;
|
|
262
|
-
if (labels.length > 40) {
|
|
263
|
-
// Simple optimization for large amount of labels
|
|
264
|
-
step = Math.floor(labels.length / 40);
|
|
265
|
-
}
|
|
266
|
-
|
|
267
|
-
for (var i = 0; i < tickCoords.length; i += step) {
|
|
268
|
-
var tickCoord = tickCoords[i];
|
|
286
|
+
export function makeLabelFormatter(axis) {
|
|
287
|
+
var labelFormatter = axis.getLabelModel().get('formatter');
|
|
288
|
+
var categoryTickStart = axis.type === 'category' ? axis.scale.getExtent()[0] : null;
|
|
269
289
|
|
|
270
|
-
// Not precise, do not consider align and vertical align
|
|
271
|
-
// and each distance from axis line yet.
|
|
272
|
-
var rect = textContain.getBoundingRect(
|
|
273
|
-
labels[i], font, 'center', 'top'
|
|
274
|
-
);
|
|
275
|
-
rect.x += tickCoord * Math.cos(rotation);
|
|
276
|
-
rect.y += tickCoord * Math.sin(rotation);
|
|
277
|
-
|
|
278
|
-
// Magic number
|
|
279
|
-
rect.width *= 1.3;
|
|
280
|
-
rect.height *= 1.3;
|
|
281
|
-
|
|
282
|
-
if (!textSpaceTakenRect) {
|
|
283
|
-
textSpaceTakenRect = rect.clone();
|
|
284
|
-
}
|
|
285
|
-
// There is no space for current label;
|
|
286
|
-
else if (textSpaceTakenRect.intersect(rect)) {
|
|
287
|
-
accumulatedLabelInterval++;
|
|
288
|
-
autoLabelInterval = Math.max(autoLabelInterval, accumulatedLabelInterval);
|
|
289
|
-
}
|
|
290
|
-
else {
|
|
291
|
-
textSpaceTakenRect.union(rect);
|
|
292
|
-
// Reset
|
|
293
|
-
accumulatedLabelInterval = 0;
|
|
294
|
-
}
|
|
295
|
-
}
|
|
296
|
-
if (autoLabelInterval === 0 && step > 1) {
|
|
297
|
-
return step;
|
|
298
|
-
}
|
|
299
|
-
return (autoLabelInterval + 1) * step - 1;
|
|
300
|
-
}
|
|
301
|
-
|
|
302
|
-
/**
|
|
303
|
-
* @param {Object} axis
|
|
304
|
-
* @param {Function} labelFormatter
|
|
305
|
-
* @return {Array.<string>}
|
|
306
|
-
*/
|
|
307
|
-
export function getFormattedLabels(axis, labelFormatter) {
|
|
308
|
-
var scale = axis.scale;
|
|
309
|
-
var labels = scale.getTicksLabels();
|
|
310
|
-
var ticks = scale.getTicks();
|
|
311
290
|
if (typeof labelFormatter === 'string') {
|
|
312
291
|
labelFormatter = (function (tpl) {
|
|
313
292
|
return function (val) {
|
|
@@ -315,18 +294,26 @@ export function getFormattedLabels(axis, labelFormatter) {
|
|
|
315
294
|
};
|
|
316
295
|
})(labelFormatter);
|
|
317
296
|
// Consider empty array
|
|
318
|
-
return
|
|
297
|
+
return labelFormatter;
|
|
319
298
|
}
|
|
320
299
|
else if (typeof labelFormatter === 'function') {
|
|
321
|
-
return
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
300
|
+
return function (tickValue, idx) {
|
|
301
|
+
// The original intention of `idx` is "the index of the tick in all ticks".
|
|
302
|
+
// But the previous implementation of category axis do not consider the
|
|
303
|
+
// `axisLabel.interval`, which cause that, for example, the `interval` is
|
|
304
|
+
// `1`, then the ticks "name5", "name7", "name9" are displayed, where the
|
|
305
|
+
// corresponding `idx` are `0`, `2`, `4`, but not `0`, `1`, `2`. So we keep
|
|
306
|
+
// the definition here for back compatibility.
|
|
307
|
+
if (categoryTickStart != null) {
|
|
308
|
+
idx = tickValue - categoryTickStart;
|
|
309
|
+
}
|
|
310
|
+
return labelFormatter(getAxisRawValue(axis, tickValue), idx);
|
|
311
|
+
};
|
|
327
312
|
}
|
|
328
313
|
else {
|
|
329
|
-
return
|
|
314
|
+
return function (tick) {
|
|
315
|
+
return axis.scale.getLabel(tick);
|
|
316
|
+
};
|
|
330
317
|
}
|
|
331
318
|
}
|
|
332
319
|
|
|
@@ -336,3 +323,65 @@ export function getAxisRawValue(axis, value) {
|
|
|
336
323
|
// in category axis.
|
|
337
324
|
return axis.type === 'category' ? axis.scale.getLabel(value) : value;
|
|
338
325
|
}
|
|
326
|
+
|
|
327
|
+
/**
|
|
328
|
+
* @param {module:echarts/coord/Axis} axis
|
|
329
|
+
* @return {module:zrender/core/BoundingRect} Be null/undefined if no labels.
|
|
330
|
+
*/
|
|
331
|
+
export function estimateLabelUnionRect(axis) {
|
|
332
|
+
var axisModel = axis.model;
|
|
333
|
+
var scale = axis.scale;
|
|
334
|
+
|
|
335
|
+
if (!axisModel.get('axisLabel.show') || scale.isBlank()) {
|
|
336
|
+
return;
|
|
337
|
+
}
|
|
338
|
+
|
|
339
|
+
var isCategory = axis.type === 'category';
|
|
340
|
+
|
|
341
|
+
var realNumberScaleTicks;
|
|
342
|
+
var tickCount;
|
|
343
|
+
var categoryScaleExtent = scale.getExtent();
|
|
344
|
+
|
|
345
|
+
// Optimize for large category data, avoid call `getTicks()`.
|
|
346
|
+
if (isCategory) {
|
|
347
|
+
tickCount = scale.count();
|
|
348
|
+
}
|
|
349
|
+
else {
|
|
350
|
+
realNumberScaleTicks = scale.getTicks();
|
|
351
|
+
tickCount = realNumberScaleTicks.length;
|
|
352
|
+
}
|
|
353
|
+
|
|
354
|
+
var axisLabelModel = axis.getLabelModel();
|
|
355
|
+
var labelFormatter = makeLabelFormatter(axis);
|
|
356
|
+
|
|
357
|
+
var rect;
|
|
358
|
+
var step = 1;
|
|
359
|
+
// Simple optimization for large amount of labels
|
|
360
|
+
if (tickCount > 40) {
|
|
361
|
+
step = Math.ceil(tickCount / 40);
|
|
362
|
+
}
|
|
363
|
+
for (var i = 0; i < tickCount; i += step) {
|
|
364
|
+
var tickValue = realNumberScaleTicks ? realNumberScaleTicks[i] : categoryScaleExtent[0] + i;
|
|
365
|
+
var label = labelFormatter(tickValue);
|
|
366
|
+
var unrotatedSingleRect = axisLabelModel.getTextRect(label);
|
|
367
|
+
var singleRect = rotateTextRect(unrotatedSingleRect, axisLabelModel.get('rotate') || 0);
|
|
368
|
+
|
|
369
|
+
rect ? rect.union(singleRect) : (rect = singleRect);
|
|
370
|
+
}
|
|
371
|
+
|
|
372
|
+
return rect;
|
|
373
|
+
}
|
|
374
|
+
|
|
375
|
+
function rotateTextRect(textRect, rotate) {
|
|
376
|
+
var rotateRadians = rotate * Math.PI / 180;
|
|
377
|
+
var boundingBox = textRect.plain();
|
|
378
|
+
var beforeWidth = boundingBox.width;
|
|
379
|
+
var beforeHeight = boundingBox.height;
|
|
380
|
+
var afterWidth = beforeWidth * Math.cos(rotateRadians) + beforeHeight * Math.sin(rotateRadians);
|
|
381
|
+
var afterHeight = beforeWidth * Math.sin(rotateRadians) + beforeHeight * Math.cos(rotateRadians);
|
|
382
|
+
var rotatedRect = new BoundingRect(boundingBox.x, boundingBox.y, afterWidth, afterHeight);
|
|
383
|
+
|
|
384
|
+
return rotatedRect;
|
|
385
|
+
}
|
|
386
|
+
|
|
387
|
+
|
|
@@ -1,19 +1,27 @@
|
|
|
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
|
+
*/
|
|
19
|
+
|
|
1
20
|
import * as zrUtil from 'zrender/src/core/util';
|
|
2
21
|
import * as axisHelper from './axisHelper';
|
|
3
22
|
|
|
4
23
|
export default {
|
|
5
24
|
|
|
6
|
-
/**
|
|
7
|
-
* Format labels
|
|
8
|
-
* @return {Array.<string>}
|
|
9
|
-
*/
|
|
10
|
-
getFormattedLabels: function () {
|
|
11
|
-
return axisHelper.getFormattedLabels(
|
|
12
|
-
this.axis,
|
|
13
|
-
this.get('axisLabel.formatter')
|
|
14
|
-
);
|
|
15
|
-
},
|
|
16
|
-
|
|
17
25
|
/**
|
|
18
26
|
* @param {boolean} origin
|
|
19
27
|
* @return {number|string} min value or 'dataMin' or null/undefined (means auto) or NaN
|
|
@@ -1,3 +1,22 @@
|
|
|
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
|
+
*/
|
|
19
|
+
|
|
1
20
|
import * as zrUtil from 'zrender/src/core/util';
|
|
2
21
|
import axisDefault from './axisDefault';
|
|
3
22
|
import ComponentModel from '../model/Component';
|
|
@@ -59,10 +78,14 @@ export default function (axisName, BaseAxisModelClass, axisTypeDefaulter, extraD
|
|
|
59
78
|
* Should not be called before all of 'getInitailData' finished.
|
|
60
79
|
* Because categories are collected during initializing data.
|
|
61
80
|
*/
|
|
62
|
-
getCategories: function () {
|
|
81
|
+
getCategories: function (rawData) {
|
|
82
|
+
var option = this.option;
|
|
63
83
|
// FIXME
|
|
64
84
|
// warning if called before all of 'getInitailData' finished.
|
|
65
|
-
if (
|
|
85
|
+
if (option.type === 'category') {
|
|
86
|
+
if (rawData) {
|
|
87
|
+
return option.data;
|
|
88
|
+
}
|
|
66
89
|
return this.__ordinalMeta.categories;
|
|
67
90
|
}
|
|
68
91
|
},
|