[Feature] Enable candlestick and bar chart rendering and zooming in a large amount of data (200K). Add option series-candlestick.progressiveChunkMode to enhance the effect when progressively rendering. See example candlestick-large.
[Feature] Support keeping-aspect for legend path. #7831
[Feature] Support node dragging for sankey chart. See example sankey-energy.
[Enhance] Category axis enhancement:
- Optimize the performance in a large amount of data (> 100K ~ 1M)
- Enhance the auto interval strategy.
- Enhance the animation when zooming and moving the data window of cartesian.
[Enhance] In line chart, enhance symbol display strategy when using category axis (see
[Enhance] Support that lift the brushed elements to the top (add option
[Enhance] Enhance sampling performance in progressive mode.
[Enhance] Enhance parallel performance in progressive mode.
[Enhance] Currently do not filter empty data item in data zoom, which makes line chart keeping broken. #7955
[Enhance] Support toolbox.feature merge.
yAxisextent did not update when some of the stacked bar series hide. #8003
[Fix] Currently we fetch name from
dateItem.namefirstly in list. #7966
[Fix] Typed array incorrect usage in WeChat app.
optionin axis data item did not work. #7954
markAreaonly displayed the last one. #7902
[Fix] Fixed the WeChat environment imprecise detection.
[Fix] Rounding error in clip symbol for line chart. #7913
[Fix] The default tooltip in candlestick only showed one item. #8149
[Fix] Bar chart start point was incorrect when multiple axes exist. #7412
markAreadid not display when using ordinal string. #7849
dataZoomthrew error when series was empty. #7666
[Fix] Add compatibility of data exceptions for sankey series. #2867
sunburstchart roll-up element was not removed when chart.setOption called. #8132
[Fix] SVG axisPointer text position bug. #7947
[Fix] Large lines chart render bug in large mode.
[Fix] The last day of a month was not displayed in calendar. #8045
[Fix] Data sampling of line chart caused incorrect extent when data had NaN.
[Fix] Data sampling of line chart worked abnormally when using
legendHoverLink: falsedid not work appropriately when multiple series had the same name. #8010
[Fix] Some of the graph hover style did not work.
[Fix] Fix axis extent calculation error when using stack.
- [^] Fixed bar layout problem. See #7831.
[+] ECharts has been able to work on WeChat Applet.
[^] Fixed shape clip when line chart is overflow cartesian area.
[^] Fixed that apendData caused series color changed if series name was not specified.
[^] Fixed the textStyle compatibility logic.
[^] Fixed that in some case the scollable legend (
legend.type: 'scroll') caused ghost. See #7502.
[+] Supported to render up to tens millions of data directly。ECharts4 has upgrade to stream architecture, and along with detailed optimization, it has supported to render incrementally loaded data and support progressive rendering.
- Ten millions of GIS data probably take up to about hundreds MB of space. In this case chunked data loading or WebStock is required for the purpose of display graphics as soon as possible and not blocking the browser while processing loaded data. The samples of incremental data loading can be checked here: scatterGL-gps and linesGL-ny, who use ECharts GL, and lines-ny, who only uses ECharts.
- Supported the human interactions in the big data scenario, where continuous interactions (e.g., roam in geo and cartesian) will not block the browser. Benefit from the using of GPU and avoiding of layout recalculation, ECharts GL provides smooth interactions, which has been demonstrated in the examples above. Without WebGL, the basic ECharts implements progressive rendering to support non-blocking interaction, which can be checked at the pan and zoom in lines-airline and scatter-large.
[+] Published ZRender SVG Rendering Engine as an alternative backend of ECharts besides the existing Canvas Rendering Engine. The choice of rendering engine usually depends on the scenario, for example, benefit from the low memory cost, SVG Rendering Engine is suitable for mobile device, or the case that many ECharts instances exists in a single page, while the Canvas Rendering Engine is suitable for big data rendering or when visual effects required. Canvas Rendering Engine is default rendering engine. See zrender.
[+] Published Sunburst Chart to visualize hierarchical data efficiently with excellent interactions. See [examples] and (excellent) and docs。
[+] Published dataset component to support data based configuration, visual encoding and data sharing in different series.
[+] Supported WAI-ARIA (the Accessible Rich Internet Applications Suite） to help the disabled people to access the data visualization in web.
[+] Since ECharts4, the options
itemStylehas been flattened. The original level of
normalis not needed any more, which make ECharts option more neat. As always, The previous option style in ECharts3 is still be compatible.
[+] Added two color themes, named 'light' and 'dark'. Apply them by
[+] Supported that auto collect legend names when legend.data is not specified.
[+] Supported that auto collect category names when
'category'and axis.data is not specified.
- [^] Fixed that
registerMapis null on
- [^] Fixed some CommonJS incorrect brought by injection.
- [^] Fixed backward compatibility problems brounght by
3.8.0, the content in
libdirectory is the same as the content in
srcdirectory (both are ES Module), which may not compatible with the old verisons of node and webpack. So rollback to commonJS format in
3.8.0, the source code in
srcconstains global variable
__DEV__(which prints dev helper info for echarts users). To get the declaration of the global variable, users should include
echarts/src/config.jsmanually or make some settings in
rollup(Check custom build tutorial please), which is not backward compatible. So we have removed
__DEV__from the codes in
3.8.2. If dev helper info is required, use codes in
echarts/src/echarts.js(the same as
3.8.0) does not include util methods, which used to be mounted on it. Now util methods are listed in
echarts/src/exportand mounted on
echarts/echarts*.js. But it is not backward compatibility, so we have rollbacked to mount them on
- The way of including
echarts/extension/dataTool, havs been rollbacked to the original approach before
3.8, where it must be included explicitly, and the namespace will be mounted on
- [^] Fixed the problem that SVG renderer throws error when encounter null value.
[+] Supported SVG Renderer (beta), enable developers to choose SVG or Canvas renderer based on their platfroms and functional requirments.
[+] Source code of echarts has been switched to ES Module, which enabled tree shaking of bundle and reduced size.
[^] Renamed some variables to avoid webpack special variable name. See #6788.
[^] Fixed that brush empty value caused error thrown. See #6892.
dist/echarts/echarts.simple.jsdo not includ utils, which used to be mounted on
dist/echarts/echarts.jskeep including them as before. And developers can custom build to include them.
dataTool: When using
dist/echarts/extension/dataTool.jsshould be manually included as before, but the namespace
dataToolwill not be mounted to
echarts. When using
echarts.dataToolis included automatically by default.
[+] Supported English version build (All default text is in English) in https://github.com/ecomfe/echarts/tree/master/dist. See #2321.
[^] Fixed area chart when all value is negative. See #6707.
[^] Made the meaning of
'center'consist in axis.nameLocation.
[^] Fixed that calender did not work because of DST (Day Saving Time). See #6543.
[^] Enhanced the "save as image" in IE. See #6279.
[^] Fixed cleaning for "motion blur". See #6577.
[^] Fixed the compatibility for
markPoint. See #6503.
[^] Add sub-pixel optimize to candlestick.
[^] Fixed that emphasis style was not applied when using graph.focusNodeAdjacency.
[+] Supported Rich Text, which has enabled style configuring to some text snippets or the entire text block, and supported using images in text, and supported alignment or rotation of text block or snippets.
textStyleexist in echarts option everywhere, for example, series-bar.label.normal.textStyle, xAxis.axisLabel.textStyle. It seems that some of them are to deep and verbose. So we removed the level of
textStyleto flatten them. That is, previous
axisLabel.textStyle.fontSizeis modified to
v3.7. Of course, the previous style is compatible all the same. Those options are flattened:
[+] Supported minInterval on time axis (that is, axis.type is
'time'), and supported maxInterval on value axis (that is axis.type is
'value'). So that it is enabled to controll the precision of label when data zooming.
[+] Supported that do not use coordinate system in
[^] Fixed that error thrown when using shadow in pie series in some version of IE. See #5777.
[^] Fixed that name can not be obtained in
nameMapwas used in map serise and there was no data in some areas. See #5633.
tooltiplocation incorrect after roamed in bmap extension. See #6211.
[^] Fixed null pointer exception of
axisPointer. See #6121.
[^] Fixed that error occured when height of heatmap was 0. See #6214.
[^] Fixed that when chilren number of group was not fixed, they could not be removed correctly in custom series.
[^] Fixed the error that calling
setOptioncalled. See #6281.
[^] Fixed that bar series displayed abnormal when viewport was narrow and bar series were overlapped (both set
barGap: '-100%'). See #6312.
[^] Fixed precision problems. See #6371.
[+] Supported specifying mouse cursor style by: series-line.cursor, series-bar.cursor, series-pie.cursor, series-scatter.cursor, series-effectScatter.cursor, series-graph.cursor, series-pictorialBar.cursor.
[^] Fixed only the last
markLinewas displayed when
series.namewas the same. See #5712.
- [^] Fixed that data sampling did not work.
- [^] Fixed the problem on ie11 when compiled by webpack. See zrender/#189.
[+] Supported encode, which enable user to specify which dimensions in data are mapped to which axis of coordinate system. Or which dimensions will be displayed in tooltip or label. [Break Change]: The default name of the third dimension in
cartesian2dis changed from
'z'is used in visualMap.dimension, please modify it to
[+] Supported dataZoom.moveOnMouseMove and dataZoom.zoomOnMouseWheel, which enables that triggering dataZoom only by mouse wheel while holding 'ctrl'/'alt'/'shift'. Moreover, supported preventDefaultMouseMove, See #5769.
[+] Supported using image in dataZoom.handleIcon setting.
[^] Fixed boundary problems on world map.
[^] Fixed problems caused by default properties on
Object. See #5576.
[^] Enhanced interaction of
[^] Fixed the problem when tooltip updating.
- [^] Fixed the
clipPathsupport for liquidfill.
- [^] Fixed the position when
labelis set as
- [^] Fixed the problem when transforming SVG PathData.
[^] Fixed the problem when both
heightare set. See #5440.
[^] Made the sorting of treemap stable when values were the same.
[^] Fixed that roam and brush conflicted when components overlaped.
[^] Enlarged area of parallel axis name when it rotates.
[^] Improved the performance of zrender up to
[+] Supported useUTC, which enables display
tooltipin local time or UTC. Related default setttings are modified:
tooltipdisplay local time by default, and
datarecognize time string as local time if timezone not specified. See the time part in series.data. Fixed the problem that when
'time'tick is determined by UTC and can not align with daytime. Fixed #5396 and #5393。
[+] Supported funnel.sort, which enables sorting funnel by index or customized function.
[^] Fixed float error of
axisTick. See #5041。
[^] Fixed that
axisTickdid not display when value was too small. See #5386.
[+] Published echarts statistics tools echarts-stat
[+] Enhanced axis pointer See examples: link, mobile (touch device) 1, mobile (touch device) 2, analysis, multiple Y axes, multiple X axes. Supported and enhanced #5040, #5039, #5102, #5262, #4905, #4921, #5091.
[+] Enhanced method
echarts.util.parseDate, which have supported parsing different formats of data expression to UTC time. See time in series.data
[^] Enhanced processing of geoJSON.
[^] Fixed function name of "disConnect". See #5208.
[^] Remove incorrect warning specifying
width,heightwhen initialize echart. See #4569.
Fixed the initialization of series-treemap.data is incorrect in one case.
Enhanced the behavior of brush on category axis.
[+] A specified geo coordinate system has been able to be used in map series. (In the past map series could only creat an inner exclusive geo coodinate system). Thus, map series can be used to control color of a geo component. Moreover, a geo coordinate system can be shared among map series and other series, like scatter series. See series-map.geoIndex.
[+] Added series-pie.animationType, which enables more animation effects.
[+] Callback function have been supported in animationDuration, which enables different animation duration of data items.
[+] category axis has been changed to show all categories by default, in spite of whether there is data in categories. In the past, categories in the end that has no data will not be displayed.
[+] When using singleAxis,
series.datahas supported one-dimension array, like
[11, 23, 44].
[+] Exposed throttle util method:
[+] When using visualMap to control a series, it has supported that some data items escape from the control by visualMap, but use its series visual settings (color, symbol, ...). See the paragraph of
Configure mappingin visualMap.
[^] Enhanced the effect of grid (cartesian) when on data displayed.
[^] Added parameter
dataIndexin showTip event.
[^] Fixed vulnerability about XSS in tooltip. See #4769.
[^] Fixed series-radar render error in a case that no data exists.
[+] Add graphic in option, enable graphic configuration in option. See examples: http://echarts.baidu.com/gallery/editor.html?c=line-y-category, http://echarts.baidu.com/gallery/editor.html?c=line-draggable and http://echarts.baidu.com/gallery/editor.html?c=map-province.
[+] Add tooltip.confine, which can confine tooltip within contianer of echarts instance. It helps a lot in small screen, or in the situation that outer dom is set to be
[^] Fix that erroneously forbiden default pan behavior in touch device. See #4393.
[^] Fix symbol mapping in visualMap.
[^] Fix tooltip may not show bug when first series have null data.
echarts.extendSeriesModelerror. See #4397.
【+】add in radar chart, see https://ecomfe.github.io/echarts-doc/public/en/option.html#series-radar
[^] fix the only one configuration for ''none'' bug in markLine symbol. See #2733
[^]optimization of vertically centered multiple yext lines.
[^] emphasis configuration item of label in data item as pie chart is normal value by dafualt.
[^] when introdcued on need, line chart, pie chart and scatter chart introduce grid component by dafault to avoid problems in#2758.
[^] fix floating point precision bug in dataZoom component. Fix #2757
[^] unselected legend chart is grey. See #2615
[^] fix dataZoom position failure bug in media query of 3.1.1. Fix #2710
[^] fix firefox's incapability of triggering wheel events bug in 3.1.1 中. Fix #2730
[^] IE8 optimization.
[^] change to webpack to build code.
【+】provide theme download,see details in http://echarts.baidu.com/download-theme.html
the bug that update data can not be shown insetOption` after emptying line chart data in v3.1.1.
[^] fix possiblity of reporting
id duplicateserror in
setOption(chart.getOption()). Fix #2635
[^] allow to customize toolbox toobar. See details in toolbox.feature
[^] scale optimization of
'time'type axis in large-span time range.
[^] fix no show of label formatter return to 0.Fix #2659
[^] fix markPoint label display error in charts with vertical axis as category axis.Fix #2641
[^] optimize dataZoom, fix dynamic data update problem in dataZoom chart. Fix #2667
[^] percentage is 0 rather than NaN when all pie chart data are zero. Fix #2690
[^] title alignment optimization.
[^] support display of tooltip when charts update. Fix #2478
[^] optimization of line animation feature.
[^] optimization of category axis feature of large data amount .
[^] fix error reporting bug of markPoint and markLine in IE8.
[^] fix error reporting bug under
'use strict'model. Fix #2643
【+】newly add npm channel to obtain echarts, see details in webpack + echarts tutorial
[^] fix abnormal indynamic markPoint and markLine . Fix #2522
[^] fix parameter error in axis interval callback. Fix #2470
[^] fix failure in customizing lineStyle of every edge in graph. Fix #2558
[^] saveAsImage supports IE9+ and FireFox in toolbox.
[^] support cylindrical corner configuration. #2550
[^] fix error in dataZoom location configuration item. Fix #2619
[^] fix possible
id duplicateerror when fix
setOptionfor too many times.Fix #2452
[^] candlestick and boxplot chart support markPoint and markLine.Fix #2566
[^] fix reset error in toolbox after use
setOptionin non-merge model.Fix #2596
[^] scatter chart and markPoint support configurating
emphasis. Fix #2596
[^] Treemap supports
[^] axis of time type support time data of string format.
[^] fix switch problem in Line and area charts. Fix #2625
[^] location optimization of multiple series of bar chart markPoint. Fix #2623
[^] fix error reporting in init when theme is string and has dataZoom component. Fix #2619
[^] legend and toolbox support setting height and width and wrap automatically through width and height.Fix #2621
[^] fix incapability to trigger mouse events on computers with touch screen like Surface and so on. Fix #2569
[^] fix highlight failture in scatter chart.
[^] optimize tooltip linkage. Fix #2445
[^] dataZoom of inside type support zoomLock.
[^] add error alert of non-exist map type.
[^] optimize legend switch animation of line chart.
[^] fix problem about Legends cannot be added dynamically. Fix #2457
[^] fix timeline's incapability to configutate show.
[^] fix 0 data shown as undefined in tooltip .Fix #2463
[^] fix incorrect display of dataZoom zoom graphic. Fix #2462
[^] fix the problem of axis
maxas string, PR #2481
[^] fix average value, maximum value and minimum vaule label and the incapability to show correct value of tooltip. Fix #2393
[^] fix drawing incorrectness when bar chart has bigger width than height, Fix #2343
[^] fix the function problem of legend
showconfiguration item. Fix #2371
[^] map type can choose data attribute.
[^] fix average mark and mark calculation errors, Fix #2367
[^] animation optimization when line chart change from
'-'no data to data.
[^] mouse wheel zoom direction change to ommonly used one.
[^] data area zoom tool in toolbar support specified axis, see detail intoolbox document
[^] fix no data error on timeline, scale change from
[0, 1]when data value axis has no data.
[^] fix drawing error of axis splitArea.
[^] fix multiple chart example linkage problem. Fix #2391
[^] fix the problem that color on legend cannot display correctly with pie chart color being callback function. Fix #2372
[^] fix mouse hover errors when pie chart data is 0.
[^] when all pie chart data are 0, secotrs changed to uniform distribution.
[^] fix errors in background seeting under IE 8.
[^] fix incorrect release event in tooltip component dispose.
- The new echarts