echarts v5.0.0 Release Notes

Release Date: 2020-11-10 // about 1 year ago
  • v5.0.0

    • Migrate code base to TypeScript:
      • The entire code base have been migrated to TypeScript.
      • Provide types/dist/echarts.d.ts for the upper TS based applications, where the TS version supported is down to 3.4.
      • 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:
      • Avoid labels overlap (see scatter-label-align-right),
      • Make special label alignment, and adjust label position, etc.. See the examples pie-alignTo, pie-labelLine-adjust, pie-label-distanceToLabelLine, pie-label-bleedMargin.
      • Make label draggable.
      • 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.
      • See more details in #12911.
    • [Feature] Chart racing, bar realtime sorting and label animation:
      • Bar race and line race is a popular way to show time series data, and visualize the change in trends over time.
      • We provide this capability by bar sorting (series.sort and series.realtimeSort) and end label animation (series.label.valueAnimation, series.endLabel). And this individual options can be used in other related scenarios.
      • See examples bar-race, and see more details in the original pull request #12484, #13246 and #13045.
      • Other the racing of some special customized chart can be implemented by custom series and the callback of renderItem during. See the example custom-spiral-race, and see more details in #12775.
    • ๐Ÿ‘ [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] Provide custom series animation configuration in transform, style, shape morphing/combining/separating.
    • [Feature] Provide a more powerful gauge:
    • ๐Ÿ’… [Feature] The default theme and interaction have been greatly enhanced. Some new options are provide 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 conner 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:
    • ๐ŸŽ [Enhancement] Enhance performance in some scenarios:
    • Others small bug-fix or enhancement:
      • [Feature] Enhance parseData #13044.
      • #13013
      • [Feature] Support axis filter in specific cases. #12832.
      • [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] remove built-in map geoJSON.

Previous changes from v5.0.0-beta.2