ECharts使用指南
第一步,引入ECharts:
echars的引入十分简单,只需要在html中嵌入即可:
<!DOCTYPE html>
<html>
<head>
<script src="echarts.min.js"></script>
</head>
</html>
echarts.min.js从官网下载
此时echarts.min.js保存在html文件同目录下
如果不想在本地保存echart.js文件,可以采用cdn引入:
<script src="echarts.min.js"></script>
改为
<script src="https://cdn.bootcss.com/echarts/4.1.0.rc2/echarts.min.js"></script>
之后就可以开始进入echarts的世界了
第二步,生成echarts对象:
要创建图表首先要给图表一个安置的空间,所以可以在body内嵌入一个空的
<!DOCTYPE html>
<html>
<head>
<script src="echarts.min.js"></script>
</head>
<body>
<div id="container" style="height: 100%"></div>
<script>
var dom = document.getElementById("container");
var myChart = echarts.init(dom);
</script>
</body>
</html>
这个myChart就是重点关注对象,之后的几乎所有图表方法都跟这玩意有关。
第三步,设置配置项
echarts的需要通过一个option对象来进行配置,详细配置项见官网说明文档
以折线图为例,option的形式类似于这样:
option = {
xAxis: {
type: 'category',
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
},
yAxis: {
type: 'value'
},
series: [{
data: [820, 932, 901, 934, 1290, 1330, 1320],
type: 'line'
}]
};
其中series是数据系列,可以有多个,在这个折线图中只设置了一个
至于xAxis和yAxis是echarts提供的折线图配置项,要知道所有的可设置项可查看官方文档
第四步,载入option:
如果要载入option,只需要调用setOption()就好了
myChart.setOption(option, true);
其中第二个参数为[notMerge],当设置为false时,如果更新数据将会合并新旧数据
最后上一个完整版:
<!DOCTYPE html>
<html style="height: 100%">
<head>
<meta charset="utf-8">
</head>
<body style="height: 100%; margin: 0">
<div id="container" style="height: 100%"></div>
<script type="text/javascript" src="echarts.min.js"></script>
var dom = document.getElementById("container");
var myChart = echarts.init(dom);
option = {
xAxis: {
type: 'category',
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun']
},
yAxis: {
type: 'value'
},
series: [{
data: [820, 932, 901, 934, 1290, 1330, 1320],
type: 'line'
}]
};
myChart.setOption(option, true);
</script>
</body>
</html>
常用的option配置项和对象方法
常用的mychart对象方法
myChart.showLoading(LoadingOption);
myChart.hideLoading();
添加showLoading()到加载数据之前可以显示一个Loading的界面,防止加载时间过长,hideLoading()清除加载页面
mychart.getOption();
获取option对象的克隆版本
mychart.dispose()
mychart.clear();
前者为释放图表,释放后不可在使用
后者为清空图表内容,清空后可再添加内容
常用的配置项
图例
legend: [{
data: categories.map(function (a) {
return a.name;
}),
selected: {
'系列1': true,
// 不选中'系列2'
'系列2': false
}
}],
因为原始数据不一定符合要求,所以data数据常常使用map和回调函数返回一个字符串数组
缩放
dataZoom: [
{ // 第一个 dataZoom 组件
radiusAxisIndex: [0, 2] // 表示这个 dataZoom 组件控制 第一个 和 第三个 radiusAxis
}]
dataZoom控制数据的缩放
以及最重要的
series:[{...},{...}]
series中包含了大量已有图表类型的配置项,具体内容参考配置项文档
异步加载数据
模板中常用的异步加载数据类型有json和图表类型用的gexf,有关gexf格式的详情可以看这里
为了方便起见,异步加载数据首先导入Jquery
<script type="text/javascript" src="jquery.js"></script>
加载gexf文件要先加载echarts的dataTool库
<script type="text/javascript" src="dataTool.min.js"></script>
$.get('data.gexf',function(xml){
var graph = echarts.dataTool.gexf.parse(xml);//通过dataTool解析gexf
}),
其中graph对象带有gexf中的节点信息
于是调用起来就非常方便了:
对于关系图,我们可以这样
series : [
{
name: 'graph',
type: 'graph',
layout: 'none',
data: graph.nodes,
links: graph.links
}
加载json文件同理:
$.get('data.json',function(data){
data.nodes;//节点
data.links; //边
})
ECharts使用指南的更多相关文章
- ECharts学习指南
1.了解ECharts ECharts简单说就是互联网开发程序过程中,后台数据库用以实现数据到图形的映射的一个插件. 具体来说一个使用 JavaScript 实现的开源可视化库,可以流畅的运行在PC和 ...
- ECharts演习(一)
前几天小组讨论,窗外的麻雀在电线杆上多嘴,想想很有夏天的感觉,手中的铅笔在纸上来了又回,我用几行字形容孰是孰非......... Echarts使用指南 百度网站:http://echarts.bai ...
- 前端数据可视化echarts.js使用指南
一.开篇 首先这里要感谢一下我的公司,因为公司需求上面的新颖(奇葩)的需求,让我有幸可以学习到一些好玩有趣的前端技术,前端技术中好玩而且比较实用的我想应该要数前端的数据可视化这一方面,目前市面上的数据 ...
- 微信小程序避坑指南——echarts层级太高/层级遮挡
问题:小程序中echarts因为小程序原生的canvas层级太高,而导致弹窗这类dom元素无法遮挡住canvas,如下图: 解决方案1:(wx:if控制dom显隐,显示canvas就重新渲染echar ...
- echarts 专题
todo:缩放 5 分钟上手 ECharts 获取 ECharts 你可以通过以下几种方式获取 ECharts. 从官网下载界面选择你需要的版本下载,根据开发者功能和体积上的需求,我们提供了不同打包的 ...
- electron入坑指南
electron入坑指南 简介 electron 实际集成chrome浏览器和node环境, 运行你写的网页 app 基本目录结构 index.html 名称可以不是index, 这个文件与普通网页的 ...
- 基于Servlet的Echarts例子(2018-12-26更新)
引子 ECharts是百度出品的,一个使用 JavaScript 实现的开源可视化库.程序员在Web页面上引入并稍作配置就能做出漂亮的数据图表. 本篇文章简单介绍一下如何在JSP中使用Echarts, ...
- 网页图表类框架(插件)——百度eCharts和Highcharts
ECharts, 缩写来自Enterprise Charts,商业级数据图表,一个纯Javascript的图表库, 可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器(IE6/7/8/9 /10 ...
- pyEcharts安装及使用指南
pyEcharts安装及使用指南 ECharts是一个纯Javascript的图表库,可以流畅的运行在PC和移动设备上,兼容当前绝大部分浏览器,底层依赖轻量级的Canvas类库ZRender,提供直观 ...
随机推荐
- React & react-native & vue & cli & environment information & report bugs
React & react-native & vue & cli & environment information & report bugs cli che ...
- H5 下拉刷新、加载更多
H5 下拉刷新.加载更多 demos const autoLoadMore = (url = ``) => { // todo ... } refs xgqfrms 2012-2020 www. ...
- window resize & resize observer
window resize & resize observer https://developer.mozilla.org/en-US/docs/Web/API/Window/resize_e ...
- js 检测浏览器开发者控制台是否被打开
var element = new Image(); Object.defineProperty(element, "id", { get: function () { debug ...
- 小程序 & taro 踩坑指南
小程序 & taro 踩坑指南 微信开发者工具, 不支持 react bug https://github.com/NervJS/taro/issues/5042 solution just ...
- NGK公链:在规则明确的环境下运行超级节点机制
首先要跟大家明确的一点是,21个超级节点是投票选举出来的,并不是系统在创立之初就已经确定好了的.那么相信大家也一定很好奇,这21个超级节点是通过什么方式产生? NGK.IO对分布式超级节点使用了一个自 ...
- NGK公链有发展前景吗?
最近网络中经常能看到一个新公链项目NGK的消息,很多朋友也都私下表示过,非常看好今年的NGK.对此,小编对NGK做了一些功课,发觉到NGK未来在商业Dapp应用的发展前景,下面就给大家分享一下我的理解 ...
- 嵌入式开发板使用网口和nfs进行文件共享
如果你的开发板有网口,类似于这玩意. 那么,你可以去买根网线,类似于这玩意. 然后你就可以将你的电脑和开发板用网线连起来,通过nfs(网络文件系统)来进行文件夹共享,文件夹共享就相当于挂载,nfs是利 ...
- webpack4.X核心工具库之tapable实例对象Hook
一.tapable简介 tapable为webpack底层的核心工具库,webpack许多功能的实现都是跟它密不可分的,webpack的编译流程为配置初始化--->内容编译--->输出编译 ...
- 谈一下HashMap的底层原理是什么?
底层原理:Map + 无序 + 键唯一 + 哈希表 (数组+Entry)+ 存取值 1.HashMap是Map接口的实现类.实现HashMap对数据的操作,允许有一个null键,多个null值. Co ...