$(function () { // var whdef = 100/1920;// 表示1920的设计图,使用100PX的默认值 var whdef = 100/916;// 表示1920的设计图,使用100PX的默认值 var wH = window.innerHeight;// 当前窗口的高度 var wW = window.innerWidth;// 当前窗口的宽度 // var rem = wW * whdef;// 以默认比例值乘以当前窗口宽度,得到该宽度下的相应FONT-SIZE值 var rem = wH * whdef;// 以默认比例值乘以当前窗口宽度,得到该宽度下的相应FONT-SIZE值 $('html').css('font-size', rem + "px"); //加载统计图1---能耗饼图 loadoOption1(); //加载统计图2---能耗条形图 loadoOption2(); //加载统计图3----能耗折线图 loadoOption3(); //加载统计图4----6个月能耗 loadoOption4(); //loadOptionYibiao1(); // loadOptionRiLi(); }) ; function loadOptionBaojingbar(){ } function getVirtulData() { var currDate = new Date(); var currMonth = echarts.format.formatTime('yyyy-MM', currDate); var date = +echarts.number.parseDate(currMonth+"-01"); var end = +echarts.number.parseDate(new Date()); var dayTime = 3600 * 24 * 1000; var data = []; for (var time = date; time < end; time += dayTime) { data.push([ echarts.format.formatTime('yyyy-MM-dd', time), Math.floor(Math.random() * 100) ]); } return data; } function getPieSeries(scatterData, chart) { return echarts.util.map(scatterData, function (item, index) { var center = chart.convertToPixel('calendar', item); return { id: index + 'pie', type: 'pie', center: center, label: { normal: { formatter: '{c}', position: 'inside' } }, radius: 25 , data: [] }; }); } function getPieSeriesUpdate(scatterData, chart) { return echarts.util.map(scatterData, function (item, index) { var center = chart.convertToPixel('calendar', item); return { id: index + 'pie', type: 'pie', center: center, label: { normal: { formatter: '{c}', position: 'inside' } }, radius: 25 , data: [ ] }; }); } function loadOptionRiLi(){ // var dom = document.getElementById("container"); // var myChart = echarts.init(dom); var app = {}; option = null; var cellSize = [120, 80]; var pieRadius = 30; var scatterData = getVirtulData(); if(myChartRiLi){ myChartRiLi.clear(); } option = { tooltip : {}, legend: { data: [ { name: '正常', // 设置文本为红色 textStyle: { color: 'white' } },{ name: '报警', // 设置文本为红色 textStyle: { color: 'white' } },{ name: '设备离线', // 设置文本为红色 textStyle: { color: 'white' } }], top: 1, color:'red' }, calendar: { top: 45, left: 'center', height:'auto', orient: 'vertical', cellSize: cellSize, splitLine: { show: true, lineStyle: { color: 'rgb(0,136,212)', width: 1, type: 'solid' } }, yearLabel: { show: false, textStyle: { fontSize: 30 } }, dayLabel: { margin: 7, firstDay: 1, nameMap: ['日', '一', '二', '三', '四', '五', '六'], color:'white', fontSize:13 }, monthLabel: { show: true }, itemStyle: { normal: { color: 'rgba(255,255,255,0)', borderWidth: 1, borderColor: 'rgb(0,136,212)' } }, range: ['2018-07'] }, series: [{ id: 'label', type: 'scatter', coordinateSystem: 'calendar', symbolSize: 1, label: { normal: { show: true, formatter: function (params) { return echarts.format.formatTime('dd', params.value[0]); }, offset: [-cellSize[0] / 2 + 10, -cellSize[1] / 2 + 10], textStyle: { color: 'white', fontSize: 14 }, } }, data: scatterData }] }; if (!app.inNode) { var pieInitialized; setTimeout(function () { pieInitialized = true; myChartRiLi.setOption({ series: getPieSeriesUpdate(scatterData, myChartRiLi) }); }, 10); app.onresize = function () { if (pieInitialized) { myChartRiLi.setOption({ series: getPieSeriesUpdate(scatterData, myChartRiLi) }); } }; }; if (option && typeof option === "object") { myChartRiLi.setOption(option, true); } } function loadOptionYibiao1(){ option = { tooltip : { formatter: "{a}
{b} : {c}%" }, toolbox: { show : true, feature : { mark : {show: true}, restore : {show: true}, saveAsImage : {show: true} } }, series : [ { name:'业务指标', type:'gauge', startAngle: 180, endAngle: 0, center : ['50%', '90%'], // 默认全局居中 radius : 320, axisLine: { // 坐标轴线 lineStyle: { // 属性lineStyle控制线条样式 width: 200 } }, axisTick: { // 坐标轴小标记 splitNumber: 10, // 每份split细分多少段 length :12, // 属性length控制线长 }, axisLabel: { // 坐标轴文本标签,详见axis.axisLabel formatter: function(v){ switch (v+''){ case '10': return '低'; case '50': return '中'; case '90': return '高'; default: return ''; } }, textStyle: { // 其余属性默认使用全局文本样式,详见TEXTSTYLE color: '#fff', fontSize: 15, fontWeight: 'bolder' } }, pointer: { width:50, length: '90%', color: 'rgba(255, 255, 255, 0.8)' }, title : { show : true, offsetCenter: [0, '-60%'], // x, y,单位px textStyle: { // 其余属性默认使用全局文本样式,详见TEXTSTYLE color: '#fff', fontSize: 30 } }, detail : { show : true, backgroundColor: 'rgba(0,0,0,0)', borderWidth: 0, borderColor: '#ccc', width: 100, height: 40, offsetCenter: [0, -40], // x, y,单位px formatter:'{value}%', textStyle: { // 其余属性默认使用全局文本样式,详见TEXTSTYLE fontSize : 50 } }, data:[{value: 50, name: '完成率'}] } ] }; //yibiao1.setOption(option); } //加载统计图1数据 function loadoOption1(){ myChart1.clear(); var data = [{ value:92, name: '室内灯' },{ value:132, name: '室外灯' }, { value: 181, name: '水泵' }, { value: 142, name: '空调' }, { value: 212, name: '电梯' }, { value: 28, name: '周边设施' }, { value: 382, name: '音响' }, { value: 41, name: '网络设施' }]; var option = { title: { text:'1000', subtext: '总功率', left:'center', top:'50%', padding:[24,0], textStyle:{ color:'#fff', fontSize:18, align:'center' } }, backgroundColor: 'rgba(255,255,255,0)', tooltip: { trigger: 'item', formatter: "{a}
{b}: {c} ({d}%)", extraCssText:'height:60px;', position: function (point, params, dom, rect, size) { // 鼠标坐标和提示框位置的参考坐标系是:以外层div的左上角那一点为原点,x轴向右,y轴向下 // 提示框位置 var x = 0; // x坐标位置 var y = 0; // y坐标位置 // 当前鼠标位置 var pointX = point[0]; var pointY = point[1]; // 外层div大小 // var viewWidth = size.viewSize[0]; // var viewHeight = size.viewSize[1]; // 提示框大小 var boxWidth = size.contentSize[0]; var boxHeight = size.contentSize[1]; // boxWidth > pointX 说明鼠标左边放不下提示框 if (boxWidth > pointX) { x = 5; } else { // 左边放的下 x = pointX - boxWidth; } // boxHeight > pointY 说明鼠标上边放不下提示框 if (boxHeight > pointY) { y = 5; } else { // 上边放得下 y = pointY - boxHeight; } return [x, y]; } }, legend: { orient: 'horizontal', top: '2%', left: 'center', data: ['室内灯','室外灯','空调','水泵','电梯','周边设施','音响','网络设施'], textStyle:{ fontSize: 11, color: '#6cbbe6' } }, series: [{ name: '受理数', type: 'pie', selectedMode: 'single', center : ['50%', '60%'], radius: ['40%', '58%'], color: ['#C1232B','#B5C334','#FCCE10','#E87C25','#27727B','#FE8463','#9BCA63','#FAD860','#F3A43B','#60C0DD'], label: { normal: { show: false, position: 'outside', formatter: '{b}', textStyle: { color: '#3db3cb', fontSize: 12 } } }, labelLine: { normal: { show: false, lineStyle: { color: '#3db3cb' } } }, animationDuration: function (idx) { // 越往后的数据延迟越大 return 10000; }, data: data }] }; myChart1.setOption(option); } //加载统计图2数据 function loadoOption2(){ myChart2.clear(); var option = { tooltip: { trigger: 'axis', axisPointer: { type: 'shadow' } }, grid: { top:'5%', left: '5%', right: '5%', bottom: '5%', containLabel: true, }, xAxis: { type: 'value', splitLine: {show: false}, boundaryGap: [0, 0.01], axisLabel:{ textStyle:{ color: '#6cbbe6' } }, }, yAxis: { type: 'category', splitLine: {show: false}, data: ['室内灯','室外灯','空调','水泵','电梯','周边设施','音响','网络设施'], axisLabel:{ textStyle:{ fontSize: 15, color: '#6cbbe6' } }, }, series: [ { name: '办理数', itemStyle: { normal: { color: function(params) { // build a color map as your need. var colorList = [ '#C1232B','#B5C334','#FCCE10','#E87C25','#27727B', '#FE8463','#9BCA63','#FAD860','#F3A43B','#60C0DD', '#D7504B','#C6E579','#F4E001','#F0805A','#26C0C0' ]; return colorList[params.dataIndex] }, shadowBlur:100, shadowColor: 'rgba(0, 0, 0, 0.5)', label : { show : false //隐藏标示文字 }, labelLine : { show : false //隐藏标示线 } } }, barWidth:20, barGap:40, type: 'bar', data: [92,132,142,181,212,28,382,41] } ] }; myChart2.setOption(option); } //加载统计图3数据 function loadoOption3(){ myChart3.clear(); var option = { title: { text: '最近6个月能耗统计', show: true, textStyle: { fontWeight: 'normal', fontSize: 22, color: '#3db3cb' }, left: '2%', top: '2%' }, tooltip: { trigger: 'axis', axisPointer: { lineStyle: { color: '#3db3cb' } } }, grid: { left: '3%', right: '4%', bottom: '3%', containLabel: true }, xAxis: [{ type: 'category', boundaryGap: false, axisLine: { lineStyle: { color: 'rgba(128, 128, 128, 0.5)' } }, axisLabel: { margin: 10, textStyle: { fontSize: 14, color: '#999' } }, data: ['2017-07', '2017-08', '2017-09', '2017-10', '2017-11', '2017-12'] }], yAxis: [{ type: 'value', name: '', axisTick: { show: false }, axisLine: { show:false, lineStyle: { color: '#fff' } }, axisLabel: { margin: 10, textStyle: { fontSize: 14, color: '#799dff' } }, splitLine: { lineStyle: { type: 'dashed', color: 'rgba(121, 157, 255, 0.5)' } } }], series: [{ name: '能耗统计', type: 'line', smooth: true, symbol: 'circle', symbolSize: 5, showSymbol: false, lineStyle: { normal: { width: 1 } }, areaStyle: { normal: { color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{ offset: 0, color: 'rgba(0, 136, 212, 0.2)' }, { offset: 1, color: 'rgba(0, 136, 212, 0)' }], false), shadowColor: 'rgba(0, 0, 0, 0.1)', shadowBlur: 10 } }, itemStyle: { normal: { color: 'rgb(0,136,212)', borderColor: 'rgba(0,136,212,0.2)', borderWidth: 12 } }, data: [120, 110, 145, 122, 165, 150] }, ] } myChart3.setOption(option); } //热门事项排行 function loadoOption4(){ myChart4.clear(); // var option = { // tooltip: { // trigger: 'axis', // axisPointer: { // type: 'shadow' // } // }, // grid: { // top:'5%', // left: '5%', // right: '5%', // bottom: '5%', // containLabel: true, // }, // yAxis: { // type: 'value', // // splitLine: {show: false}, // boundaryGap: [0, 0.01], // axisLabel:{ // textStyle:{ // color: '#6cbbe6' // } // }, // }, // xAxis: { // type: 'category', // splitLine: {show: false}, // data: ['价格','护士','再生育证审批','社会团体登记','医师执业注册','印刷企业设立','污染物排放','教师资格认定'], // axisLabel:{ // textStyle:{ // fontSize: 10, // color: '#6cbbe6' // } // }, // }, // series: [ // { // name: '办理数', // itemStyle: { // normal: { // color: function(params) { // // build a color map as your need. // var colorList = [ // '#C1232B','#B5C334','#FCCE10','#E87C25','#27727B', // '#FE8463','#9BCA63','#FAD860','#F3A43B','#60C0DD', // '#D7504B','#C6E579','#F4E001','#F0805A','#26C0C0' // ]; // return colorList[params.dataIndex] // }, // shadowBlur:100, // shadowColor: 'rgba(0, 0, 0, 0.5)' // } // }, // barWidth:10, // barGap:40, // type: 'bar', // data: [92,132,142,181,212,28,382,41] // } // ] // }; option = { tooltip : { trigger: 'axis' }, calculable : true, xAxis : [ { type : 'category', data : ['集水井','变压器','备变压器','消防泵','水泵'], axisLabel:{ textStyle:{ color: '#6cbbe6' } } } ], yAxis : [ { type : 'value', axisLabel:{ textStyle:{ color: '#6cbbe6' } } } ], series : [ { name:'报警统计', type:'bar', data:[2, 4, 7, 23, 9], itemStyle: { normal: { color: function(params) { // build a color map as your need. var colorList = [ '#C1232B','#B5C334','#FCCE10','#E87C25','#27727B' ]; return colorList[params.dataIndex] }, shadowBlur:100, shadowColor: 'rgba(0, 0, 0, 0.5)' } }, barWidth:80, barGap:40, markPoint : { data : [ {type : 'max', name: '最大值'}, {type : 'min', name: '最小值'} ] }, markLine : { data : [ {type : 'average', name: '平均值'} ] } } ] }; myChart4.setOption(option); }