G2 是一套面向常规统计图表,以数据驱动的高交互可视化图形语法。它是 AntV 旗下一款易用、高效、强大的 2D 可视化渲染引擎,提供 Canvas、SVG 等多种渲染方式的实现。
经历了为期半年的大规模底层重构和开发迭代,G2 4.0 终于和大家见面了。作为继 2017 年 11 月 22 日 G2 3.0 正式开源发布以来 G2 的第二次大版本发布,4.0 版本仍坚守着『打造数据驱动的高交互图形语法』的初心,在图形语法的基础上,新增了交互语法,同时在产品的功能、体验、易用性和灵活性等各个方面进行了全面提升。
全新的 4.0严格意义上来说,这并不是一次重构,而是一次大规模的重写,我们自底向上,从代码到文档,构建了全新的 G2。全面拥抱 TypeScript
我们使用 TypeScript 重写了 G2 以及其相关的所有模块,并提供了完整的类型定义文件。
绘图引擎升级,多引擎切换
随着 AntV 底层渲染引擎 G 4.0 的发布,为 G2 4.0 带来了Canvas、SVG 多渲染模式支持、局部刷新、动画体验增强等多种利好。
更新机制引入
在 G2 之前的版本中,数据初始化和数据更新的流程本质上一样,区别仅在于后者需要把之前的图形清理掉,所以在数据更新之后,图形元素都是重新创建的,与数据更新前的图形元素无法进行关联,这就对动画、以及交互的一致性造成了影响。所以我们在 4.0 中引入了更新机制,包括:
Geometry 的数据更新,为此我们引入了 Element 概念;
可视化组件的更新。
示例一:在图表发生数据更新后,数据更新前的图形元素并没有被销毁