您的位置:首页 > 其它

使用Echarts图表动态加载饼图数据 pie

2017-02-14 10:55 691 查看

使用Echarts图表动态加载饼图数据 pie

新人撰写博客,如有不足望提出且多多见谅!

项目设计过程当中需要用到统计报表功能。有试过很多报表控件,最后看中了百度团队当中的Echarts。今天,我们要实现的是标准饼图的动态数据加载。

* Echarts简介*

ECharts是一款开源、功能强大的数据可视化产品。

—— [ Echarts官网 ]

具体实现代码如下:

HTML代码:

<!--输出的报表内容--->
<div id="main" style="height:300px;width:500px;"></div>


JavaScript代码:

1.写入ajax代码通过servlet获取Json数据

<script type="text/javascript">

$.ajax({
type : 'post',
async : false, //同步执行
url :'adm_index/goods.ad', //web.xml中注册的Servlet的url-pattern
data : {}, //无参数
dataType : 'json', //返回数据形式为json
success : function(result) {
if (result) {
//把result(即Json数据)以参数形式放入Echarts代码中
bind(result);
}
},
error : function(errorMsg) {
alert("加载数据失败");
}
}); //ajax
</script>


- 2.把Json数据传入Echarts代码当中

<script type="text/javascript">

//JS成功后的代码
function bind(result){
// 基于准备好的dom,初始化echarts图表
var TypeSalesChart = echarts.init(document.getElementById('main'));
var option = {
tooltip : {
trigger: 'item',
formatter: "{a} <br/>{b} : {c} ({d}%)"
},
legend: {
orient : 'vertical',
x : 'left',
data:(function(){
var res = [];
var len = result.length;
for(var i=0,size=len;i<size;i++) {
res.push({
name: result[i].typeName,
});
}
return res;
})()

},
series : [
{
name:'访问来源',
type:'pie',
radius : '55%',
center: ['50%', '60%'],
data:(function(){
var res = [];
var len = result.length;
for(var i=0,size=len;i<size;i++) {
res.push({
//通过把result进行遍历循环来获取数据并放入Echarts中
name: result[i].typeName,
value: result[i].sales
});
}
return res;
})()
}
]
};
// 为echarts对象加载数据
TypeSalesChart.setOption(option);
}

</script>




* 上面就是以最简单的方式显示饼状图数据了,如果有问题欢迎在下方评论,谢谢!*
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息