echarts 仪表盘实例

定义方法

function show() {
		var myChart = echarts.init(document.getElementById('container2'));
		var option = {
			title : {
				text : '超年限库存占比',
				x : 'center',
				textStyle : {
					fontSize : 15,
					lineHeight : '20px',
					fontWeight : 'normal',
					color : '#000'
				},
				textAlign : 'center',
				subtext : '单位:吨'
			},
			tooltip : {
				textStyle : {
					fontSize : 13,
					lineHeight : '20px',
					fontWeight : 'normal'
				}
			},
			toolbox : {
				show : false,
				feature : {
					mark : {
						show : true
					},
					restore : {
						show : true
					},
					saveAsImage : {
						show : true
					}
				}
			},
			series : [
				{
					name : '超年限库存占比',
					type : 'gauge',
					radius : '85%',
					center : [ '50%', '60%' ],
					splitNumber : 10, // 分割段数,默认为5
					axisLine : { // 坐标轴线
						lineStyle : { // 属性lineStyle控制线条样式
							color : [ [ 0.2, '#228b22' ], [ 0.8, '#48b' ], [ 1, '#ff4500' ] ],
							width : 10
						}
					},
					axisTick : { // 坐标轴小标记
						splitNumber : 10, // 每份split细分多少段
						length : 14, // 属性length控制线长
						lineStyle : { // 属性lineStyle控制线条样式
							color : 'auto'
						}
					},
					axisLabel : { // 坐标轴文本标签,详见axis.axisLabel
						textStyle : { // 其余属性默认使用全局文本样式,详见TEXTSTYLE
							color : 'auto'
						}
					},
					splitLine : { // 分隔线
						show : true, // 默认显示,属性show控制显示与否
						length : 30, // 属性length控制线长
						lineStyle : { // 属性lineStyle(详见lineStyle)控制线条样式
							color : 'auto'
						}
					},
					pointer : {//指针
						width : 7
					},
					//设置指针中间有个白点,但是不知为什么失效了,可能是echarts文档有问题
/*					markPoint:{
					    symbol:'circle',
					    symbolSize:5,
					    data:[
					    //跟你的仪表盘的中心位置对应上,颜色可以和画板底色一样
						    {
						    	x:'50%',y:'60%',itemStyle:{color:'#fff'}
						    }
					    ]
					    },*/
					title : {
						show : true,
						offsetCenter : [ 0, '-40%' ], // x, y,单位px
						textStyle : { // 其余属性默认使用全局文本样式,详见TEXTSTYLE
							fontWeight : 'bolder'
						}
					},
					detail : {
						formatter : '{value}%',
						textStyle : { // 其余属性默认使用全局文本样式,详见TEXTSTYLE
							color : 'auto',
							fontWeight : 'bolder',
							fontSize: 15
						},
						offsetCenter: [0, '60%'] 
					},
					data : []
				}
			]
		};
		myChart.setOption(option);
		$.ajax({
			url : contextPath + "/_data/busquery/inventory/storedtl/statistics",
			type : "post",
			data : {
			},
			traditional : true, //这里设置为true,将自动生成的[]符号去除
			dataType : "json",
			success : function(result) {
				var servicedata = [];
				var showdata = [];
				var formatdata = [];
				for (var i = 0; i < result.length; i++) {
					var obj = new Object();
					obj.name = result[i].name;
					obj.value = result[i].value;
					servicedata[i] = obj;
					formatdata[i] = result[i].value;
					if (result[i].name == "占比") {
						var obj = new Object();
						obj.name = "";
						obj.value = parseFloat(result[i].value).toFixed(2);
						showdata[i] = obj;
					}
				}
				myChart.setOption({
					series : [ {
						data : showdata,
					}],
					tooltip : {
						formatter: function () {
						   var edit = "超年限库存占比" + "<br>";
						   for (var i = 0; i < servicedata.length; i++) {
							   if (servicedata[i].name == "占比"){
								   edit += servicedata[i].name + ":" + parseFloat(servicedata[i].value).toFixed(2) +"%" + "<br>";
							   }else {
								   edit += servicedata[i].name + ":" + servicedata[i].value + "<br>";
							   }
						   }
						   return edit;
						}
					}
					
				});
			}
		});
	}

tooltip中的formatter是自己定义显示的值,没有需要的话按照官网的定义即可

调用的时候直接调用show方法

定义的div

<div id="container2" class="home_container_body_center"></div>

效果图:

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值