Please visit the official Apache ECharts Website at
Visit Official Website


[+]Add [-]Remove [^]Update [#]Fix

Apache EChartsTM


  • [Break Change] [Feature] [core] change to default ESM package. #19513 (100pah)
  • [Feature] [ssr] server-side rendering and client hydration. #18381 (Ovilia)
  • [Feature] [animation] support multi-level drill-down for universal transition. #17611 (tyn1998)
  • [Feature] [pie] add padAngle option. #19076 (linghaoSu)
  • [Feature] [pie] add endAngle for control pie range. #18820 (linghaoSu)
  • [Feature] [polar] allow setting angleAxis.endAngle. #19099 (yassilah)
  • [Feature] [sampler] add min-max sampler function. #19279 (snukhulov)
  • [Feature] [i18n] add Arabic(AR) translation. #19214 (OthmanAliModaes)
  • [Feature] [i18n] add Dutch(NL) translation. #19252 (tijmenamsing)
  • [Feature] [tooltip] add appendTo option to allow customizing tooltip container. #18436 (viking7982)
  • [Feature] [label] support align for min/max labels. #19228 (Ovilia)
  • [Feature] [pictorialBar] support clip for pictorialBar series. #19197 (Ovilia)
  • [Feature] [tooltip] add dataIndex to valueFormatter callback. #19123 (ChepteaCatalin)
  • [Fix] [toolbox] fix toolbox text can't apply the specified or global font style. #19170 (plainheart)
  • [Fix] [labelLine] fix labelLine default style when normal state not show but other state show. #18800 (linghaoSu)
  • [Fix] [labelLine] fix emphasis.labelLine is not working in pie chart. #19180 (shiersansi)
  • [Fix] [marker] fix markArea position when axis is with alignWithLabel. #19516 (Ovilia)
  • [Fix] [line] fix line may cross in time axis when animation is enabled. #18960 (plainheart)
  • [Fix] [scatter] fix edge scatter may be unexpectedly clipped due to tiny offset. #18867 (plainheart)
  • [Fix] [sunburst] label rotation flipping. #19176 (Ovilia)
  • [Fix] [aria] fix hard-coded series type name translation. #19239 (Ovilia)
  • [Feature] [matrix] allow rotating relative to a point different than the origin. #1034 (ChepteaCatalin)
  • [Fix] [graph] fix force layout iteration timer doesn't stop after disposing the chart. #19514 (plainheart)
  • [Fix] [tooltip] fix potential NPE when the parent node of the tooltip element doesn't exist. #19265 (plainheart)
  • [Fix] [visualMap] fix continuous visualMap mouseover event not register except first continuous visualMap. #19097 (linghaoSu)
  • [Fix] [clip] add an extra space to the clip-path width to prevent unexpected clip. #19056 (RexSkz)
  • [Fix] [dataset] fix multi typed array detection flaw. #19035 (linghaoSu)
  • [Fix] [core] fix potential NPE when reading default init options from global object in dev environment. #19217 (sunpm)
  • [Fix] [i18n] enhance default language fallback. #19107 (ultravires)
  • [Fix] [svg] fix assigning style attribute does not work when CSP is enforced. ecomfe/zrender#1030 (alxnddr)
  • [Fix] [svg] duplicate id for background rect with multiple charts. ecomfe/zrender#1002 (Ovilia)
  • [Fix] [node] make nodejs detection resilient. ecomfe/zrender#1036 (Uzlopak)
  • [Fix] [type] make ellipsis & options of the function truncateText optional. ecomfe/zrender#1047 (plainheart)
  • [Fix] [type] add missing value type string for barMinWidth and barMaxWidth of the bar series. #19424 (zhaxnb)
  • [Feature] [type] export EChartsInitOpts and some Payload types for echarts/core. #19103 (dalenguyen)
  • [Fix] [type] allow nullable value for OptionDataValue. #19111 (avin-kavish)
  • [Fix] [type] add undefined to the return type of graphic.clipRectByRect function. #18950 (benlongo)
  • [Fix] [type] remove duplicate extends at GraphNodeItemOption. #18901 (nenoNaninu)
  • [Refactor] [util] import liftColor function from zrender. #19526 (plainheart)


  • [Feature] [axisPointer] Add triggerEmphasis option to disable emphasis. #18524 (juliepagano)
  • [Feature] [sankey] Support trajectory for emphasis state. #17451 (ElayGelbart)
  • [Fix] [sankey] Fix sankey line color 'target'/'source'/'gradient' doesn't work in non-normal state. #18834 (linghaoSu)
  • [Fix] [sankey] Fix value is undefined in label/edgeLabel formatter. #18733 (plainheart)
  • [Fix] [sunburst] Fix sunburst label may rotate when labelLayout.hideOverlap is enabled. #18808 (linghaoSu)
  • [Fix] [graph] Fix graph chart can't be hidden by legend due to edgeLabel NPE. #18624 (plainheart)
  • [Fix] [state] Fix focus self doesn't work when item emphasis by other component. #18511 (linghaoSu)
  • [Fix] [axis] Fix last tick doesn't show for single data. #18469 (Ovilia)
  • [Fix] [pie] Fix incorrect response area of pie piece when selectedOffset is enabled and animation is disabled. #1011 (plainheart)
  • [Fix] [custom] Fix user-defined info property was not available in the event handler. #18400 (sobolewsk)
  • [Fix] [legend] Inherit legend rich text color from legend's options. #18260 (ChepteaCatalin)
  • [Fix] [label] Fix ellipsis was not working. #18525 (Ovilia)
  • [Fix] [label] Fix endLabel fails with null data. #18841 (Ovilia)
  • [Fix] [util] Fix {yy} pattern has no zero padding in time format util. #18535 (linghaoSu)
  • [Fix] [api] Only deprecate disConnect but not disconnect. #18758 (Justineo)
  • [Fix] [i18n] Fix the abbr of "March" for the DE language ("Mar" -> "Mrz"). #18387 (Stebeber)
  • [Fix] [type] Fix wrong type for data item value of the parallel series. #18425 (ManishDait)
  • [Fix] [type] Allow passing null to the parameters of init function. #18575 (zhuscat)


  • [Feature] [bar] Support borderRadius for polar bar and its background. #17995 (Ovilia)
  • [Feature] [i18n] Add Turkish(tr_TR) translation. #18012 (partitect)
  • [Feature] [i18n] Add Vietnamese(vi_VN) translation. #18279 (nghiepdev)
  • [Fix] [bar] Polar bar animation should start from r0 rather than 0. #17997 (Ovilia)
  • [Fix] [marker] Fix abnormal range of markArea in bar series. #18229 (Ovilia)
  • [Fix] [line] Fix labels don't show in line series when ssr is enabled. #18032 (plainheart)
  • [Fix] [svg] Fix defined CSS doesn't work due to unexpected encoding for style tag. #982 (plainheart)
  • [Fix] [sunburst] Fix labels might upside down in radial layout. #18240 (susiwen8)
  • [Fix] [dataset] Fix chart can't render when using object array and object item contains a property named length. #18276 (susiwen8)
  • [Fix] [tooltip] Fix tooltip still disappears after leaving the tooltip even if alwaysShowContent was enabled. #18221 (jianghaoran116)
  • [Fix] [text] Charsets like Cyrillic should break word the same as Latin. #973 (Ovilia)
  • [Fix] [type] Add missing treePathInfo property into sunburst formatter callback and add missing data option into SunburstSeriesOption. #18310 (plainheart)
  • [Fix] [type] Add missing callback function type for the symbol option of tree series. #18070 (ChepteaCatalin)


  • [Feature] [i18n] Add Hungarian(hu_HU) translation. #17978 (ifjkovacsik)
  • [Feature] [svg] Support gradients and patterns for background color in SVG renderer. #959 (plainheart)
  • [Feature] [candlestick] Provide borderColorDoji option for custom doji color. #17717 (Ovilia)
  • [Feature] [sankey] Support edgeLabel. #16767 (susiwen8)
  • [Feature] [graph] Make graph node draggable in none and circular layout. #15428 (kongmoumou)
  • [Feature] [util] Use native Map if available. #965 (JonasBa)
  • [Feature] [type] Export ECElementEvent for TypeScript. #17892 (keita-determined)
  • [Fix] [i18n] Rename language code of Ukrainian to UK. #17812 (striezel)
  • [Fix] [pie] Fix percent isn't updated after the legend is changed. #17734 (plainheart)
  • [Fix] [pie] Fix potential null access to labelLine when minShowLabelRadian is set. #17715 (plainheart)
  • [Fix] [pie] Fix center may not be converted to correct point when coordinate system is specified. #17920 (plainheart)
  • [Fix] [heatmap] Fix heatmap label may overlap when dataZoom is enabled. #17876 (plainheart)
  • [Fix] [animation] Fix incorrect dataGroupId for old data items in universalTransition. #17559 (tyn1998)
  • [Fix] [dataZoom] Fallback to extent start/end when value or percent is invalid. #17934 (plainheart)
  • [Fix] [timeline] Fix chart can't work when axis line is not shown. #17647 (plainheart)
  • [Fix] [tooltip] Fix tooltip arrow may cover the content when border is wide. #17875 (plainheart)
  • [Fix] [marker] Fix markArea doesn't show when using x/y pixel but coord is not defined. #17217 (jiawulin001)
  • [Fix] [marker] markArea of bar series now covers whole specified categories. #17098 (jiawulin001)
  • [Fix] [legend] Fix legend inverse doesn't work if series data have the same name. #17510 (caiwukun)
  • [Fix] [gauge] Render gauge sectors in the order of the "clockwise" option. #17691 (ZeekoZhu)
  • [Fix] [ssr] Fix wrong expression for extracting the font size. #968 (plainheart)
  • [Fix] [svg] Fix shape may disappear after morphing animation is finished in SVG renderer. (plainheart)
  • [Fix] [type] Fix EChartsInitOpts type error about height and width. #17727 (MainHou)
  • [Fix] [type] Add overflow property to AxisLabelBaseOption interface. #17808 (breizh24)
  • [Fix] [type] Add string & number type into the center option of pie series. #17917 (plainheart)
  • [Fix] [type] Add missing function callback into lineStyle.color for lines series. #17780 (plainheart)


  • [Feature] Support intelligent pointer snapping. #17102 (Ovilia)
  • [Feature] [pie] Support specifying coordinate system for pie series. #17132 (plainheart)
  • [Feature] [gauge] Support rotation for axisLabel. #16985 (MeetzhDing)
  • [Feature] [lines] Support going back for effect animation. #16943 (wangguisong)
  • [Feature] [treemap] Support emphasis state for breadcrumb. #17242 (susiwen8)
  • [Feature] [i18n] Add Ukrainian(uk-UA) translation. #17244 (Amice13)
  • [Feature] [type] Export type ElementEvent. #15291 (Map1en)
  • [Fix] [pie] Fix labelLine may not be hidden when minShowLabelRadian is specified. #17412 (plainheart)
  • [Fix] [pie] Optimize performance of pie series. #17275 (wind108369)
  • [Fix] [line] Set default z/zlevel for temporary symbol to avoid warnings. #17247 (plainheart)
  • [Fix] [bar-race] Fix lines glitch with sub-pixel optimization in animations. #17426 (Ovilia)
  • [Fix] [axis] Fix inverse option does not work for singleAxis. #17411 (wind108369)
  • [Fix] [axis] Fix axis symbol is not reversed when axis is reversed. #17329 (plainheart)
  • [Fix] [state] [emphasis] Fix emphasis.scale can't be reset and specified values may not be respected. #17442 (plainheart)
  • [Fix] [state] [emphasis] Add missing type number to emphasis.scale for scatter/line/graph series. #17390 (plainheart)
  • [Fix] [svg] Encode HTML special characters when generating SVG string. #17406 (plainheart)
  • [Fix] [visualMap] Fix the indicator doesn't show when hovering on map label. #17346 (plainheart)
  • [Fix] [custom] Fix elements may not be removed after updates. #17349. (Ovilia)
  • [Fix] [custom] Fix custom elements probably can't be removed when applying leave transition. #17308 (plainheart)
  • [Fix] [theme] Fix text style of tooltip in macarons theme. #17551 (mousne)
  • [Fix] [theme] Fix abandoned normal level in theme files. #17482 (Liangism)
  • [Fix] [axis] [log] Fix log axis breaks a single data whose log value is negative. #17322 (Ovilia)
  • [Fix] [dataZoom] Fix errors when using sliderZoom in candlestick series with dataset. #17237 (jiawulin001)
  • [Fix] [sunburst] Fix wrong log for deprecated action. #17587 (gitforhlp)
  • [Fix] [type] Ensure compatibility with TypeScript 4.8. #17582 (AviVahl)
  • [Fix] [type] Add missing value type false for nodeClick option for SunburstSeriesOption and TreemapSeriesOption. #17218 (dmzc)
  • [Fix] [typo] Fix a file name typo. src/animation/basicTrasition.tssrc/animation/basicTransition.ts #17193 (kxxoling)


  • [Feature] [bar] add new stacking strategies. #17086 (villebro)
  • [Feature] [tree] tree focus supports relative. #17009 (susiwen8)
  • [Feature] [visualMap] selectedMode supports boolean. #16972 (susiwen8)
  • [Feature] [graph] [tree] [map] series center of view supports string. #16904 (susiwen8)
  • [Fix] [line] fix polygon not being updated when switching from line chart to step line chart with notMerge: true. #16772 (jiawulin001)
  • [Fix] [tree] fix radial tree with a single root not working. #16950 (fuchunhui)
  • [Fix] [tree] fix unexpected expanded children when edgeShape is polyline. #16548 (linghaoSu)
  • [Fix] [graph] fix user cursor setting not being respected. #16867 (susiwen8)
  • [Fix] [graph] fix autoCurveness type. #16897 (kongmoumou)
  • [Fix] [radar] fix names being - in tooltip when is false. #15985 (Ovilia)
  • [Fix] [radar] fix regression bug brought by branch merging. #16764 (plainheart)
  • [Fix] [geo] fix linesGL series not render. #17150 (plainheart)
  • [Fix] [pictorialBar] improve PictorialBarSeriesOption type definition. #17155 (dmzc)
  • [Fix] [tooltip] fix content changes with axis extent when 'triggerOn' set to 'click'. #16939 (jiawulin001)
  • [Fix] [dataZoom] fix borderColor may not work in some bundle environments. #16854 (Ling310)
  • [Fix] [markLine] fix markLine label showing wrong tooltip content. #16971 (plainheart)
  • [Fix] [markArea] fix markArea may be filtered unexpectedly. #16861 (jiawulin001)
  • [Fix] [axis] fix {yy} not being padded to 2 digits. #17064 (Fritzbox2000)
  • [Fix] [axis] fix quarters splitting the year into 4 quarters not 3. #17073 (Fritzbox2000)
  • [Fix] [axis] fix custom series not working on singleAxis. #16850 (benlongo)
  • [Fix] [graphic] fix some options may be unexpectedly reset on update. #17007 (plainheart)
  • [Fix] [decal] fix pattern not changing after set legend.itemStyle.decal to be 'none'. #16922 (jiawulin001)
  • [Fix] [radialGradient] add safe guarding for radial gradient. #898. #919 (lefex) (Ovilia)
  • [Fix] [types] fix typo in DataStore. #16824 (XXXMrG)


  • [Feature] [line] allow areaStyle.origin to take number as input. #16719 (jiawulin001)
  • [Feature] [scatter] scale support number. #16688 (susiwen8)
  • [Feature] [tree] add collapsed to tree click event parameters. #16660 (susiwen8)
  • [Fix] [marker] fix marker state doesn't restore after blurring. #16670 (susiwen8)
  • [Fix] [gauge] fix progress bar may become unexpectedly circle when value is 0 and progress.roundCap is enabled. #16653 (plainheart)
  • [Fix] [polar] fix chart throws errors when splitLine is enabled in radius axis. #16736 (plainheart)
  • [Fix] [labelLine] fix labelLine can't be hidden. #16542 (susiwen8)
  • [Fix] [dataZoom] fix dataZoom was unexpectedly displayed at the top when data contains null values. #16730 (yuanjiangxia)
  • [Fix] [heatmap] fix unexpected gaps in heatmap charts. #16714 (plainheart)
  • [Fix] [toolbox] fix toolbox title may be outside of the chart. #16704 (plainheart)
  • [Fix] [toolbox] toolbox doesn't enter emphasis state when hovering on the icon. #16702 (plainheart)
  • [Fix] [toolbox] [dataview] fix unexpected scrollbar and outline when using default textview. #16691 (plainheart)
  • [Fix] [visualMap] fix some text style can't work on visualMap. #16679 (fuchunhui)
  • [Fix] [line] fix line graph renders null value incorrectly. #16672 (WindyZ99)
  • [Fix] [sankey] fallback to black if color is illegal. #16614 (susiwen8)
  • [Fix] [types] fix wrong jpg instead of jpeg image export types. #16747 (yassilah)


  • [Feature] [i18n] Add korean translation #16582 (hijae)
  • [Feature] [heatmap] Add borderRadius option to heatmap. #16493 (Rain120)
  • [Fix] [lines] Fix potential memory leak in the effect line when setOption with notMerge. #16525 (pissang)
  • [Fix] [line] Fix stepped line charts with empty data. #16435 (Gyyi)
  • [Fix] [line] Fix empty data in lttb sampling. #16431 (fuchunhui)
  • [Fix] [tooltip] Changing default time formatter to be in 24-hour format. #16421 (Comee)
  • [Fix] [graphic] Fix cursor doesn't work in graphic component. #16513 (plainheart)
  • [Fix] [pictorialBar] Fix pictorialBar data with value of 0. #16469 (fuchunhui)
  • [Fix] [svg] Fix render bug when using decal. #889 (pissang)
  • [Fix] [tooltip] Fix legend.tooltip.enterable and tooltip.enterable. #16463 (fuchunhui)
  • [Feature] [event] Provide label index in axis events #16187 (Ovilia)
  • [Fix] [sunburst] Centering labels of sunburst at the first level. #16425 (FrankChencc)
  • [Fix] [tooltip] Hide tooltip when data view is open. #16321 (plainheart)
  • [Fix] Fix sampling with zero width charts. #16372 (Cuiyansong)


  • [Feature] Introduce new keyframe based animation to graphic component and custom series. #16225 (pissang)
  • [Feature] Support transition animation in the graphic component. #16225 (pissang)
  • [Feature] [svg] Refactor SVG renderer. Improved SVG rendering performance by 2x ~ 10x. #836 (pissang)
  • [Feature] [svg] Add SVG server-side rendering with zero dependencies. #15880 (pissang)
  • [Feature] [axis] Add alignTicks for mutliple axis alignment. #16300 (pissang)
  • [Feature] [state] Add select.disabled to disable select state. #15534 (susiwen8)
  • [Feature] [state] Add selectedMode: 'series' to select the whole series. #15534 (susiwen8)
  • [Feature] [state] Add emphasis.disabled to disable emphasis state. #16368 (pissang)
  • [Feature] [map] Introduce projection to map series and geo component. #16364 (pissang)
  • [Feature] [geo] Support LineString and MultiLineString in GeoJSON source. #16364 (pissang)
  • [Feature] [tooltip] Add valueFormatter in the tooltip. #16332 (pissang)
  • [Feature] [pie] [sunburst] Supports configuring radius on the four corners of sector. #16298 (plainheart)
  • [Feature] [i18n] Add Italian translation. #16211 (andrearoota)
  • [Feature] [i18n] Add Romanian translation. #15990 (szilard-dobai)
  • [Fix] [graph] Fix error when symbol is none. #16394 (pissang)
  • [Fix] [dataset] Fix sourceHeader: false may not work. #16376 (lefex)
  • [Fix] [tooltip] Fix the page will be frozen if multiple tooltips are provided. #16347 (plainheart)
  • [Fix] [bar] Optimizing bar layout in the large mode. Fix stacked bar when large is enabled. #16338 (pissang)
  • [Fix] [bar] Fix stacked bar on the log axis. #16338 (pissang)
  • [Fix] [pie] Optimize label layout and text wrapping #16034 (Ovilia)
  • [Fix] [polar] Fix edge symbols are clipped unexpectedly for the tiny offset. #16329 (plainheart)
  • [Fix] [map] Fix some labels won't be shown when legend is enabled and no label formatter specified. #16322 (plainheart)
  • [Fix] [pie] Fix tangential rotation with startAngle. #16307 (Ovilia)
  • [Fix] [graph] Support using dataType param to highlight edge by dispatchAction. #16243 (Dingzhaocheng)
  • [Fix] [pie] Fix label of first sector may not shown. #16229 (116050423)
  • [Fix] [tooltip] Fix tooltip lagging when transition is disabled. #16212 (plainheart)
  • [Fix] [axis] Fix axis label width not affect the grid layout. #16203 (Ovilia)
  • [Fix] [lines] fix NPE issue when lines series has no coordinate system. #16184 (plainheart)
  • [Fix] [line] Fix using endLabel may throw excpetion when series is totally filtered. #16339 (pissang)
  • [Fix] [dataZoom] Optimize shadow render performance when dragging on the chart. #16070 (pissang)
  • [Fix] [line] Fix bezier points calculated wrong when monotone smooth is used. #16069 (pissang)
  • [Fix] [line] Fix tooltip not shown when all values are null #16001 (kongmoumou)
  • [Fix] [axis] Fix scale on the log axis. #15998 (susiwen8)
  • [Fix] [radar] Fix tooltip displayed wrong when is false. #15985 (Ovilia)
  • [Fix] [progressive] Optimize progressive rendering performance #15870 (pissang)
  • [Fix] [svg] Fix rect path can't be closed bug.
  • [Fix] [svg] Normalize color when using SVG renderer to support more cases. #767 (plainheart)
  • [Fix] [pictorialBar] Fixed incorrectly display when data is 0 and border is used. #12793 (yanheSu)
  • [Fix] [map] Optimize default label position calculation. Use centroid of the largest area. #16364 (pissang)
  • [Fix] [animation] Fix opacity may be wrong when set divideShape: 'clone' in the universal transition #16250 (pissang)
  • [Fix] [bar] Optimize morphing on the bar with rounded cap. #16246 (pissang)
  • Add .js extension in the import statement #16276 (pissang)


  • [Feature] [line] Add triggerLineEvent. Support trigger mouse event on polyline and polygon area. #15847 (susiwen8)
  • [Feature] [i18n] Add Russian translation. #15867 (finkrer)
  • [Feature] [i18n] Add Polish translation. #15891 (CaelumNigre)
  • [Fix] [line] fix smoothed line with duplicate points failed to draw #15942 (pissang)
  • [Fix] [line] Fix visual gradient is wrong when coords are between two stops. #15938 (pissang)
  • [Fix] [calendar] Fix i18n doesn't work in the calendar coordinate system #15935 (plainheart)
  • [Fix] [bar] Fix label value animation is not accurate in the bar racing case. #15916 (Ovilia)
  • [Fix] [axis] fix charts render abnormally when yAxis.max is set to be a value less than the min value of the series data. #15878 (plainheart)
  • [Fix] [tooltip] Fix boolean value display. #15869 (Ovilia)
  • [Fix] [types] Add undefined to the return type of getInstanceByDom and getInstanceById #15913 (plainheart)


  • [Feature] [i18n] Adding pt-BR(Portuguese, Brazil) lang. #15722 (williamorim)
  • [Feature] [axis] add axisLabel.hideOverlap. #15583 (svedova) #15712 (pissang)
  • [Feature] [sunburst] Add radius in levels #15706 (Ovilia)
  • [Fix] [line] Fix animation may be wrong when data changes lot. #15731 (pissang)
  • [Fix] [legend] Fix icon not keep aspect. #15720 (pissang)
  • [Fix] [line] Optimize line gradient leaks on the edge when the range is large. #15711 (pissang)
  • [Fix] [marker] Fix markLine, markPoint and markArea may not work on time axis if use string time data #15686 (100pah)
  • [Fix] [tooltip] Fix tooltip may be lagging and shaking in Chrome(with the devtools open) and Firefox. #15683 (plainheart)
  • [Fix] [svg] Fix svg mouse event doesn't work normally in Firefox when using shadow. #812 (plainheart)
  • [Fix] [line] Not stop existing expand animation when update. #15599 (Ovilia)
  • [Fix] [geo] Fix href attribute not work in SVG source. #803 (plainheart)
  • [Fix] [polar] Fix wrong sector clockwise when previous data is 0. #15589 (Ovilia)
  • [Fix] [type] Improve option types. #15696 (pissang)
  • [Fix] Fix prototype pollution. GHSA-fhv8-fx5f-7fxf



Break Changes

All Changes

  • [Feature] Introduce universal transition to all series. #15208 (pissang)
  • [Feature] [color] Add series.colorBy #13788 (Ovilia)
  • [Feature] [label] Support sector label positions for polar bars #774 (Ovilia)
  • [Feature] [effectScatter] Add rippleEffect.number #15335 (plainheart)
  • [Feature] [gauge] Add pointer.showAbove to allow pointer show above the title and details. #15337 (AmosChenYQ) #15326 (susiwen8)
  • [Feature] [emphasis] emphasis.color can use 'inherit' to be not higlighted. #15172 (Foreverwzh)
  • [Feature] [pie] Display an empty cicle when pie don't have value. #15095 (ssthouse)
  • [Fix] [dataset] Fix dataset performance drops signifcantly on high dimensions data. #15355 (pissang)
  • [Fix] [axis] Optimize format in time axis #15465 (leavest) #15434 (zhiyuc123)
  • [Fix] [custom] Optimize text font compatibility with legacy code. #15454 (AmosChenYQ)
  • [Fix] [memory] Optimize memory when chart instance is still hold after dispose #15417 (pissang)
  • [Fix] [line] Optimize color gradient when having infinite value. #15416 (plainheart)
  • [Fix] [date] Optimize date parsing #15410 (quillblue)
  • [Fix] [line] Fix render bug. #788 (pissang)
  • [Fix] [candlestick] Fix style lost after update #15368 (pissang)
  • [Fix] [sankey] Gradient should follow orient. #15363 (susiwen8)
  • [Fix] [tooltip] Fix tooltip formatter doesn't renders HTMLElement if tooltip position is specified. #15313 (plainheart)
  • [Fix] [tooltip] Tooltip should clear content when formatter returns null. #15313 (plainheart)
  • [Fix] [bar] Set label to be inside when position is 'middle' #15309 (Ovilia)
  • [Fix] [marker] Fix 'clampData' undefined error in 'getMarkerPosition' #15297 (AmosChenYQ)
  • [Fix] [treemap] Fix old nodes not removed when disabled animation #15283 (villebro)
  • [Fix] [tree] Fix edge may not removed when update data #15251 (ssthouse)
  • [Fix] [pie] [sunburst] Fix borderRadius can't be reset in pie series and sunburst series when setting it to null or undefined #15243 (plainheart)
  • [Fix] [canvas] Fix unexpected none or null fillStyle may be warned in firefox #784 (plainheart)
  • [Fix] [highlight] Hightlight multiple series through chart.dispatchAction not work as expected #15207 (ssthouse)
  • [Fix] [sankey] Fix drag bug when using series.nodes to represent data. #15199 (DuLinRain)
  • [Fix] [svg] Optimize exported SVG compatibility for Powerpoint. #767 (plainheart)
  • [Fix] [legend] Fix text.lineHeight not work #773 (ssthouse)
  • [Fix] [pie] Change the default itemStyle.borderJoin to round. #15145 (plainheart)
  • [Fix] [radar] Change the default lineStyle.join to round. #15381 (Ovilia)
  • [Fix] [treemap] Fix set to false will throw error #15141 (susiwen8)
  • [Fix] [pictorialBar] Fix pictorialBar zero value label display. #15132 (ssthouse)
  • [Fix] [lines] Fix lines can't be cleared by chart.clear() #15088 (plainheart)
  • [Fix] [endLabel] Fix endLabel not display when only set to true. #15072 (Ovilia)
  • [Fix] [svg] Fix rect path not closed. #767 (plainheart)
  • [Fix] [treemap] Add treeAncestors in callback params #14976 (pissang)
  • [Fix] [tree] Fix error when running setOption twice with different data #14930 (Map1en)
  • [Fix] [radar] Fix radar symbol border is scaled #15396 (pissang)
  • [Fix] [marker] Fix symbolOffset and symbolKeepAspect doesn't work in markPoint. #14737 (plainheart)
  • [Fix] [gauge] Fix data index and series index is missing. #14688 (yufeng04)
  • [Fix] [tooltip] Tooltip arrow will follow borderWidth. #14393 (g7i)
  • [Fix] [geo] Fix geo switch from hidden to show fail. #15361 (pissang)
  • [Fix] [type] Optimize type of renderItem in custom series.
  • [Fix] [type] Optimize option type of echarts.init. #15487 (John60676)
  • [Fix] [type] There is no polarIndex when coordinate of series is polar #15281 (Map1en)
  • [Fix] [type] Optimize type when using SVG source in geo component. #15263 (leosxie)
  • [Fix] [type] Fix wrong type for pie data and map data. #15144 (plainheart)


  • [Feature] [geo/map] Support skew in transform and svg parser. #755 (pissang)
  • [Feature] [tree] Add treeAncestors property in the params of tooltip callback . #14957 (stephenLYZ)
  • [Feature] [i18n] Add Slovenian translation. #14758 (dkrat7)
  • [Fix] [canvas] Fix extra call. #765 (pissang)
  • [Fix] [path] Fix small subpath may be ignored when optimizing small line segments. #760 (pissang)
  • [Fix] [tooltip] When component tooltip.formatter is not specified, use a specific default formatter, rather than use global tooltip.formatter as default. Fix #14939. #14972 (100pah)
  • [Fix] [resize] Error thrown when resize is called after setOption called with lazyUpdate: true. Fix #14846, Fix #11395. #14934 (100pah)
  • [Fix] [treemap] Error when running setOption twice with diff data. #14930 (Map1en)
  • [Fix] [tree] Error when running setOption twice with diff data. #14905 (Map1en)
  • [Fix] [option] Check the missing component before merge theme. #14966 (pissang)
  • [Fix] [text] Fix gradient text background cause rendering error. #756 (pissang)
  • [Fix] [clip] Line chart will throw an error when clip is set as false. #14813 (plainheart)
  • [Fix] [legend] Remove unexpected syntax to ensure better compatibility. #14810 (plainheart)
  • [Fix] [dataZoom] Type fix for startValue and endValue. Close #14412 #14775 (dileepyelleti)
  • [Fix] [label] Ensure the label of the temporary symbol is in front of line and area polygon. #14993 (plainheart)
  • [Fix] [stack] Fix number getPrecisionSafe incorrect on scientific notation like 3.45e-1. Stack sum eliminate floating arithmetic problem. #15015 (100pah)
  • [Fix] [dataZoom] Should no dataZoom filtering when toolbox.feature.dataZoom not declared. #15015 (100pah)
  • [Fix] [line] Avoid the infinite value in linearMap util. #14602 (plainheart)
  • [Fix] [timeline] Trigger timelineplaychange event when play to the end. #14620 (Ovilia)
  • [Fix] [custom] Fix progressive rendering in custom series. #14920 (pissang)
  • [Fix] [brush] Clamp range when brush. #14569 (susiwen8)
  • [Fix] [label] Fix labels are not on the top bug. #14542 (plainheart)
  • [Fix] [toolbox] The show option of customized toolbox button does not work. #14408 (plainheart)
  • [Fix] [type] Changed LineEndLabelOption.valueAnimation to be optional. #14806 (Bilge)
  • [Fix] [type] Export cbs and their parameter types. #14871 (dougalg)
  • [Fix] [type] Fix position callback return type. Fix #15031. (congjiujiu)
  • [Fix] [type] Remove non-required properties from PatternObject and fix some type issues. #759. (plainheart)


  • [Fix] [geo] Fix tooltip don't show on geo component. #14767 (pissang)
  • [Fix] [tooltip] Fix the position of tooltip may be incorrect when appendToBody. #14713 (plainheart)
  • [Fix] [map] Fix tooltip may have error on map series. #14704 (plainheart)
  • [Fix] [pie] Fix labelLine may still appear on emphasis when changed from outside to inside. #14702 (villebro)
  • [Fix] [type] Fix type error on earlier TypeScript versions. Close #14716 #14739
  • [Fix] [type] symbolOffset incorrectly marked as mandatory. #14693 (villebro)


  • [Feature] [geo] [map] geo component and map series support SVG format source. #14571 (100pah)
  • [Feature] [legend] Default legend design is more intuitive. #14497 (Ovilia)
  • [Feature] [i18n] Add czech translation #14468 (JiriBalcar)
  • [Feature] [animation] Add animaiton configuration in resize #14553 (pissang)
  • [Feature] [effectScatter] Add clip for effectScatter #14574 (susiwen8)
  • [Fix] [debug] Optimize error log when components or series are missing #14568 (pissang)
  • [Fix] [tooltip] Improve the performance of tooltip. #14246 (plainheart)
  • [Fix] [label] Fix labels may have wrong z and not in the front. #14542 (plainheart) #14417 (susiwen8)
  • [Fix] [pattern] Fix CanvasPatttern#setTransform may not exists error. #738 (pissang)
  • [Fix] [tooltip] Fix formatter wrong when using time axis #14471 (Ovilia)
  • [Fix] [symbol] Make symbolOffset work on all the components using symbols. #14375 (plainheart)
  • [Fix] [markArea] Fix markArea background color disappeared bug. Close #13647 #14343 (Nick22nd)
  • [Fix] [markLine] Fix string type data may not work in markLine. Close #14300 #14314 (Ovilia)
  • [Fix] [select] Fix null access bug when checking selected status. Close #14293 #14413 (leosxie)
  • [Fix] [dataZoom] Fix width and height not work in dataZoom labels. #14388 (wf123537200)
  • [Fix] [animation] Fix animation between NaN value may have problem. #730 (Nick22nd)
  • [Fix] [visualMap] Use itemSymbol as default symbol type. Close #5719 #14243 (Ovilia)
  • [Fix] [loading] Fix text of loading is not in the front and covered by others. #14191 (yufeng04)
  • [Fix] [custom] Fix series label on custom series not working properly. Close #14092 #14254 (Nick22nd)
  • [Fix] [map] Fix map labels won't update its position when labelLayout is used. #14578 (pissang)
  • [Fix] [calendar] Fix day label drifting. Close #11508 #13902 (Nick22nd)
  • [Fix] [lines] Fix line animation may have extra points and being messed up. #13638 (vially)
  • [Fix] [type] Exporting more necessary types for generating declarations in the extensions #14289 (pissang)
  • [Fix] [type] Add LegendComponentOption.icon property type #14263 (thesiti92)
  • [Fix] Remove legacy usage of transform #14357 (pissang)


  • [Fix] [dataZoom] Fix icon with 'image://' won't display #14056 (susiwen8)
  • [Fix] [pie] [gauge] Fix zero value sector may be incorrectly drawn as a circle. #699 (plainheart)
  • [Fix] [pie] Fix hiding wrong labels in pie. #14108 (Nick22nd)
  • [Fix] [map] Add geo as dependency in map. #14124 (pissang)
  • [Fix] [pie] Fix labelLine will not been hidden when label is switched from outside to inside #14017 (susiwen8)
  • [Fix] [toolbox] Fix yAxisIndex: false in toolbox dataZoom may have error. #14175 (100pah)
  • [Fix] [toolbox] Fix image download may have error when not using default pixelRatio. #706 (plainheart)
  • [Fix] [toolbox] Use current devicePixelRatio by default for exporting crisp and clear images by default. #14002 (plainheart)
  • [Fix] [line] endLabel color support 'inherit' #14000 (susiwen8)
  • [Fix] [svg] fix opacity may not work in SVG renderer. #675 (plainheart)
  • [Fix] [type] Optimize event param types #14155 (pissang)


  • [Feature] New minimal import API. Improved exported option types. #13890 (pissang)

  • [Fix] [tooltip] Fix tooltip of markPoint is wrong #13992 (susiwen8)
  • [Fix] [loading] Fix showLoading center align and fontSize not work. Add fontFamily, fontWeight, fontStyle #13972 (yufeng04)
  • [Fix] [gauge] pointer.offsetCenter doesn't work without icon #13966 (yufeng04)
  • [Fix] [dataset] Fix automatic legend from dataset is wrong. #13930 (100pah)
  • [Fix] [handler] Fix tooltip can't be hidden when moving out of the viewport occasionally. #693 (pissang)
  • [Fix] [tooltip] Fix text color can't be changed in tooltip. #13848 (susiwen8)
  • [Fix] [tooltip] Fix borderColor can't be changed in tooltip. #13771 (susiwen8)
  • [fix] [axis] Fix error when category axis max is greater than data length #13733 (Ovilia)
  • [fix] [svg] Fix chart cannot be exported with SVG renderer in IE. #13732 (plainheart)
  • [Fix] [bar] Improvement and some fixes of bar race chart #13994 (100pah)
  • [Fix] Fix unexpected global name usage, which may have error in other environments. #13984 (pissang)


  • Migrate codebase to TypeScript:
    • The entire code base have been migrated to TypeScript.
    • Provide DTS for the upper TS based applications, where the TS version supported is down to 3.5.
    • See more details in #13563
  • [Feature] States enhancement:
    • Support state transition animation, which brings better interaction effect when highlighting or downplaying some part of the chart.
    • Besides the state "emphasis" we already have, v5.0 provides two more configurable state: "select" and "blur" in all series. The option of them are the same as the existing "emphasis". "blur" is used the elements need to fade out when focusing some other elements. "select" is used when the element is selected by mouse/touch click or API triggering.
    • Support to blur other graphic elements when highlighting specified data through mouseover or hover linking. See examples bar-label-rotation, bar-polar-stack, bar-stack, area-stack, dataset-link, scatter-weight, tree-basic.
    • Unify the previous different state configurations in series, like highlightPolicy, focusNodeAdjacency, hoverOffset, by the option focus, blurScope and scale. See examples sankey-energy, graph, sunburst-drink.
    • See more details in #12925 and #12911.
  • [Feature] Provide a more powerful label support:
    • Use some strategies to bring better displayed labels, including:
      • Smarter text color strategy to make labels more easy to be distinguished from different background.
      • Smarter label layout in pie chart, especially when there are too many labels or insufficient space. And related issue: #6050.
      • Provide more overflow configurations.
    • Provide option set labelLayout to enable more abilities for developers to tweak the layout of the labels after it's originally positioned by the chart itself. With the options in labelLayout, developers can:
    • Support labelLine for all series, which is very useful for guiding element to related labels when labels have to be far away from the elements. See examples scatter-label-align-right, scatter-label-align-top. Related issues: #11534, #12971.
    • Support series.endLabel in line series. Label can be displayed at the end of a line.
    • Support label text animation, that is, the transition animation on text when the number text changed. Can be enabled by series.label.valueAnimation, series.endLabel.valueAnimation. See more details in #13246 and #13045.
    • See other details in #12911.
  • [Feature] Support bar realtime sorting by series.realtimeSort. See examples bar-race, and see more details in the original pull request #12484.
  • [Feature] Support data transform plug-in:
  • [Feature] Provide more smarter time axis label and tick arrangement:
  • [Feature] Support decal:
    • Decal provides a new visual type that does not only augment aria scenarios but also enrich visual effects.
    • See more details in #13304.
  • [Feature] Support transition animation in custom series.
  • [Feature] Provide a more powerful gauge:
  • [Feature] The default theme and interaction have been greatly enhanced. Some new options are provided for the style and interaction configuration:
    • Tooltip style enhancement: #12947, #13398, #13242.
    • Provide configurable dash style: #12961.
    • Axis style enhancement: #13046.
    • DataZoom support both brush and drag: #13025.
    • Support darkMode. 12911.
    • Enhance resize & dataZoom animation: #12965
    • Change the closing direction of a single bar, #12543.
    • Enhance pie chart animation #12553.
    • Other component style enhancement: #13008, #13013.
  • [Feature] Make i18n registerable and change the product.
  • [Feature] Support rounded corner in pie and sunburst:
  • [Feature] Make tooltip more configurable:
    • Support to add CSS class to tooltip. #13383.
    • Support to return DOM in tooltip formatter. #13469.
  • [Feature] Support to partially remove components or replace components (replaceMerge):
  • [Enhancement] Enhance performance in some scenarios:
  • Other small features, enhancements and bug-fixes:
    • [Feature] Enhance parseDate #13044.
    • [Feature] Make line bolder when line is in emphasis state #13013.
    • [Feature] Sankey supports lineStyle: {color: 'gradient'}.
    • [Feature] and support the value 'median'.
    • [Feature] Support axis filter in specific cases. #12832.
    • [Enhancement] Pause requestAnimationFrame when rendering finished.
    • [Fix] Fix bmap first layout may be incorrect if container's layout is flex or grid. #13432.
    • [Fix] Hide tooltip when mouse leaves the chart #13382.
    • [Fix] Fix bmap personalization style does not work. #13214.
    • [Fix] Fix the bug of overriding title when click the stack button. #13372.
    • [Fix] Fix ECharts keeps rendering white blanks with large datasets on single canvas mode #13283.
    • [Fix] Make contentToOption totally optional. #13139.
    • [Fix] Keep axis tooltip open on refresh. #13100.
    • [Fix] Skip rendering for data out of axis content in heatmap. #12991.
  • [Break] Breaking changes against v4.9:
    • The default theme colors has been changed. If intending to use the theme of v4.9-, please set option.color = ['#c23531', '#2f4554', '#61a0a8', '#d48265', '#91c7ae', '#749f83', '#ca8622', '#bda29a', '#6e7074', '#546570', '#c4ccd3'];.
    • Remove built-in map geoJSON. #13565.
    • Drop the support of the legacy IE8. The previous VML renderer (necessary in IE8) will not be updated to work in v5.0.
    • The exported modules from 'echarts/lib/export.js' is not mounted to 'echarts/lib/echarts.js' by default. If the upper application previously used import * as echarts from 'echarts/lib/echarts' and used any of the exported modules in 'echarts/lib/export.js', please change the import code to import echarts from 'echarts/index.blank', where the modules from 'echarts/lib/export.js' are mounted by default.
    • If the upper application previously imported src/echarts.js, src/chart/*.js and src/component/*.js, it can not work any more because all of the files in /src folder are migrated to *.ts.
    • The priority of the visuals between visualMap and itemStyle|lineStyle|areaStyle are reversed. That is, previously, the visuals (i.e., color, symbol, symbolSize, ...) that generated by the component visualMap has highest priority, which will overwrite the same visuals specified in itemStyle|lineStyle|areaStyle. That brought trouble to specify specific style to some certain data items. Since v5.0, the visuals specified in itemStyle|lineStyle|areaStyle has highest priority.
    • The behavior of rich.?.padding are changed. Previously rich.?.padding: [11, 22, 33, 44] indicates that padding-top is 33 and padding-bottom is 11, which is a buggy implementation because it is different from what CSS did. Since v5.0, we fix it: rich.?.padding: [11, 22, 33, 44] indicates padding-top is 11 and padding-bottom is 33.
    • aria is not included in dist/echarts.simple(.min).js since v5.0. But it is still included in dist/echarts.common(.min).js and dist/echarts(.min).js.
  • [Deprecated] Deprecated usages since v5.0:
    • Transform related props of a graphic element are changed:
      • Changes:
        • position: [number, number] are changed to x: number/y: number.
        • scale: [number, number] are changed to scaleX: number/scaleY: number.
        • origin: [number, number] are changed to originX: number/originY: number.
      • The position, scale and origin are still supported but deprecated.
      • It effects these places:
        • In the graphic components: the declarations of each element.
        • In custom series: the declarations of each element in the return of renderItem.
        • Directly use zrender graphic elements.
    • Text related props on graphic elements are changed:
      • Changes:
        • The declaration of attached text (or say, rect text) are changed.
          • Prop style.text are deprecated in elements except Text. Instead, Prop set textContent and textConfig are provided to support more powerful capabilities.
          • These related props at the left part below are deprecated. Use the right part below instead.
            • textPosition => textConfig.position
            • textOffset => textConfig.offset
            • textRotation => textConfig.rotation
            • textDistance => textConfig.distance
        • The props at the left part below are deprecated in style and Use the props at the right part below instead.
          • textFill => fill
          • textStroke => stroke
          • textFont => font
          • textStrokeWidth => lineWidth
          • textAlign => align
          • textVerticalAlign => verticalAlign);
          • textLineHeight =>
          • textWidth => width
          • textHeight => hight
          • textBackgroundColor => backgroundColor
          • textPadding => padding
          • textBorderColor => borderColor
          • textBorderWidth => borderWidth
          • textBorderRadius => borderRadius
          • textBoxShadowColor => shadowColor
          • textBoxShadowBlur => shadowBlur
          • textBoxShadowOffsetX => shadowOffsetX
          • textBoxShadowOffsetY => shadowOffsetY
        • Note: these props are not changed:
          • textShadowColor
          • textShadowBlur
          • textShadowOffsetX
          • textShadowOffsetY
      • It effects these places:
        • In the graphic components: the declarations of each element. [compat, but not accurately the same in some complicated cases.]
        • In custom series: the declarations of each element in the return of renderItem. [compat, but not accurately the same in some complicated cases].
        • Directly use zrender API to create graphic elements. [No compat, breaking change].
    • API on chart instance:
      • is deprecated.
    • label:
      • In props color, textBorderColor, backgroundColor and borderColor, the value 'auto' is deprecated. Use the value 'inherit' instead.
    • hoverAnimation:
      • option series.hoverAnimation is deprecated. Use series.emphasis.scale instead.
    • line series:
      • option series.clipOverflow is deprecated. Use series.clip instead.
    • custom series:
      • In renderItem, the and api.styleEmphasis(...) are deprecated. Because it is not really necessary and hard to ensure backward compatibility. Users can fetch system designated visual by api.visual(...).
    • sunburst series:
      • Action type highlight is deprecated. Use sunburstHighlight instead.
      • Action type downplay is deprecated. Use sunburstUnhighlight instead.
      • option series.downplay is deprecated. Use series.blur instead.
      • option series.highlightPolicy is deprecated. Use series.emphasis.focus instead.
    • pie series:
      • The action type at the left part below are deprecated. Use the right part instead:
        • pieToggleSelect => toggleSelect
        • pieSelect => select
        • pieUnSelect => unselect
      • The event type at the left part below are deprecated. Use the right part instead:
        • pieselectchanged => selectchanged
        • pieselected => selected
        • pieunselected => unselected
      • option series.label.margin is deprecated. Use series.label.edgeDistance instead.
      • option series.clockWise is deprecated. Use series.clockwise instead.
      • option series.hoverOffset is deprecated. Use series.emphasis.scaleSize instead.
    • map series:
      • The action type at the left part below are deprecated. Use the right part instead:
        • mapToggleSelect => toggleSelect
        • mapSelect => select
        • mapUnSelect => unselect
      • The event type at the left part below are deprecated. Use the right part instead:
        • mapselectchanged => selectchanged
        • mapselected => selected
        • mapunselected => unselected
      • option series.mapType is deprecated. Use instead.
      • option series.mapLocation is deprecated.
    • graph series:
      • option series.focusNodeAdjacency is deprecated. Use series.emphasis: { focus: 'adjacency'} instead.
    • gauge series:
      • option series.clockWise is deprecated. Use series.clockwise instead.
      • option series.hoverOffset is deprecated. Use series.emphasis.scaleSize instead.
    • dataZoom component:
      • option dataZoom.handleIcon need prefix path:// if using SVGPath.
    • radar:
      • option is deprecated. Use radar.axisName instead.
      • option radar.nameGap is deprecated. Use radar.axisNameGap instead.
    • Parse and format:
      • echarts.format.formatTime is deprecated. Use echarts.time.format instead.
      • echarts.number.parseDate is deprecated. Use echarts.time.parse instead.
      • echarts.format.getTextRect is deprecated.


  • [Feature] [graph] Support multiple edges to link nodes in graph. #12590 (wf123537200)

  • [Feature] [funnel] Add orient option in funnel. Support horizontal layout. #12754 (regrex)

  • [Enhancement] [tooltip] Add text shadow options. #12664 (Ovilia)

  • [Enhancement] [toolbox] Add brushStyle option to configuration style of brush rect in the dataZoom feature. #12550 (zhiyuc123)

  • [Fix] [themeRiver] Optimize data process in themeRiver. #12022 (Zaynex)

  • [Fix] [toolbox] Fix pie series render incorrectly after editing its data in the dataView feature. #12561 (plainheart)

  • [Fix] [toolbox] Fix dataView shows NaN when using dataset. #11849 (susiwen8)

  • [Fix] [toolbox] Fix saveAsImage may have error in some special environments. #12643 (lzr900515)

  • [Fix] [lines] Fix lines disappear if setOption again without data. #12850 (plainheart)

  • [Fix] [sunburst] [treemap] Fix label formatter in levels not work bug. #12742 (Ovilia)

  • [Fix] [bmap] Fix bmap event moveend is always triggered when dragging or zoomend. #12558 (plainheart)

  • [Fix] [grid] Fix wrong gap calculation when containLabelis set in grid. #12259 (Ling310)

  • [Fix] [tooltip] Fix newline in tooltip of radar and map series when using ricText render mode. #12664 (Ovilia)

  • [Fix] [tooltip] Update tooltip position proportionally when chart resized. #12834 (liulinboyi)

  • [Fix] [tooltip] Fix tooltip dispose in richText render mode. #12608 (plainheart)

  • [Fix] [tree] Fix image symbol not display on first render. #12367 (plainheart)

  • [Fix] [geo] Fix label formatter not work bug. #12762 (plainheart)

  • [Fix] [bar] Fix error when switching showBackground from false to true. #13085 (easonyq)

  • [Fix] [markArea] Fix label is not hidden when markArea is outside the grid. #12669 (Ovilia)

  • [Fix] [markLine] [markPoint] Fix symbolRotate not work bug. #12737 #12392 (plainheart)

  • [Fix] [polar] Fix bar layout on polar with nagive axis. #12418 (gracelia)


  • [Feature] [toolbox] Support download SVG file in toolbox when using SVG render mode. #12144 (Ovilia)

  • [Feature] Add more parameters in the loading effect. #12414 (yufeng04)

  • [Feature] Support callback for symbolRotate. #12348 #12354 (plainheart)

  • [Feature] [axis] Callbacks of min, max can return null to use the default value now. #11829 (susiwen8), #12371 (100pah)

  • [Feature] [geo] Add nameProperty to specify the name field of GeoJSON source. #12156 (alex2wong)

  • [Fix] [sankey] Fix tooltip not displayed on edges. #12011 (susiwen8)

  • [Fix] [sankey] Fix node may disappear when link value is 0. #12191 (susiwen8), #12472 (100pah)

  • [Fix] [treemap] Add missing params in the foramtter callback. #11854 (susiwen8, 100pah)

  • [Fix] [calendar] Fix calendar chart layout when user is in a timezone with DST. #12172 (mikeyshing88), #12466 (100pah)

  • [Fix] [line] Fix safari may crash because of memory explosion when using gradient, shadow with large wide-range animation. #12410 (pissang)

  • [Fix] [line] Fix clip bug in chromium when chart size over 18000px. #12393 (zhanfang)

  • [Fix] [pie] Fix label may disappear when animation is disabled. #12243 (Ovilia)

  • [Fix] [title] Fix potential security risk when '_blank' target for link. #12380 (susiwen8)

  • [Fix] [geo] Fix animation not work when change center or zoom with setOption. #12340 (Ovilia)

  • [Fix] [heatmap] Remove the 1px gap. #12342 (SnailSword)

  • [Fix] [sunburst] Fix default downplay style not work bug. #12264 (pissang)

  • [Fix] [visualMap] minOpen and maxOpen is not counted into pieces number now. #12147 (susiwen8)

  • [Fix] [bmap] [extension] Fix layer may not been cleared when using progressive rendering. (pissang)

  • [Fix] [bmap] [extension] Fix unexpected refresh bug.#12411 (pissang)


  • [Feature] Provide new layouts for markLine labels. #11843 (Ovilia)

  • [Feature] Support background option for bar series. #11951 (Ovilia)

  • [Feature] Support appending tooltip DOM to HTML body. #8049 #12024 (xinpureZhu, 100pah)

  • [Feature] Add draggable support to group elements on graphic component. #11959 (pissang)

  • [Feature] Add polyline edge layout for the tree chart. #11808 (deqingli)

  • [Enhance] Enhance continuity line trail for effect line. #11893 (alex2wong)

  • [Fix] Fix markPoint position in stacked line/bar series. #11965 (yikuangli)

  • [Fix] Radar chart data may appear outside of the radar component. #11841 (susiwen8)

  • [Fix] Fix treemap highlight action not triggered. #12050 (100pah)

  • [Fix] Fix geo cannot be restored. #12035 (100pah)

  • [Fix] Fix Array.prototype.slice is not defined on typed array #11956 (pissang)

  • [Fix] Fix candlestick throw error when some series are filtered by legend. #12027 (100pah)

  • [Fix] Fix brush component not follow the pan and zoom of coordinate system. #11998 (100pah)

  • [Fix] Fix action 'showTip' dispatched in radar chart. #11985 (yufeng04)

  • [Fix] Fix splitArea not work in singleAxis. #11890 (newraina)

  • [Fix] Fix legend pagination may disappear. #11952 (yufeng04)

  • [Fix] Fix emphasis lineStyle options do not work in sankey chart. #11729 (deqingli)

  • [Fix] Fix tooltip formatter has no value in sankey chart. #11752 (deqingli)


  • [Feature] Optimize label layout on pie. Add new alignTo option for aligning the labels. Check more detail in PR #11715 (Ovilia)

  • [Feature] Add minorTick, minorSplitLine on axis. Check more detail in the PR #11705 (pissang)

  • [Feature] Added more themes. #11566 (WebCodePro719)

  • [Enhance] Chart will keep the dragging status when mouse is out of the area. Which will provide a much better dragging experience. #11710 (100pah)

  • [Enhance] Legend will display colors from visualMap component in pie/funnel/radar series. #11737 (pissang)

  • [Enhance] Enhance dataset default encode guess strategy. #11746 (100pah)

  • [Enhance] Stack icon on toolbox now is a toggle button. Removed tiled icon. #11367 (alex2wong)

  • [Enhance] Add a delay to avoid flashing when hovering on nodes and edges of graph and sankey series. 11572 (deqingli)

  • [Fix] Fix bar width calculation with barMaxWidth constraint and negative barGap. #11713 (pissang)

  • [Fix] Fix seams in heatmap series. Which may cause unexpected gray lines. #11689 (pissang)

  • [Fix] Fix unexpected highlight state after inverse selection in legend. #11547 (SnailSword)

  • [Fix] Fix tooltip may highlight the point out of chart in line series. #11548 (SnailSword)

  • [Fix] Fix label may not disappear on SVG renderer. ecomfe/zrender#535 (Ovilia)

  • [Fix] Not display bar on polar when value is 0. #11452 (foolzhang)

  • [Fix] Fix logic issue in global textStyle. #11653 (code4fan)

  • [Fix] Fix label color of axisPointer in dark theme. #11656 (asiOvOtus)

  • [Fix] Fix markPoint out of the chart may still display in the wrong position. #11484 (susiwen8)

  • [Fix] Fix tooltip shows multiple values around both sides of the pointer. #11648 (100pah)

  • [Fix] Fix label.formatter of leaves in tree series not work. #11556 (deqingli)

  • [Fix] Fix overflow symbol not display when clip is set false in line series. #11552 (SnailSword)


  • [Feature] Add roundCap option for round corners on bar series width polar coordinate system. #11393 (Ovilia)

  • [Feature] Add event brushEnd for brush component #11285(cuijian-dexter)

  • [Feature] Add friction option in force layout of graph. #11276 (pissang)

  • [Feature] Add ignoreForceLayout option in the graph links. #11445 (TYzzt)

  • [Feature] Add axisType in the indicator of radar series. #11324(zifix)

  • [Feature] Add clip option in candllestick series. #11529 (pissang)

  • [Fix] Fix lots of label positioning issues in SVG renderer. ecomfe/zrender#519 (100pah)

  • [Fix] Fix interval issues related to category axis tick. Like areaStyle.color is incorrect in #10948, xAxis.axisTick.interval is calculated incorrectly in #11176 . #11186 (foolzhang)

  • [Fix] Fix bar series can't display on the log axis. #11472(SnailSword)

  • [Fix] Fix tooltip may be covered by the canvas when -webkit-overflow-scrolling: touch on iOS 13. ecomfe/zrender#522 (100pah)

  • [Fix] Fix some of labels on category axis may disappear forever after chart resized. #11536 (100pah)

  • [Fix] Fix brush drag gets stuck when the mouse leaves the chart area. #11516 (100pah)

  • [Fix] Fix image symbol may disappear forever after legend toggled. #11515 (yufeng04)

  • [Fix] Fix changing from 'scroll' type to 'plain' type not work bug in legend. #11504 (yufeng04)

  • [Fix] Optimize layout and bar width of bar series on time axis and value axis. Make the barMaxWidth has higher priority than barWidth. Add barMinWidth for bar series on time axis and value axis. #11479 (Ovilia, 100pah)

  • [Fix] Fix title of toolbox icon may be cut by the container. #11456 (Ovilia)

  • [Fix] Fix precision issue in the ticks calculating. #11488 (Ovilia)

  • [Fix] Fix rotate property of label not work in tree series. #11457 (deqingli)

  • [Fix] Fix edge won't disappear after collapsed if the id is duplicated in tree series. #11447 (deqingli)

  • [Fix] Fix data disappear when updating with dataset in gauge series. #11373 (Ovilia)

  • [Fix] Fix gradient on bar leaked to label in SVG Renderer. (Ovilia)


  • [Feature] Add option clip for line, bar, lines, scatter and custom series, which prevents the shapes overflow the area of the coordinate system. And support setting filterMode on toolbox.dataZoom. Fix #9200, #10224, #10748, #11086.

  • [Feature] Support "select all" and "reverse select" buttons in legend. See legend.selector for details.

  • [Feature] Provide echarts.graphic.registerShape and echarts.graphic.getShapeClass. The registered shape classes can be used in custom series and graphic component.

  • [Feature] Support show border style on legend item. Support setting itemStyle on legend. Fix #7340.

  • [Feature] Support expansion animation for data update, support pie-series.animationTypeUpdate. Fix #11029.

  • [Feature] Support setting rippleEffect.color in effectScatter.

  • [Feature] Support using BaiduMap API version 3.0 in bmap by option bmap.mapStyleV2.

  • [Fix] Fix the stacked bar exceed zoom limit. Fix #7534, #7672, #7732, #7872, #8069, #8520, #8935, #8955, #9200, #9237, #9847, #10359, #10518, #10972.

  • [Fix] Fix sometimes when using "toolbox dataZoom" it can not return to the original state. Fix #11055.

  • [Fix] Fix the texture pattern rendering in map and geo. And Fix the the shadow of them are different between canvas renderer and SVG renderer. Fix #11055, #5429.

  • [Fix] Fix data does not rendered after a NaN value in candlestick. Fix #11101.

  • [Fix] Fix geo.label.formatter does not work. Fix #8489.

  • [Fix] Fix the hover style incorrect in custom series. Fix #11103.

  • [Fix] Fix tree root node disappears after roaming. Fix #10291, #10986, #10164, #9580, #9256, #9216.

  • [Fix] Fix SVG renderer should render normally despite hover layer set. Fix #11054.

  • [Fix] Add dispose checking for chart instance.


  • [Feature] Sankey diagram enhancement: Add left/right node align, right in sankey diagram. Support user to specify the depth of the node. Enhance sankey node tooltip formatter. Add depth layout info for each node.

  • [Feature] Support callback in series.symbol. Contributed by PR #9664 originally.

  • [Feature] Enhance Pie chart: Support minShowLabelAngle. Contributed by PR #8997 originally. Support label rotate in pie chart. Fix #10045.

  • [Feature] Support backgroundColor for connected charts in toolbox. toolbox.feature.saveAsImage.connectedBackgroundColor can be used to set the background color. Fix #10099.

  • [Feature] Enhance toolbox: Enable to set text style of toolbox. Support tooltip for toolbox. Fix #10202.

  • [Feature] Enhance dataZoom: Normalize illegal range setting and get accurate start/end/startValue/endValue in 'dataZoom' event.

  • [Feature] Add dimensionNames and encode info to callback parameters of formatters. Fix #10248 and Close #10250.

  • [Feature] Funnel enhancement: series.label.position support to set rightTop, rightBottom, leftTop, leftBottom. And fix style in funnel text position.

  • [Fix] Support mouse event in iOS when css transform used. Fix #9434, #8326, #5009, #5921.

  • [Fix] Use a clearer warning message when initing dom without size. Fix #10478.

  • [Fix] Fix the rgba opacity does not work in SVG renderer. Fix #9014

  • [Fix] Enhance funnel chart label display policy PR #8759

  • [Fix] Fix the highlight/downplay of pie graphic.

  • [Fix] Fix the mouse pointer in force graph. Fix #7764, contributed by PR #9134.

  • [Fix] Fix symbol and symbolSize and opacity does not work in series[i]-graph.categories[i]. Fix #8009 and #5969, contributed by PR #9171.

  • [Fix] Fix does not work in the gauge. Fix #9194, contributed by PR #9195.

  • [Fix] Fix a display error when the first data item is '-' in radar. Fix 8962.

  • [Fix] Fix polygon rendering bug when the first value is NaN. Fix #8962, contributed by PR #9162.

  • [Fix] Fix text truncate bug in treemap when using SVG renderer.

  • [Fix] Fix label.rotate does not work in graph. Fix #9182, contributed by PR #9210.

  • [Fix] Fix the rich content hiding bug and confine bug in tooltip. Fix ecomfe/echarts-for-weixin#360, ecomfe/echarts-for-weixin#347.

  • [Fix] Fix callback function params.color is incorrect in sunburst area. Fix #8952, contributed by PR #9238.

  • [Fix] Fix when axisLabel.interval of a category axis is set as 0, all labels are displayed regardless of overlap. Fix #9589.

  • [Fix] Fix sub-pixel in markLine. Move subPixelOptimize to zrender. Fix #9598.

  • [Fix] Fix when doing clear on click handler error is thrown. Fix #9649.

  • [Fix] Fix false value in data items effect subsequent items in visualMap. Fix #8799.

  • [Fix] Enhance hoverStyle and highlight/downplay API. Support keep highlighted when changing style (e.g., setOption or hoverLink). Fix the highlight conflict.

  • [Fix] Fix radar line disappear on hover when there is empty value in data.

  • [Fix] Fix geo map panning not working on Edge browser. Fix #9479.

  • [Fix] Fix map label bugs: Fix map rich label missing when missing data. Fix map label miss to enter formatter when missing data. Fix #9682.

  • [Fix] Enable triggerEvent for label of angleAxis. Fix #9765.

  • [Fix] Fix the hover style bugs of graph: Fix the hover style is disabled by focusNodeAdjacency in graph. Fix the line label can not be returned to its original opacity after "focusNodeAdjacency".

  • [Fix] Lift the axis line arrow over splitLine and tick.

  • [Fix] Fix the scrollable legend pager does not work when the target index is illegal. Fix #7568.

  • [Fix] Exclude padding from tooltip position, since it's included in clientWidth. Contributed by PR #9750.

  • [Fix] Fix barWidth calculation when stack on multiple polars. Fix #9626.

  • [Fix] Loop to find the first non-NaN angle for clipPath in pie.

  • [Fix] Fix line width in singleAxis. Fix #9965.

  • [Fix] Fix the label bounding rect calculation error when rich used (e.g., containLabel: true while axisLabel has rich).

  • [Fix] Part of emphasis in sunburst do not work. Fix #9563, constributed by PR #9993.

  • [Fix] Add seriesId in pieselectchanged. Fix #9830.

  • [Fix] Fix axis name align does not work. Fix #9901.

  • [Fix] Fix taht the strange label position when the pie chart series data value is null. Fix #10088.

  • [Fix] Do not create an anchor element if you don't need to in SaveAsImage. Contributed by PR #10132.

  • [Fix] Fix axisLabel dost not display correctly in radar. Fix #9282, contributed by PR #10036.

  • [Fix] Fix bar chart is abnormal when filterMode of dataZoom is 'empty'. Fix #9882.

  • [Fix] Fix series.label.formatter callback bug. Fix #10248, contributed by PR #10250.

  • [Fix] Fix the last axis labels are duplicated. Fix #10304.

  • [Fix] Fix setting emphasis.lineStyle.type as solid dose not work. Fix #9704, close #10129.

  • [Fix] Fix if some negetive numbers or strings existing in the dimensions array, the corresponding line will not show. Fix #10343.

  • [Fix] Fix when '0' existing in dimentions the chart do not work. Make backward compat when dimention is a number-like string. Fix #9363, contributed by PR #9388.

  • [Fix] Fix hover style on textStroke bug in custom series.

  • [Fix] Fix graph bug when data is number typed. Fix #10485.

  • [Fix] Fix axisPointer label padding does not work. Fix #10569.

  • [Fix] Add dimIndex for callback formatter in radar. Close #10403, #10180, contributed PR #10437.

  • [Fix] Prevent treamap from using hover layer by default. Fix #10521. Ref #10635.

  • [Fix] Update pointer when type is none. Fix #10570.

  • [Fix] Enhance circular layout: based on symbol size and fix overlap when some value are very smaller than the max value. Fix #10462, Close #10615.

  • [Fix] Support click and tooltip in bar large mode. Fix #10699.


  • [Fix] Fix text cache problem. See #9190, #9597, #9762.

  • [Fix] Fix in some case re-setOption in event handler throws error. See #9649.

  • [Fix] Fix geo region problem causes showTip abnormal. See #9156.

  • [Fix] Fix stacked bars are over cartesian in some cases. See #9346.

  • [Fix] Fix legend is not able to scroll when the space is not enough to contain one item. See #6743, #8971, #9471.

  • [Fix] Fix the centered pie label might have offset on some angles. See #9657.

  • [Fix] Fix Geo map panning is not working on MS Edge browser See #9479.

  • [Fix] Fix label dispaly problem in map series. See #9682.

  • [Fix] Fix visualMap: false set on data items makes subsequent items abnormal. See #8799.

  • [Fix] When axisLabel.interval of a category axis is set as 0, all labels show regardless of overlap. See #9589.

  • [Fix] Fix grid(cartesian) did not render when both containLabel and used.

  • [Fix] Fix license statement.

  • [Fix] Fix rich text boundingRect bug.



Recovery build

Fix the problem that bar progressive was blocked.


  • [Feature] Support non-html tooltip, which enable show tooltip on non-html environment, for example, WeChat Mini App. Use tooltip.renderMode to enable this feature.

  • [Feature] Support event filtering, which enable listen event triggered by specified component, series, data items. See chart.on for details, where a new parameter query provided this feature. Support event listening for custom series and graphic component, where specified events from the specified graphic elements can be listened by the query.

  • [Feature] Enable implementing scroll bar by dataZoom (similar behavior as the browser scroll bar), see dataZoom-inside.moveOnMouseWheel, and see the Gantt example.

  • [Feature] Support focusing node adjacency in sankey diagram. See focusNodeAdjacency and example.

  • [Feature] Support vertical layout of sankey diagram, see series-sankey.orient and Vertical sankey example.

  • [Feature] Support roam for tree diagram. See series-tree.roam.

  • [Feature] Enable to set an axis as -1 in encode for custom series, which indicates that the axis and its corresponding dataZoom do not control any dimension of the series (either calculate axis extent by this series nor scale or filter this series). See Gantt example.

  • [Feature] Enable layout 'cover' in path shape for custom series, which brings convenience when using SVG PathData create shapes. See Gantt example.

  • [Feature] Enhance custom series: Added params.actionType, enables some optimize. And addparams.coordSys.zoom for geo coordinate system. Add invisible and ignore to enable show and hide graphic elements in different situation.

  • [Feature] Support inner radius for radar. See #8717.

  • [Fix] Fix polar category axis interval bug. See #8791.

  • [Fix] Do not support set polar center on series. Center should be set on

  • [Fix] Update normal shadow style for sunburst. See #8583.

  • [Fix] Fix empty dataset problem. See #8395.

  • [Fix] Fix bar start position when multiple axes exists. See #8747.

  • [Fix] Remove clipPath for expansion animation. See #8994.

  • [Fix] Fix axes overlap when two Y axes are on one X axis. See #8975.


  • [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] Add tree directions from right to left, from bottom to top for tree series. #7351 #7154. See example tree-orient-right-left, tree-vertical.

  • [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 showAllSymbol:'auto').

  • [Enhance] Support that lift the brushed elements to the top (add option visualMap.inRange.liftZ).

  • [Enhance] Enhance the order of nodes for sankey diagram. #3390 #3543 #6365 #4880 #4986

  • [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.

  • [Fix] Resolve browser become unresponsive when the data of sankey series has cycle. #7495 #8117 #7583 #7325 #6555

  • [Fix] yAxis extent did not update when some of the stacked bar series hide. #8003

  • [Fix] Currently we fetch name from firstly in list. #7966

  • [Fix] Typed array incorrect usage in WeChat app.

  • [Fix] option in axis data item did not work. #7954

  • [Fix] markArea only 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

  • [Fix] markArea did not display when using ordinal string. #7849

  • [Fix] dataZoom threw error when series was empty. #7666

  • [Fix] Add compatibility of data exceptions for sankey series. #2867

  • [Fix] Fix error when removing node or rendering again for the tree series. #8038 #8040 #7720 #7363 #7315

  • [Fix] sunburst chart 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 series.encode. #8017

  • [Fix] legendHoverLink: false did 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.



[Recovery Build]

  • [^] Fixed bar layout problem. See #7831.




  • [^] Fixed that in some case the scollable legend (legend.type: 'scroll') caused ghost. See #7502.

  • [^] Fixed that the selected option did not work in the data item of pie. See #7515.

  • [^] Fixed play button of timeline component could not be disabled. See #7506.




  • [+] 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 label and itemStyle has been flattened. The original level of normal is 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 echarts.init(dom, themeName);.

  • [+] Supported that auto collect legend names when is not specified.

  • [+] Supported that auto collect category names when axis.type is 'category' and is not specified.


  • [^] Fixed that registerMap is null on index*.js.
  • [^] Fixed some CommonJS incorrect brought by injection.


  • [^] Fixed backward compatibility problems brounght by 3.8.0:
    • In 3.8.0, the content in lib directory is the same as the content in src directory (both are ES Module), which may not compatible with the old versions of node and webpack. So rollback to commonJS format in lib of 3.8.2.
    • In 3.8.0, the source code in src constains 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.js manually or make some settings in webpack/rollup (Check custom build tutorial please), which is not backward compatible. So we have removed __DEV__ from the codes in echarts/lib/** in 3.8.2. If dev helper info is required, use codes in echarts/src/**.
    • After 3.8, echarts/src/echarts.js (the same as echarts/lib/echarts.js in 3.8.0) does not include util methods, which used to be mounted on it. Now util methods are listed in echarts/src/export and mounted on echarts/echarts*.js. But it is not backward compatibility, so we have rollbacked to mount them on echarts/lib/echarts.js in 3.8.2.
    • 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 echarts namespame.
  • [^] Fixed the problem that SVG renderer throws error when encounter null value.


  • [+] Supported Tree Chart, including horizontal layout, vertical layout, radial layout.

  • [+] 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.

  • [+] Supported build scripts for creating custom build, including multiple language support. See custom build tutorial. And added Finnish support, which is contributed by xvaara in PR #6863.

  • [+] Supported axis arrow. See #6675.

  • [+] Supported strokeWidth and strokeColor in treemap. See #6804.

  • [+] Supported show adjacent nodes in graph. See #6772.

  • [^] Fixed the area calculation when grid.containLabel is true and axis is rotated. Thanks xvaara for PR #6951.

  • [^] Fixed that the calculation of interval is not incorrect when axisLabel.rotate is set in category axis. See #4170. Thankslanyuechen for PR #6903.

  • [^] Fixed the negative problem in dataTool.prepareBoxplotData. Thanks d-rudolf for PR #6749.

  • [^] Enhanced the label interval of time axis. Thanks xiaoshan00 for PR #6808.

  • [^] Supported radiusAxis.inverse. See #6805 and #4253.

  • [^] Renamed some variables to avoid webpack special variable name. See #6788.

  • [^] Fixed position problem of scrollable legend. See #6756.

  • [^] Fixed that the themeRiver legend color is incorrect. See #6932.

  • [^] Fixed that brush empty value caused error thrown. See #6892.

  • dist/echarts/echarts.simple.js do not includ utils, which used to be mounted on echarts. dist/echarts/echarts.common.js and dist/echarts/echarts.js keep including them as before. And developers can custom build to include them.

  • Changes about dataTool: When using dist/echarts/echarts.simple.js or dist/echarts/echarts.common.js, dist/echarts/extension/dataTool.js should be manually included as before, but the namespace dataTool will not be mounted to echarts. When using dist/echarts/echarts.js, echarts.dataTool is included automatically by default.





[Recovery Build]


  • [+] 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.

  • [+] Supported Scrollable Legend, which provides a solution for displays planty of legend items. See vertical legendhorizontal legend.

  • [+] Flatten textStyle option. textStyle exist 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 textStyle to flatten them. That is, previous label.normal.textStyle.fontSize, axisLabel.textStyle.fontSize is modified to label.normal.fontSize, axisLabel.fontSize after v3.7. Of course, the previous style is compatible all the same. Those options are flattened:

    • axisPointer.textStyle
    • xAxis.axisLabel.textStyle
    • yAxis.axisLabel.textStyle
    • radar.axisLabel.textStyle
    • singleAxis.axisLabel.textStyle
    • radiusAxis.axisLabel.textStyle
    • angleAxis.axisLabel.textStyle
    • parallel.parallelAxisDefault.axisLabel.textStyle
    • parallelAxis.axisLabel.textStyle
    • series.label[normal|emphasis].textStyle
    • series-gauge.axisLabel.textStyle
    • series-gauge.title.textStyle
    • series-gauge.detail.textStyle
    • series-treemap.upperLabel[normal|emphasis].textStyle
    • series-graph.edgeLabel[normal|emphasis].textStyle
    • calendar.dayLabel.textStyle
    • calendar.monthLabel.textStyle
    • calendar.yearLabel.textStyle
    • markPoint.label[normal|emphasis].textStyle
    • markLine.label[normal|emphasis].textStyle
    • markArea.label[normal|emphasis].textStyle
    • tooltip.axisPointer.crossStyle.textStyle
    • axisPointer.label.textStyle
    • timeline.label.textStyle
  • [+] 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 xAxis.axisLine.onZeroAxisIndex, which enables specifing corresponding relationship when multiple axes used and onZero is required. See #5069.

  • [+] Supported that do not use coordinate system in custom series.

  • [+] Supported rotation and alignment of label in bar chart. See rotate, align, verticalAlign. See example. See #5309.

  • [+] Supported radar.indicator.color, which enables setting different color for each indicator of radar chart. See #6128.

  • [+] Supported dataZoom.rangeMode, which can fixing zoom window according to data when data updated. See #6128.

  • [+] Supported using dataIndex in action.legend.legendToggleSelect, action.legend.legendSelect, action.legend.legendUnSelect. See #4242.

  • [+] Supported map.label.formatter, which enables using rich text in map series. See Map Labels.

  • [+] Supported title.borderRadius and legend.borderRadius, which enables round corner of background or border in title and legend component.

  • [^] 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 tooltip when nameMap was used in map serise and there was no data in some areas. See #5633.

  • [^] Fixed tooltip location 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 the incorrect rendering when the first entry was empty in candlestick. See #6059.

  • [^] Fixed that series-bar.dimensions did not work. See #6252.

  • [^] Fixed that when chilren number of group was not fixed, they could not be removed correctly in custom series.

  • [^] Fixed the error that calling connect before setOption called. See #6281.

  • [^] Fixed the edge judgement of tooltip.confine. See #6277 and 0da06d8.

  • [^] Fixed that bar series displayed abnormal when viewport was narrow and bar series were overlapped (both set barWidth and barGap: '-100%'). See #6312.

  • [^] Fixed precision problems. See #6371.





[Recovery Build]




  • [^] Fixed the clipPath support for liquidfill.
  • [^] Fixed the position when label is set as insideTop.
  • [^] Fixed the problem when transforming SVG PathData.


  • [^] Fixed the problem when both left right width top bottom height are set. See #5440.

  • [^] Fixed the problem when input x,y to showTip. See #5449.

  • [^] Enhanced the effect of boundaryGap when only one data existed. See #4417.

  • [^] Fixed animation easing setting of gauge. See #5451.

  • [^] 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.

  • [^] Enabled toolbox clear button to be able to clear brush box of parallelAxis.

  • [^] Improved the performance of zrender up to 50%.


  • [+] Supported useUTC, which enables display axisLabel and tooltip in local time or UTC. Related default setttings are modified: axisLabel and tooltip display local time by default, and data recognize time string as local time if timezone not specified. See the time part in Fixed the problem that when axis.type is 'time' tick is determined by UTC and can not align with daytime. Fixed #5396 and #5393.

  • [+] Supported axisLabel.showMinLabel and axisLabel.showMaxLabel.

  • [+] Supported funnel.sort, which enables sorting funnel by index or customized function.

  • [^] Fixed float error of axisTick. See #5041.

  • [^] Fixed that axisTick did not display when value was too small. See #5386.

  • [^] Fixed when tooltip.trigger was 'axis', dispatchAction showTip did not work. See #5423.

  • [^] Fixed that visualMap disabled itemStyle of map. See #5388.

  • [^] Fixed that tooltip.trigger did not support 'none'. See #5400.

  • [^] Fixed problem of sankey on ie11. See #3306.

  • [^] Fixed that data.lineStyle.color of parallel did not work. See #5363.



Recovery Build


































  • 【+】add in radar chart, see

  • [^] position optimization of average, minimum and maximum value starting point and finishing point. Fix #2762, #2688.

  • [^] 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

  • [^] fix the bug that update data can not be shown insetOption` after emptying line chart data in v3.1.1.

  • [^] fix possiblity of reporting id duplicates error 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

  • [^] dashboard splitLine.length, axisTick.length supports percentage.

  • [^] 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 duplicate error when fix setOption for too many times.Fix #2452

  • [^] candlestick and boxplot chart support markPoint and markLine.Fix #2566

  • [^] fix reset error in toolbox after use setOption in non-merge model.Fix #2596

  • [^] scatter chart and markPoint support configurating label formatter in emphasis. Fix #2596

  • [^] Treemap supports roam configuration item.

  • [^] 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

  • [^] optimization of line chart smooth, add insmoothMonotone configuration item, see details in option.html#series-line.smoothMonotone, Fix #2612

  • [^] 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 min max as string, PR #2481


  • [+] add getOption and clear method

  • [^] 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 show configuration 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 [-1, 1] to [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