随笔- 21  文章- 186  评论- 4 

ECharts图表初级入门(三):ECharts对象的数据实例化方法汇总以及注意事项

 

[摘要]: 前面我们以及提及到了ECharts图表组件初级入门之(一):如何将ECharts引入至项目中的几种方式和ECharts图表初级入门(二):ECharts图表对象的初始化(init)详解以及注意事项,我们完成了ECharts图表使用的一些基础部署了,也拿到了ECharts的对象,通过init(dom)方法,那么我们如何给这个对象进行数据初始化呢?这将会是这一篇文章将会谈及到的问题: 关于ECharts图表的实例化方式和Highcharts图表的实例化方法有些类似,都是通过给其对象提供一个option,option的结构如同json的结构一样,只是一些属性少了双引号罢了。 纵观ECharts图表实例化的API,主要有一下几个相关的实例化方法: 1、setOption(Object option,{boolean = true} notMerge)...

前面我们以及提及到了ECharts图表组件初级入门之(一):如何将ECharts引入至项目中的几种方式ECharts图表初级入门(二):ECharts图表对象的初始化(init)详解以及注意事项,我们完成了ECharts图表使用的一些基础部署了,也拿到了ECharts的对象,通过init(dom)方法,那么我们如何给这个对象进行数据初始化呢?这将会是这一篇文章将会谈及到的问题:

关于ECharts图表的实例化方式和Highcharts图表的实例化方法有些类似,都是通过给其对象提供一个option,option的结构如同json的结构一样,只是一些属性少了双引号罢了。

纵观ECharts图表实例化的API,主要有一下几个相关的实例化方法:

1、setOption(Object option,{boolean = true} notMerge)

参数:

1)、Object类型的参数 option,表示图表数据结构 ,形如:

1.var option  = {
2.                title: {
3.                    text: "我的第一个ECharts图表示例"
4.                },
5.                tooltip: {
6.                    trigger: 'axis'
7.                }
8.            };

2)、boolean notMerge,表示是否合并option。默认为false,可以不设置。

描述:

万能接口,配置图表实例任何可配置选项(详见option),多次调用时option选项是默认是合并(merge)的,如果不需求,可以通过notMerger参数为true阻止与上次option的合并。

2、getOption()

描述:

返回内部持有的当前显示option克隆

3、setSeries(Array series,{boolean=}notMerge)

参数:

1)、Array类型的series序列数据,形如:

01.var Array seriesList = new Array();
02. 
03.var seriesObj = new seriesObj();
04.seriesObj.name = "蒸发量";
05.seriesObj.type = "line";
06.seriesObj.data = [2.0, 4.9, 7.0, 23.2, 25.6, 76.7, 135.6, 162.2, 32.6, 20.0, 6.4, 3.3];
07. 
08.//设置series
09.myChart.setSeries(seriesList,false);

2)、boolean notMerge 表示是否合并series,默认为false,可以不设置。

描述:

数据接口,驱动图表生成的数据内容,效果等同调用setOption({series:{...}})

4、getSeries()

描述:

返回内部持有的当前显示series克隆,效果同return getOption().series

5、addData(....)

参数:

1)、单组数据参数

11)、{number} seriesIdx :表示给哪一条series添加数据,series脚标从0开始;

12)、{number | Object} data;

13)、{boolean=} isHead ;

14)、{boolean=} dataGrow;

15)、{string=} additionData;

2)、多组数据参数

其实就是多个单组数据的形成的集合或者数组{Array} params

描述:

动态数据接口

seriesIdx 系列索引

data 增加数据

isHead 是否队头加入,默认,不指定或false时为队尾插入

dataGrow 是否增长数据队列长度,默认,不指定或false时移出目标数组对位数据

additionData 是否增加类目轴(饼图为图例)数据,附加操作同isHead和dataGrow

多组数据添加时参数为:

params == [[seriesIdx, data, isHead, dataGrow, additionData], [...]]

6、on(string eventName,function eventListner)

描述:

事件绑定,支持事件有:REFRESH,RESTORE,CLICK,HOVER,DATA_CHANGED,MAGIC_TYPE_CHANGED,DATA_VIEW_CHANGED,DATA_ZOOM,DATA_RANGE,LEGEND_SELECTED,MAP_SELECTED

示例代码形如:

1.//ECharts图表的click事件监听
2.myChart.on("click", function () {
3.        alert("你点击我了!");
4.});

7、un(string eventName,function eventListner)

描述:

解除某个事件的绑定,示例代码形如:

1.myChart.un("click", function () {
2.             alert("悲剧,你注销我了!");
3.});

8、showLoading(Object loadingOption)

描述:

过渡控制(详见loadingOption),显示loading(读取中)代码片段形如:

01.//图表显示提示信息
02.myChart.showLoading({
03.    text: "图表数据正在努力加载...",
04.    x: "center",
05.    y: "center",
06.    textStyle: {
07.        color:"red",
08.        fontSize:14
09.    },
10.    effect:"spin"
11.});

注意:

9、hideLoading()

描述:

隐藏图表数据加载过度提示信息,示例代码:

1.myChart.hideLoading();

10、getZrender()

描述:

获取当前图表所用ZRender实例,可用于添加额外图形或进行深度定制,zrender接口详见ZRender 示例代码如下所示:

1.nyChart.getZrender();

11、getDataURL(string imgType)

描述:

获取当前图表的Base64图片dataURL,imgType 图片类型,支持png|jpeg,默认为png

示例代码如下所示:

1.var imgUrl = myChart.getDataURL("png");

12、getImage(string imgType)

描述:

获取一个当前图表的img,imgType 图片类型,支持png|jpeg,默认为png,示例代码片段:

1.//前端导出图表图片
2.var imgObj = myChart.getImage("jpeg");

主要是拿到一个图片对象,然后获取其outerHTML属性就是一个图表image的html完整标签,我们可以使用其直接显示在页面上。

13、resize()

描述:

ECharts没有绑定resize事件,显示区域大小发生改变内部并不知道,

使用方可以根据自己的需求绑定关心的事件,主动调用resize达到区域更新的效果。

1.myChart.resize();

14、refresh()

描述:

刷新图表,图例选择、数据区域缩放,拖拽状态均保持。

1.myChart.refresh();

15、restore()

描述:

还原图表,各种状态均被清除,还原为最初展现时的状态。

16、clear()

描述:

清空绘画内容,清空后实例可用,因为并非释放示例的资源,释放资源我们需要dispose()

1.myChart.clear();

17、dispose()

描述:

释放图表实例,释放后实例不再可用。

1.myChart.dispose();

目前ECharts图表的实例化主要包含当前十七个相关方法,后期不保证有补充的节奏,就目前来说,这十七个已经够用了的。

注意:

1、以上方法的使用前提都是需要获得ECharts初始化对象过后才可以进行,否则会产生报错现象。

 
 
 
 
 
 
Copyright ©2017 net5x

echart 注意事项-初始化和销毁的更多相关文章

  1. Spring实现初始化和销毁bean之前进行的操作,三种方式

    关于在spring  容器初始化 bean 和销毁前所做的操作定义方式有三种: 第一种:通过@PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作 第二 ...

  2. Spring源码学习之: 通过Spring @PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作

    关于在spring  容器初始化 bean 和销毁前所做的操作定义方式有三种: 第一种:通过@PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作 第二 ...

  3. Spring bean 实现初始化、销毁方法的方式及顺序

    Spring 允许 Bean 在初始化完成后以及销毁前执行特定的操作,常用方法有三种: 使用注解,在指定方法上加上@PostConstruct或@PreDestroy注解来制定该方法是在初始化之后还是 ...

  4. 通过Spring @PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进

    关于在spring  容器初始化 bean 和销毁前所做的操作定义方式有三种: 第一种:通过@PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作 第二 ...

  5. 在spring容器中定义初始化和销毁bean前所做的操作,有三种方式

    1.使用注解,通过@PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作 package com.luoq.test.annotation.init; ...

  6. 通过Spring @PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作

    关于在spring  容器初始化 bean 和销毁前所做的操作定义方式有三种: 第一种:通过@PostConstruct 和 @PreDestroy 方法 实现初始化和销毁bean之前进行的操作 第二 ...

  7. spring实战三装配bean之Bean的作用域以及初始化和销毁Bean

    1.Bean的作用域 所有的spring bean默认都是单例.当容器分配一个Bean时,不论是通过装配还是调用容器的getBean()方法,它总是返回Bean的同一个实例.有时候需要每次请求时都获得 ...

  8. 三种不同实现初始化和销毁bean之前进行的操作的比较

    Spring容器中的bean是有生命周期的,Spring 允许在 Bean 在初始化完成后以及 Bean 销毁前执行特定的操作,常用的设定方式有以下三种: 通过实现 InitializingBean/ ...

  9. Spring3实战第二章第一小节 Spring bean的初始化和销毁三种方式及优先级

    Spring bean的初始化和销毁有三种方式 通过实现 InitializingBean/DisposableBean 接口来定制初始化之后/销毁之前的操作方法: 优先级第二通过 <bean& ...

随机推荐

  1. ==和equals的区别。

    1.java中equals和==的区别 值类型是存储在内存中的堆栈(简称栈),而引用类型的变量在栈中仅仅是存储引用类型变量的地址,而其本身则存储在堆中. 2.==操作比较的是两个变量的值是否相等,对于 ...

  2. iframe跨域问题:Uncaught DOMException: Blocked a frame with origin解决方法

    在前后端分离的情况下,前台页面将后台页面加载在预留的iframe中:但是遇到了iframe和主窗口双滚动条的情况,由此引申出来了问题: 只保留单个滚动条,那么就要让iframe的高度自适应,而从主页面 ...

  3. 记一次gitlab添加用户收不到邮件的解决办法

    之前再gitlab服务器上创建账号可以正常收到邮件,最近就收不到,查了gitlab的配置以及postfix服务都没有问题,后来查看了发信25端口,发现该25端口并没有开启(postfix已经开启),提 ...

  4. 【4opencv】识别复杂的答题卡1(主要算法)

    一.问题提出 由于GPY进行了纠偏,所以在采集的时候,就已经获得了质量较高的答题卡图片 下一步就是需要从这张图片中,识别出人眼识别出来的那些信息,并且将这个过程尽可能地鲁棒化,提高识别的准确率. 二. ...

  5. 1.面向过程编程 2.面向对象编程 3.类和对象 4.python 创建类和对象 如何使用对象 5.属性的查找顺序 6.初始化函数 7.绑定方法 与非绑定方法

    1.面向过程编程 面向过程:一种编程思想在编写代码时 要时刻想着过程这个两个字过程指的是什么? 解决问题的步骤 流程,即第一步干什么 第二步干什么,其目的是将一个复杂的问题,拆分为若干的小的问题,按照 ...

  6. Mac安装HomeBridge适配小米Homekit报错:module未找到解决

    Mac安装HomeBridge适配小米Homekit报错:module未找到 具体错误是: module.js:471 throw err; balabalal...... 问了一圈,终于解决,但是又 ...

  7. topcoder srm 704 div1

    1.对于一棵树上的一个节点$u$,定义$f(u)$表示树上距离$u$最远的节点到$u$的距离.给出每个节点的$f$值,构造出这棵树. 思路:找到树的主干,然后不在主干上的节点一定可以连接到主干的某个节 ...

  8. UVA 10382 Watering Grass(区间覆盖,贪心)题解

    题意:有一块草坪,这块草坪长l 米,宽 w 米,草坪有一些喷头,每个喷头在横坐标为 p 处,每个喷头的纵坐标都是(w/2) ,并且喷头的洒水范围是一个以喷头为圆心,半径为 r 米的圆.每次最少需要打开 ...

  9. 【Runtime Error】打开Matlib7.0运行程序报错的解决办法

    1.在C盘建立一个文件夹temp,存放临时文件: 2.右键我的电脑-属性-高级系统设置-环境变量-系统变量,将TEMP.TMP的值改成C:\temp: 3.还是在第2步那里,新建变量,变量名称为BLA ...

  10. class类的使用

    我们在ES5中经常使用方法或者对象去模拟类的使用,虽然可以实现功能,但是代码并不优雅,ES6为我们提供了类的使用.需要注意的是我们在写类的时候和ES5中的对象和构造函数要区分开来,不要学混了. 类的声 ...