HTML5数据可视化学习之路---eChart起步
2014-11-13 23:40
288 查看
这几天在学习HTML5,准备从FLEX转型了。看了一些基础的学习教材,也写了一些基础例子,但是仍然没决定从什么地方入手。今天在网上无意间发现了一个很牛叉的图表库EChart,并且这个项目还是百度团队开发的。优点在我看来除了官方说的那些特性之外最好的就是,中文稳定非常全(因为毕竟是我们中国人自己开发的)。
开始看了官方的Dome真的是非常丰富,基本上现在用到的数据可视化的常用图表都有了。于是开始找一个例子开始来进行我的第一个eChart项目吧。
我选择的是地图选择器和标准地图两个组件,因为现在开发项目时用到的地图很多,也用过一些其他的框架比如jvectormap,然后就是自己用SVG写的。这次发现这个echart居然有这么好的一个地图组件。当然要从他开始了。
先从官方网站上下载好echart。然后从builde文件夹下面将echarts.js和chart文件夹考到我们建的工程中,然后开发环境就做好了。就是这么简单。
进入写代码阶段了。
第一步先在页面定义一个
<div id="main" style="height: 500px;"></div> 这里要注意 必须先定义好这个高度 如果不定义的话会报错。
第二步在这个div的下面引入<script src="../js/echarts.js" type="text/javascript" charset="utf-8"></script> JS文件。
第三步开始写图表的主代码了……直接上代码
开始看了官方的Dome真的是非常丰富,基本上现在用到的数据可视化的常用图表都有了。于是开始找一个例子开始来进行我的第一个eChart项目吧。
我选择的是地图选择器和标准地图两个组件,因为现在开发项目时用到的地图很多,也用过一些其他的框架比如jvectormap,然后就是自己用SVG写的。这次发现这个echart居然有这么好的一个地图组件。当然要从他开始了。
先从官方网站上下载好echart。然后从builde文件夹下面将echarts.js和chart文件夹考到我们建的工程中,然后开发环境就做好了。就是这么简单。
进入写代码阶段了。
第一步先在页面定义一个
<div id="main" style="height: 500px;"></div> 这里要注意 必须先定义好这个高度 如果不定义的话会报错。
第二步在这个div的下面引入<script src="../js/echarts.js" type="text/javascript" charset="utf-8"></script> JS文件。
第三步开始写图表的主代码了……直接上代码
<script type="text/javascript"> require.config({ paths:{ echarts:'../js' } }) require([ 'echarts', 'echarts/chart/map' ], function(ec){ mychart = ec.init(document.getElementById('main')); mychart.setOption({ title:{ text:'iphone销量', subtext:'纯属虚构', x:'center' }, tooltip:{ trigger:'axis' }, legend:{ orient:'vertical', x:'left', data:['iphone3','iphone4','iphone5'] }, dataRange:{ min:0, max:2500, x:'left', y:'bottom', text:['高','低'], calculable:true }, toolbox:{ show:true, orient:'vertical', x:'right', y:'center', feature:{ mark:{show:true}, dataView:{show:true,readOnly:false}, restore:{show: true}, saveAsImage:{show:true} } }, roamController:{ show:true, x:'right', mapTypeControl:{ 'china':true } }, series:[{ name:'iphone3', type:'map', mapType:'china', roam:false, itemStyle:{ normal:{label:{show:true}}, emphasis:{label:{show:true}} }, data:[ {name:'北京',value:Math.round(Math.random()*1000)}, {name: '天津',value: Math.round(Math.random()*1000)}, {name: '上海',value: Math.round(Math.random()*1000)}, {name: '重庆',value: Math.round(Math.random()*1000)}, {name: '河北',value: Math.round(Math.random()*1000)}, {name: '河南',value: Math.round(Math.random()*1000)}, {name: '云南',value: Math.round(Math.random()*1000)}, {name: '辽宁',value: Math.round(Math.random()*1000)}, {name: '黑龙江',value: Math.round(Math.random()*1000)}, {name: '湖南',value: Math.round(Math.random()*1000)}, {name: '安徽',value: Math.round(Math.random()*1000)}, {name: '山东',value: Math.round(Math.random()*1000)}, {name: '新疆',value: Math.round(Math.random()*1000)}, {name: '江苏',value: Math.round(Math.random()*1000)}, {name: '浙江',value: Math.round(Math.random()*1000)}, {name: '江西',value: Math.round(Math.random()*1000)}, {name: '湖北',value: Math.round(Math.random()*1000)}, {name: '广西',value: Math.round(Math.random()*1000)}, {name: '甘肃',value: Math.round(Math.random()*1000)}, {name: '山西',value: Math.round(Math.random()*1000)}, {name: '内蒙古',value: Math.round(Math.random()*1000)}, {name: '陕西',value: Math.round(Math.random()*1000)}, {name: '吉林',value: Math.round(Math.random()*1000)}, {name: '福建',value: Math.round(Math.random()*1000)}, {name: '贵州',value: Math.round(Math.random()*1000)}, {name: '广东',value: Math.round(Math.random()*1000)}, {name: '青海',value: Math.round(Math.random()*1000)}, {name: '西藏',value: Math.round(Math.random()*1000)}, {name: '四川',value: Math.round(Math.random()*1000)}, {name: '宁夏',value: Math.round(Math.random()*1000)}, {name: '海南',value: Math.round(Math.random()*1000)}, {name: '台湾',value: Math.round(Math.random()*1000)}, {name: '香港',value: Math.round(Math.random()*1000)}, {name: '澳门',value: Math.round(Math.random()*1000)} ] }, { name: 'iphone4', type: 'map', mapType: 'china', itemStyle:{ normal:{label:{show:true}}, emphasis:{label:{show:true}} }, data:[ {name: '北京',value: Math.round(Math.random()*1000)}, {name: '天津',value: Math.round(Math.random()*1000)}, {name: '上海',value: Math.round(Math.random()*1000)}, {name: '重庆',value: Math.round(Math.random()*1000)}, {name: '河北',value: Math.round(Math.random()*1000)}, {name: '安徽',value: Math.round(Math.random()*1000)}, {name: '新疆',value: Math.round(Math.random()*1000)}, {name: '浙江',value: Math.round(Math.random()*1000)}, {name: '江西',value: Math.round(Math.random()*1000)}, {name: '山西',value: Math.round(Math.random()*1000)}, {name: '内蒙古',value: Math.round(Math.random()*1000)}, {name: '吉林',value: Math.round(Math.random()*1000)}, {name: '福建',value: Math.round(Math.random()*1000)}, {name: '广东',value: Math.round(Math.random()*1000)}, {name: '西藏',value: Math.round(Math.random()*1000)}, {name: '四川',value: Math.round(Math.random()*1000)}, {name: '宁夏',value: Math.round(Math.random()*1000)}, {name: '香港',value: Math.round(Math.random()*1000)}, {name: '澳门',value: Math.round(Math.random()*1000)} ] }, { name: 'iphone5', type: 'map', mapType: 'china', itemStyle:{ normal:{label:{show:true}}, emphasis:{label:{show:true}} }, data:[ {name: '北京',value: Math.round(Math.random()*1000)}, {name: '天津',value: Math.round(Math.random()*1000)}, {name: '上海',value: Math.round(Math.random()*1000)}, {name: '广东',value: Math.round(Math.random()*1000)}, {name: '台湾',value: Math.round(Math.random()*1000)}, {name: '香港',value: Math.round(Math.random()*1000)}, {name: '澳门',value: Math.round(Math.random()*1000)} ] } ] }) }) </script>写好后 运行就可以看到效果了
相关文章推荐
- Qt 学习之路 :可视化显示数据库数据
- Qt 学习之路 2(57):可视化显示数据库数据
- html5 学习之路 三 (地理位置+数据存储)
- 数据可视化的实现技术和工具比较(HTML5 canvas(Echart)、SVG、webGL等等)
- 菜鸟的学习之路(1) —java 原生数据类型与引用类型
- R语言学习笔记:数据的可视化
- HTML5学习(4) 数据的存储(localStorage,sessionStorage)
- 分享和记录我的学习之路大数据
- 数据可视化解决方案-学习中ing~
- 嵌入式学习之路(二十二)——数据结构(4)
- IOS学习之路二十(程序json转换数据的中文字符问题解决)
- 游戏服务器学习之路--数据存储
- 数据可视化学习资料
- IOS开发---菜鸟学习之路--(十八)-利用代理实现向上一级页面传递数据
- IOS开发---菜鸟学习之路--(十九)-利用NSUserDefaults存储数据
- IOS开发---菜鸟学习之路--(二)-数据获取
- 数据可视化工具Prefuse学习(一)
- ExtJs学习之路--从Grid中得到数据
- 非常完美的大数据可视化js库-----Echart
- IOS开发---菜鸟学习之路--(十二)-利用ASIHTTPRequest进行异步获取数据