Echart架构解析

前言

本文章主要介绍EChart整体的架构设计,以及源码中关键的代码部分,用于简单对EChart的设计以及工作概念有个简单的入门理解,所以不会讲到太深入源码地方,帮助想了解EChart的同学入门。

Echart架构图

Echart底层依赖矢量图形库ZRender,基于ZRender之上做了更高层次的抽象,定义出了以下三种元素:

  • Series
  • Coordinates
  • Components

整体构成了下述的图表:

基石:ZRender

GitHub – ecomfe/zrender: A lightweight graphic library providing 2d draw for Apache ECharts

ZRender是二维绘图引擎,它提供Canvas、SVG、VML 等多种渲染方式。基于这些之上定义了如下几个概念:

  • animation 定义动画
  • graphic 定义图形
  • mvc 定义模式
  • 统一UI Event(封装多平台操作差异)
  • 多种渲染引擎(Canvas/SVG/WebGL)
  • 辅助工具库等

其中最核心的是定义图形:

于是乎,你在你就可以通过简单的几行代码画圆形了

var zr = zrender.init(document.getElementById('main'));
var circle = new zrender.Circle({
shape: {
cx: 150,
cy: 150,
r: 40
},
style: {
fill: 'none',
stroke: '#F00'
}
});
zr.add(circle);

<< · Back Index ·>>

发表回复

相关推荐

R語言 排序&去重操作 | 專題1

數據操作中排序和去重是比較常見的數據操作,本專題對排序和去重做專門介紹,並且給出一種不常用卻比較有啟發意義的示例:多...

· 10秒前

2022杭州市中國農業銀行虎年賀歲幣兌換網點匯總

序號營業單位中文全稱預約兌換額度(單位:)聯系電話網點地址網點營業時間 周末營業情況周六周日1杭州分行營業中心140000571-...

· 13秒前

蛋撻的制作方法

【常規類】方法一:1.將淡奶油、牛奶、糖攪拌均勻,加熱至糖完全融化,放涼後加入蛋黃;2.加入低筋粉,攪拌均勻(蛋撻水完...

· 51秒前

雙魚座的吉祥色 ,雙魚座代表的顏色

想必很多人都很好奇雙魚座的吉祥色吧?其實雙魚座是個特別敏感的人,不管是男生還是女生都是如此,而且他們也常常會控制不住...

· 1分钟前

八虎螳螂——螳螂爪

八虎螳螂,抱架从拳击出。 所以螳螂爪的位置,处在颧骨高度,不在下巴。 有人会问为啥,这个问题就像徐纪老师说的,为何八极 ...

· 1分钟前