ECharts学习总结(三):ECharts图表对象的初始化(init)详解以及注意事项
一、相关js文件的引入
这里我们采用标签式引入文件的方式,我们引入两个js文件,一个是esl.js文件和一个echarts.js。
<script src="js/esl.js" type="text/javascript"></script>
<script src="js/echarts.js" type="text/javascript"></script>
二、ECharts对象的初始化
通过文件esl.js内封装好的require获得echarts接口后可实例化图表,echarts接口仅有一个方法init,执行init时传入一个具备大小(如果没有指定容器的大小将会按照0大小来处理即无法看到图表)的dom节点(width、height可被计算得到即可,不一定可见)后即可实例化出图表对象,图表库实现为多实例的,同一页面可多次init出多个图表。图表实例可用方法见方法,引入ECharts后的的初始化代码如下:
// 作为入口
require(
[
'echarts',
'echarts/chart/pie'
],
//回调函数内执行图表对象的初始化
function(ec) {
var myChart = ec.init(document.getElementById('main'));
myChart.setOption({...});
}
); // ----------------------------- // 非入口或再次使用,图表已被加载注册
require('echarts').init(dom).setOption({...}); // 如果需要再次使用ECharts的图表实例,建议你还是保存init返回的图表实例吧
var myChart = require('echarts').init(dom);
myChart.setOption({...});
如果你不习惯于模块化你也可以这样进行初始化:
//定义一个全局的图表对象
var ECharts;
require(['echarts'], function(ec){
//将对象保存下来
ECharts = ec;
});
// 是的,把echarts加载后保存起来作为命名空间使用 //-----------
//接下来我们就可以进行图表的init操作了
var myChart = ECharts.init(dom); myChart.setOption({....});
init方法说明如下:
| 名称 | 参数 | 描述 |
|---|---|---|
| {ECharts} init | {dom} dom, {string | Object =} theme |
初始化接口,返回ECharts实例,其中dom为图表所在节点,theme为可选的主题,内置主题('macarons', 'infographic')直接传入名称,自定义扩展主题可传入主题对象。如: var myCharts = echarts.init(document.getElementById('main'), 'macarons'); |
注意事项:
1、再实例化之前请确保相关的js文件已经引入且路径正确;
2、在执行图表对象渲染方法init(dom)的时候,记住这里的dom是一个页面容器元素的对象,请确保这个元素对象是存在的,否则执行了init(dom)方法时会报出尚未定义的错误;
3、dom元素一定要指定其大小,关于元素的大小我么可以通过css进行设置:
<div id="main" style="width:400px;height:300px;"></div>
也可以采用动态的javascript代码设置其大小属性值。
ECharts学习总结(三):ECharts图表对象的初始化(init)详解以及注意事项的更多相关文章
- qml学习笔记(二):可视化元素基类Item详解(上半场anchors等等)
原博主博客地址:http://blog.csdn.net/qq21497936本文章博客地址:http://blog.csdn.net/qq21497936/article/details/78516 ...
- 007-Scala类的属性和对象私有字段实战详解
007-Scala类的属性和对象私有字段实战详解 Scala类的使用实战 变量里的类必须赋初值 def函数时如果没参数可不带括号 2.不需要加Public声明 getter与setter实战 gett ...
- Quartz学习——SSMM(Spring+SpringMVC+Mybatis+Mysql)和Quartz集成详解(转)
通过前面的学习,你可能大致了解了Quartz,本篇博文为你打开学习SSMM+Quartz的旅程!欢迎上车,开始美好的旅程! 本篇是在SSM框架基础上进行的. 参考文章: 1.Quartz学习——Qua ...
- Dream------scala--类的属性和对象私有字段实战详解
Scala类的属性和对象私有字段实战详解 一.类的属性 scala类的属性跟java有比较大的不同,需要注意的是对象的私有(private)字段 1.私有字段:字段必须初始化(当然即使不是私有字段也要 ...
- “全栈2019”Java异常第三章:try代码块作用域详解
难度 初级 学习时间 10分钟 适合人群 零基础 开发语言 Java 开发环境 JDK v11 IntelliJ IDEA v2018.3 文章原文链接 "全栈2019"Java异 ...
- js对象浅拷贝和深拷贝详解
js对象浅拷贝和深拷贝详解 作者:i10630226 字体:[增加 减小] 类型:转载 时间:2016-09-05我要评论 这篇文章主要为大家详细介绍了JavaScript对象的浅拷贝和深拷贝代码,具 ...
- JavaScript对象的property属性详解
JavaScript对象的property属性详解:https://www.jb51.net/article/48594.htm JS原型与原型链终极详解_proto_.prototype及const ...
- java对象池commons-pool-1.6详解(一)
自己的项目中用到了 对象池 commons-pool: package com.sankuai.qcs.regulation.protocol.client; import com.dianping. ...
- TCP三次握手与四次挥手详解
目录 TCP三次握手与四次挥手详解 1.TCP报文格式 2.TCP三次握手 3.TCP四次挥手 4.为什么建立连接需要三次握手? 5.为什么断开连接需要四次挥手? 6.为什么TIME_WAIT状态还需 ...
随机推荐
- JavaScript 实现数组去重
JavaScript 实现数组去重 演示Demo 数组去重 // 方法一 function unique1(a) { var res = []; for (var i = 0, len = a.len ...
- 无框架完整搭建安卓app及其服务端(一)
技术背景: 我的一个项目做的的是图片处理,用 python 实现图片处理的核心功能后,想部署到安卓app中,但是对于一个对安卓和服务器都一知半解的小白来说要现学的东西太多了. 而实际上,我们的项目要求 ...
- CUDA学习笔记2:CUDA(英伟达显卡统一计算架构)与已有的VS项目结合
一.步骤 1.先新建一个简单的控制台应用程序,项目名称为Mytest,如下图所示: 2.在项目中添加一个名为Test.cu文件,如下图所示: 3.在解决方案资源管理器中选择该项目并点击右键,在弹出的菜 ...
- Opencv学习笔记3:边缘检测算子的实现方法
一.边缘检测概念 图像的边缘检测的原理是检测出图像中所有灰度值变化较大的点,而且这些点连接起来就构成了若干线条,这些线条就可以称为图像的边缘.效果如图: 接下来介绍一下边缘提取的几种算子,具体证明过程 ...
- NTFS ADS带来的web安全问题
有关ADS的简单说明请看http://www.xfocus.net/articles/200212/466.html 可以看到ADS在很久以前就被一些安全人员所关注,并且也提出了一些经典的利用,比如隐 ...
- Ubuntu 无线驱动问题
最近一次更新系统后开机发现电脑只能连有线网络连不上无线网络.我平时都是连无线网络,没有买网线.所以查了下无线驱动相关问题资料,发现是由于更新系统造成无线网卡驱动莫名不见了.刚开始还以为是电脑将无线禁用 ...
- Failed to read auto-increment value from storage engine错误的处理方法
在进行数据的插入时,系统提示Failed to read auto-increment value from storage engine(从存储引擎读取自增字段失败)错误,经查阅资料,解决方法如下: ...
- Java集合--HashMap分析
HashMap在Java开发中有着非常重要的角色地位,每一个Java程序员都应该了解HashMap. 本文主要从源码角度来解析HashMap的设计思路,并且详细地阐述HashMap中的几个概念,并深入 ...
- css背景图片模糊
index.html <image class="bg" src="/images/bg.png"></image> index.css ...
- HDU 4685 Prince and Princess (2013多校8 1010题 二分匹配+强连通)
Prince and Princess Time Limit: 6000/3000 MS (Java/Others) Memory Limit: 65535/32768 K (Java/Othe ...