echarts_api.js 3.4 KB
function line(options){
	var option={
		title: {
	        text: '折线图堆叠'
	    },
	    tooltip: {
	        trigger: 'axis'
	    },
	    legend: {
	        data:['邮件营销','联盟广告']
	    },	    
	    toolbox: {
	        feature: {
	            saveAsImage: {}
	        }
	    },
	    xAxis: {
	        type: 'category',
	        boundaryGap: false,
	        data: ['周一','周二','周三','周四','周五','周六','周日']
	    },
	    yAxis: {
	        type: 'value'
	    }
	}
	options=Object.assign({},option,options);
	for(var i=0;i<options.series.length;i++){
		options.series[i].type='line';
	}
	return options;
}
function pie(options){
	var option=option = {
	    tooltip: {
	        trigger: 'item',
	        formatter: "{a} <br/>{b}: {c} ({d}%)"
	    },
	    legend: {
	        orient: 'vertical',
	        x: 'left',
	        data:['直接访问','邮件营销']
	    },
	    series: [
	        {
	        	center:[106,120],
	            name:'访问来源',
	            type:'pie',
	            radius: ['70%', '90%'],
	            avoidLabelOverlap: false,
	            label: {
	                normal: {
	                    show: false,
	                    position: 'center'
	                },
	                emphasis: {
	                    show: true,
	                    textStyle: {
	                        fontSize: '14',
	                        fontWeight: 'bold'
	                    }
	                }
	            },
	            labelLine: {
	                normal: {
	                    show: false
	                }
	            },
	            data:[
	                {value:335, name:'直接访问'},
	                {value:310, name:'邮件营销'}	                
	            ]
	        }
	    ]
	};
	var n=Object.assign({},option,options);
	n.series=option.series;
	n.series[0].data=options.series[0].data;
	return n;

}
function pie2(options){
	var option=option = {
	    tooltip: {
	        trigger: 'item',
	        formatter: "{a} <br/>{b}: {c} ({d}%)"
	    },
	    legend: {
	        orient: 'vertical',
	        x: 'left',
	        data:['直接访问','邮件营销']
	    },
	    series: [
	        {
	        	center:[110,110],
	            name:'访问来源',
	            type:'pie',
	            radius: ['60%', '90%'],
	            avoidLabelOverlap: false,
	            label: {
	                normal: {
	                    show: false,
	                    position: 'center'
	                },
	                emphasis: {
	                    show: true,
	                    textStyle: {
	                        fontSize: '14',
	                        fontWeight: 'bold'
	                    }
	                }
	            },
	            labelLine: {
	                normal: {
	                    show: false
	                }
	            },
	            data:[
	                {value:335, name:'直接访问'},
	                {value:310, name:'邮件营销'}	                
	            ]
	        }
	    ]
	};
	var n=Object.assign({},option,options);
	n.series=option.series;
	n.series[0].data=options.series[0].data;
	return n;

}
function init(id,options,type){ 
	var myChart = echarts.init(document.getElementById(id));
	if(type=='line'){
		options=line(options);
	}else if(type=='pie'){
		options=pie(options)
	}else if(type=='pie2'){
		options=pie2(options)
	}	

	myChart.setOption(options);
	return myChart;
}
exports.init=init;
exports.line=line;
exports.pie=pie;