Echarts与ajax的联合使用,就是先ajax向后台请求数据,然后返回成功后,将数据填充到echarts图表中
ajax请求
function getAmountData(){
var dataStr = $("#searchForm").serialize();
$.ajax({
type : 'post',
url : url,
dataType : 'json',
data:dataStr,
async: false,
traditional :true,
error : function(request, textStatus,errorThrown)
{
alert(errotThrown);
},
success : function(data) {
//console.log(JSON.stringify(data));
var result=data.data;
var array = [];
if(result){
for(var i=0;i<result.length;i++){
var map ={};
map.name = result[i].name;
map.value = result[i].value;
array[i]=map;
}
loadEcharts(array)
}
}
});
}
echarts填充数据
/** 加载echarts图表 **/
function loadEcharts(array) {
// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('pieChart'));
option = {
title : {
text: '各区统计',
x:'center'
},
tooltip : {
trigger: 'item',
formatter: "{a} <br/>{b} : {c} ({d}%)"
},
legend: {
orient: 'vertical',
left: 'left',
data: ['type1','type2']
},
series : [
{
name: '工作统计',
type: 'pie',
radius : '55%',
center: ['50%', '50%'],
data:array,
itemStyle: {
emphasis: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}
]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
/*myChart.on('click', function (params) {
getDataByArea(params.name,params.value);
});*/
}