var district = AUTH.user.area; var userType = AUTH.user.userType; var industry = AUTH.user.industry; var win = null; //窗口大小变化时延时刷新图表大小 $(window).resize(function () { var width = $(window).width(); $('#chartdiv').width(width - 150); winResize(); }); function winResize() { var width = $(window).width(); var height = $(window).height(); var left = (width - 900) / 2; var top = 80; $('.panel.window').css({ 'left': left + 'px' }); $('.window-shadow').css({ 'left': left + 'px' }); } $(document).ready(function () { win = $('#win').dialog({ title: '企业负荷详情', width: 900, height: 400, closed: true, cache: false, modal: true }); //设置root账号大小 if (G.is_root != 1) { $("#show1").hide(); $("#show2").hide(); $("#show3").hide(); $("#show4").hide(); $("#detail1").width(260); } setDate(); getIndustry(); showIndustry2(industry); initArea(); getArea2(); getArea3(); getMapMessage(); getDetail(); $("#btnQuery").on('click', function () { query(); }); $(".maxbox>div").each(function (i) { $(this).bind('click', function () { showCompanyFluctuationLoad(this); }); }); }); function transform(data) { if (data) { var transformData = []; $.each(data, function (i, n) { if (n['y'] == -9999) { n['y'] = null; } if (new Date(n['x']).getMinutes() % 10 == 0) { transformData.push(n); } }); return transformData; } return data; } function query() { var city = getCity(); var industry = '', industry2 = ''; try { industry = $("#industry").combobox('getValue'); } catch (err) { industry = ''; } try { industry2 = $("#industry2").combobox('getValue'); } catch (err) { industry2 = ''; } var date1 = $("#date1").datebox('getValue').replace(/-/g, ""); var date2 = $("#date2").datebox('getValue').replace(/-/g, ""); var date3 = $("#date3").datebox('getValue').replace(/-/g, ""); var first = $("#date1").datebox('getValue'); var second = $("#date2").datebox('getValue'); var third = $("#date3").datebox('getValue'); $("#firstDate").html(first); $("#secondDate").html(second); if (!time && !city) { return; } ajax({ url: '/web/flucatuationLoad/getFlucatuationLoad.json', type: 'POST', dataType: 'JSON', beforeSend: function () { $("#chartdiv").mask('数据加载中....'); }, data: { city: city, date1: date1, date2: date2, date3: date3, industry: industry, industry2: industry2 }, success: function (data) { $("#chartdiv").unmask(); if (data['status'] == 1) { data = data['data']; var today = {}; var yesterday = {}; var beforeday = {}; today['name'] = first; yesterday['name'] = second; beforeday['name'] = third; today['data'] = {}; yesterday['data'] = {}; beforeday['data'] = {}; if (null == data) { showDayChart([today, yesterday, beforeday], { title: { text: "单位:(万千瓦)" } }, ""); setMaxBox(false, '', '', false, '', '', date1, date2); return; } chatData = data['chatData']; today['data'] = transform(chatData['date1']); yesterday['data'] = transform(chatData['date2']); beforeday['data'] = transform(chatData['date3']); showDayChart([today, yesterday, beforeday], { title: { text: "单位:(万千瓦)" } }, ""); maxData = data['maxData']; todayMaxData = maxData['date1']; yesterdayMaxData = maxData['date2']; todayBoundState = todayMaxData['boundState']; var todayP = null; var todayGetTime = null; if (todayMaxData['p'] != null && todayMaxData['p'] != "") { todayP = todayMaxData['p']; } if (todayMaxData['getTime'] != null && todayMaxData['getTime'] != "") { todayGetTime = String(todayMaxData['getTime']); } yesterdayBoundState = todayMaxData['boundState']; var yesterdayP = null; var yesterdayGetTime = null; if (yesterdayMaxData['p'] != null && yesterdayMaxData['p'] != "") { yesterdayP = yesterdayMaxData['p']; } if (yesterdayMaxData['getTime'] != null && yesterdayMaxData['getTime'] != "") { yesterdayGetTime = String(yesterdayMaxData['getTime']); } setMaxBox(todayBoundState, todayP, todayGetTime, yesterdayBoundState, yesterdayP, yesterdayGetTime, date1, date2); setInfoMap(data); } }, error: function () { $("#chartdiv").unmask(); layer.msg(' 服务存在异常,请稍后再试!', { icon: 2 }); } }); } function setInfoMap(data) { $('#infoMap').empty(); if (_.has(data, 'infoMap')) { _.each(data['infoMap'], function (item, index) { var date = index; var one = $('

[' + date + '] 最大负荷:' + item.max + ', 最小负荷:' + item.min + ', 平均负荷:' + item.avg + '

'); $('#infoMap').append(one); }); } } function getCity() { var area2, area3; try { area2 = $("#area2").combobox('getValue'); } catch (err) { } try { area3 = $("#area3").combobox('getValue'); } catch (err) { } var city; if ("" != area3 && undefined != area3) { city = area3; } else if ("" != area2 && undefined != area2) { city = area2; } else { city = '640000'; } return city; } //企业负荷详情弹窗 function showCompanyFluctuationLoad(obj) { var text = $(".maxbox>.today dl:eq(0)").find('dd').html(); if (text == "") { return; } win.dialog('open'); var city = getCity(); var industry = $("#industry").combobox('getValue'); var industry2 = $("#industry2").combobox('getValue'); var time = $(obj).find("input").val(); $("#win p").remove(); $("#content tr").remove(); $("#content").append('' + '企业名称' + '负荷波动值(万千瓦)' + '地址'); $("#content").append('数据加载中......'); if (null == time || "" == time) { return; } ajax({ url: '/web/flucatuationLoad/getCompanyFlucatuationLoadDetail.json', type: 'POST', data: { city: city, industry: industry, industry2: industry2, time: time }, dataType: 'JSON', success: function (data) { $("#content tr").remove(); $("#content").append('' + '企业名称' + '负荷波动值(万千瓦)' + '地址'); if (data['status'] == 1) { var html; var host = jQuery.parseJSON(AUTH.site.config).platform['01200009'] + '.' + AUTH.site.domain; host = "http://" + host; if (undefined === data['data'] || data['data'].length <= 0) { $("#win").append('

没有数据

'); } else { $.each(data['data'], function (i, n) { var content = ""; if (i % 2 !== 0) { content += "  " + n['companyName'] + "" content += "" + n['p'] + ""; content += "" + n['address'] + ""; } else { content += "  " + n['companyName'] + "" content += "" + n['p'] + ""; content += "" + n['address'] + ""; } content += ""; html += content; }) $("#content").append(html); } } } }); } //最大值设置 function setMaxBox(todayBoundState, todayP, todayGetTime, yesterdayBoundState, yesterdayP, yesterdayGetTime, date1, date2) { //拼日期时间 var t1 = todayGetTime.replace(/:/g, ""); var t2 = yesterdayGetTime.replace(/:/g, ""); $(".todayTime").attr("value", date1 + t1); $(".yesterdayTime").attr("value", date2 + t2); if (true == todayBoundState) { $(".maxbox>.today dl:eq(0)").find('dd').html("" + todayP + "万千瓦" + ""); } else { $(".maxbox>.today dl:eq(0)").find('dd').html("" == todayP ? "-" : todayP + "万千瓦"); } //$(".maxbox>.today dl:eq(1)").find('dd').html("" == todayGetTime ? "-" : todayGetTime.substring(8,10)+":"+todayGetTime.substring(10,12)+":"+todayGetTime.substring(12,14)); $(".maxbox>.today dl:eq(1)").find('dd').html(todayGetTime); if (true == yesterdayBoundState) { $(".maxbox>.yesterday dl:eq(0)").find('dd').html("" + yesterdayP + "万千瓦" + ""); } else { $(".maxbox>.yesterday dl:eq(0)").find('dd').html(null == yesterdayP ? "-" : yesterdayP + "万千瓦"); } //$(".maxbox>.yesterday dl:eq(1)").find('dd').html(null == yesterdayGetTime ? "-" : yesterdayGetTime.substring(8,10)+":"+yesterdayGetTime.substring(10,12)+":"+yesterdayGetTime.substring(12,14)); $(".maxbox>.yesterday dl:eq(1)").find('dd').html(yesterdayGetTime); } function setDate() { var current = new Date(); var today = new Date(current.getFullYear(), current.getMonth(), current.getDate()).format("yyyy-MM-dd"); var yesterday = new Date(current.getFullYear(), current.getMonth(), current.getDate() - 1).format("yyyy-MM-dd"); var beforeday = new Date(current.getFullYear(), current.getMonth(), current.getDate() - 2).format("yyyy-MM-dd"); $("#date1").datebox('setValue', today); $("#date2").datebox('setValue', yesterday); $("#date3").datebox('setValue', beforeday); } //饼图加载 function pieChartBuild(project, pieData) { $('#' + project).highcharts({ chart: { plotBackgroundColor: null, plotBorderWidth: null, plotShadow: false }, colors: ['#ED561B', '#24CBE5', '#64E572', '#FF9655', '#FFF263', '#6AF9C4'], tooltip: { pointFormat: ' {point.percentage:.1f}%({point.y})' }, title: { text: '' }, plotOptions: { pie: { allowPointSelect: true, cursor: 'pointer', size: 160, dataLabels: { enabled: false, format: '{point.name}: {point.percentage:.1f} %', style: { color: (Highcharts.theme && Highcharts.theme.contrastTextColor) || 'black' } }, showInLegend: true } }, series: [{ type: 'pie', // name: pieData.seriesName, data: pieData }] }); } var mapType; function getDetail() { var provinceName = $("#currentProName").val(); var cityName = $("#currentCName").val(); var districtName = $("#currentDisName").val(); ajax({ url: '/web/platformAnalyse/getDetail.json', type: 'POST', dataType: 'JSON', data: { provinceName: provinceName, cityName: cityName, districtName: districtName }, success: function (data) { if (data['status'] == 1) { data = data['data']; if (null != data['city'] && "" != data['city']) { $("#title").html(data['city'] + "运行情况"); } else if (null != data['province'] && "" != data['province']) { $("#title").html(data['province'] + "运行情况"); } else { $("#title").html("全国运行情况"); } $("#NotonlineCount").html("" + data['NotonlineCount'] + ""); $("#customer").html(data['customer']); $("#totalCount").html(data['totalCount']); $("#total").html(data['total'] + " 万千伏安"); var dataArr = []; var arr1 = ['异常运行', data['NotonlineCount']]; var arr2 = ['在线', data['onlineCount']]; dataArr.push(arr1); dataArr.push(arr2); pieChartBuild("container1", dataArr); } } }); } function initDialog(flag) { var provinceName = $("#currentProName").val(); var cityName = $("#currentCName").val(); var districtName = $("#currentDisName").val(); $("#content tr").remove(); $("#content").append('' + '企业名称' + '负荷波动值(万千瓦)' + '地址'); $("#content").append('数据加载中......'); ajax({ url: '/web/platformAnalyse/getCompanyDetail.json', type: 'POST', data: { provinceName: provinceName, cityName: cityName, districtName: districtName }, dataType: 'JSON', success: function (data) { $("#content tr").remove(); $("#content").append('' + '企业名称' + '监测点总数' + '当前运行异常数' + '连续三月运行异常数' + '服务公司名称'); if (data['status'] == 1) { var host = jQuery.parseJSON(AUTH.site.config).platform['01200009'] + '.' + AUTH.site.domain; host = "http://" + host; var html; $.each(data['data'], function (i, n) { var content = ""; if (i % 2 !== 0) { content += "  " + n['companyName'] + "" content += "" + n['totalCount'] + ""; content += "" + n['notOnlineCount'] + ""; content += "" + n['threeMonthNotOnlineCount'] + ""; content += "  " + n['serviceCompany'] + ""; } else { content += "  " + n['companyName'] + "" content += "" + n['totalCount'] + ""; content += "" + n['notOnlineCount'] + ""; content += "" + n['threeMonthNotOnlineCount'] + ""; content += "  " + n['serviceCompany'] + ""; } content += ""; html += content; }) $("#content").append(html); } } }); } function showCompanyDetail() { win.dialog('open'); initDialog(); } function getCityDetail() { var provinceName = $("#currentProName").val(); var cityName = $("#currentCName").val(); var districtName = $("#currentDisName").val(); ajax({ url: '/web/platformAnalyse/getCityDetail.json', type: 'POST', dataType: 'JSON', data: { provinceName: provinceName, cityName: cityName, districtName: districtName }, success: function (data) { if (data['status'] == 1) { $("#cityContainer").css("display", ""); if (null != districtName && "" != districtName) { $("#title1").html(districtName + "运行情况"); } else if (null != cityName && "" != cityName) { $("#title1").html(cityName + "运行情况"); } else if (null != provinceName && "" != provinceName) { $("#title1").html(provinceName + "运行情况"); } data = data['data']; $("#NotonlineCount1").html("" + data['NotonlineCount'] + ""); $("#customer1").html(data['customer']); $("#totalCount1").html(data['totalCount']); $("#total1").html(data['total'] + " 万千伏安"); var dataArr = []; var arr1 = ['异常运行', data['NotonlineCount']]; var arr2 = ['在线', data['onlineCount']]; dataArr.push(arr1); dataArr.push(arr2); pieChartBuild("container2", dataArr); } } }); } function getMapMessage() { var provinceName = $("#currentProName").val(); var cityName = $("#currentCName").val(); ajax({ url: '/web/platformAnalyse/getMapMessage.json', type: 'POST', dataType: 'JSON', data: { provinceName: provinceName, cityName: cityName }, success: function (data) { if (data['status'] == 1) { data = data['data']; if (null != data['district'] && '' != data['district']) { var district; var dataArr = data['dataArr']; for (var pos in dataArr) { if (dataArr[pos]['name'] == data['district']) district = [{ name: data['district'], value: dataArr[pos]['value'], selected: true }] } loadAreaMap(district, data['max'], data['min'], data['city']); } else if (null != data['city'] && '' != data['city']) { loadCityMap(data['dataArr'], data['max'], data['min'], data['city']); } else if (null != data['province'] && '' != data['province']) { loadProvinceMap(data['dataArr'], data['max'], data['min'], data['province']); } else { loadChinaMap(data['dataArr'], data['max'], data['min']); } } } }); } function initArea() { //initOneArea('#area1'); initOneArea('#area2'); initOneArea('#area3'); } function initOneArea(el) { var arr = [{ "id": "", "title": "请选择", "selected": "true" }]; h = arr.length * 24; $(el).combobox({ data: arr, valueField: 'id', textField: 'title', width: 80, panelHeight: h }); } function getArea1() { ajax({ url: '/web/area/getComboxData.json', type: 'POST', dataType: 'JSON', success: function (data) { if (data['status'] == 1) { if (data['data'].length === 1) { data['data'][0].selected = 'true' } var h = data['data'].length * 24; h = h > 240 ? 240 : h; $("#area1").combobox({ data: data['data'], valueField: 'id', textField: 'title', width: 80, panelHeight: h, onChange: function () { getArea2(); query(); } }); query(); } } }); } function getArea2() { //var parentId = $("#area1").combobox('getValue'); ajax({ url: '/web/platformAnalyse/getArea.json', // url: '/web/area/getComboxData.json', type: 'POST', dataType: 'JSON', /*data: { parentId: parentId, },*/ success: function (data) { if (data['status'] == 1) { var list = data['data']; var h = list.length * 24; h = h > 240 ? 240 : h; area = data['data']; $("#area2").combobox({ data: list, valueField: 'value', textField: 'text', width: 80, panelHeight: h, onChange: function () { getArea3(); query(); } }); } } }); } function getArea3() { var parentId = $("#area2").combobox('getValue'); ajax({ url: '/web/area/getComboxData.json', type: 'POST', dataType: 'JSON', data: { parentId: parentId, }, success: function (data) { if (data['status'] == 1) { var list = data['data']; list.unshift({ "id": "", "title": "请选择", "selected": "true" }); var h = list.length * 24; h = h > 240 ? 240 : h; $("#area3").combobox({ data: list, valueField: 'id', textField: 'title', width: 80, panelHeight: h, onChange: function () { query(); } }); } } }); } function getIndustry() { ajax({ url: '/web/industry/getTopIndustryComboData.json', data: { id: -1 }, type: 'POST', dataType: 'JSON', success: function (data) { var industryData = [{ 'value': "", 'text': "全部", "selected": "true" }]; $.each(data, function (i, n) { var json = {}; json['value'] = n['id']; json['text'] = n['title']; industryData.push(json); }); init_industry(industryData); } }); } function init_industry(industryData) { var h = industryData.length * 24; h = h > 240 ? 240 : h; $("#industry").combobox({ data: industryData, valueField: 'value', textField: 'text', width: 80, panelHeight: h, onSelect: function (rec) { showIndustry2(rec.value); query(); } }); }; function showIndustry2(id) { if (null == id || '' == id) { var industry2Data = [{ "value": "", "text": "请选择", "selected": "true" }]; init_industry2(industry2Data); return; } ajax({ url: '/web/industry/getIndustryComboDataByParent.json?industryCode=' + id, success: function (data) { var industryData2 = [{ "value": "", "text": "请选择", "selected": "true" }]; for (var i = 0; i < data.length; i++) { var json = {}; json['value'] = data[i].id; json['text'] = data[i].title; if (district == data[i].id) { json['selected'] = 'true'; } industryData2.push(json); } init_industry2(industryData2); } }); } function init_industry2(industryData2) { var h = industryData2.length * 24; h = h > 240 ? 240 : h; $("#industry2").combobox({ data: industryData2, valueField: 'value', textField: 'text', width: 80, panelHeight: h, onChange: function () { query(); } }); }; var myChart, ecConfig, zrEvent; var clickCount = 0; var clickTimer; //加载中国地图 function loadChinaMap(dataArr, max, min) { mapType = 'china'; // 路径配置 require.config({ paths: { echarts: 'http://static.vbdsm.com/js/lib/echarts/build/dist' } }); // 使用 require( ['echarts', 'echarts/chart/map'], // 使用柱状图就加载bar模块,按需加载 function (ec) { // 基于准备好的dom,初始化echarts图表 myChart = ec.init(document.getElementById('main')); var curIndx = 0; var mapType = []; var mapGeoData = require('echarts/util/mapData/params'); for (var city in cityMap) { mapType.push(city); // 自定义扩展图表类型 mapGeoData.params[city] = { getGeoJson: (function (c) { var geoJsonName = cityMap[c]; return function (callback) { $.getJSON('../js/geoJson/china-main-city/' + geoJsonName + '.jsonp', callback); } })(city) } } ecConfig = require('echarts/config'); zrEvent = require('zrender/tool/event'); myChart.on(ecConfig.EVENT.CLICK, function (param) { $("#currentProName").val(param.name); clickCount += 1; if (null != clickTimer) { return; } clickTimer = window.setInterval(function () { clearInterval(clickTimer); clickTimer = null; var doClick = function () { getCityDetail(); }; var doDBClick = function () { $("#cityContainer").css("display", "none"); getMapMessage(); getDetail(); }; if (clickCount == 1) { //单击的逻辑 doClick(); } else if (clickCount % 2 == 0) { //双击的逻辑 doDBClick(); } clickCount = 0; }, 300); }); option = { tooltip: { trigger: 'item', formatter: '{b}' }, dataRange: { min: min, max: max, realtime: false, text: ['高', '低'], // 文本,默认为数值文本 calculable: true, color: ['#d44f47', '#de7e39', '#e49a37', '#d9c224', '#84d653', '#47d077', '#50c38b', '#40ace4', '#3c9ef1'] }, series: [{ name: "china", type: 'map', mapType: "china", selectedMode: 'single', itemStyle: { normal: { label: { show: true }, areaStyle: { color: '#3c9ef1' } }, emphasis: { label: { show: true } } }, data: dataArr }] }; // 为echarts对象加载数据 myChart.setOption(option); }); }; //加载省地图 function loadProvinceMap(dataArr, max, min, provinceName) { mapType = 'province'; // 路径配置 require.config({ paths: { echarts: 'http://static.vbdsm.com/js/lib/echarts/build/dist' } }); // 使用 require( ['echarts', 'echarts/chart/map'], // 使用柱状图就加载bar模块,按需加载 function (ec) { // 基于准备好的dom,初始化echarts图表 myChart = ec.init(document.getElementById('main')); var curIndx = 0; var mapType = []; var mapGeoData = require('echarts/util/mapData/params'); for (var city in cityMap) { mapType.push(city); // 自定义扩展图表类型 mapGeoData.params[city] = { getGeoJson: (function (c) { var geoJsonName = cityMap[c]; return function (callback) { $.getJSON('../js/geoJson/china-main-city/' + geoJsonName + '.jsonp', callback); } })(city) } } ecConfig = require('echarts/config'); zrEvent = require('zrender/tool/event'); myChart.on(ecConfig.EVENT.CLICK, function (param) { $("#currentCName").val(param.name); clickCount += 1; if (null != clickTimer) { return; } clickTimer = window.setInterval(function () { clearInterval(clickTimer); clickTimer = null; var doClick = function () { getCityDetail(); }; var doDBClick = function () { $("#cityContainer").css("display", "none"); getMapMessage(); getDetail(); }; if (clickCount == 1) { //单击的逻辑 doClick(); } else if (clickCount % 2 == 0) { //双击的逻辑 doDBClick(); } clickCount = 0; }, 300); }); option = { tooltip: { trigger: 'item', formatter: '{b}' }, dataRange: { min: min, max: max, realtime: false, text: ['高', '低'], // 文本,默认为数值文本 calculable: true, color: ['#d44f47', '#de7e39', '#e49a37', '#d9c224', '#84d653', '#47d077', '#50c38b', '#40ace4', '#3c9ef1'] }, toolbox: { show: true, feature: { selfButtons: { //自定义按钮 danielinbiti,这里增加,selfbuttons可以随便取名字 show: true, //是否显示 title: '返回', //鼠标移动上去显示的文字 icon: 'http://static.vbdsm.com/js/lib/easyui/themes/icons/back.png', //图标 option: {}, onclick: function (option) { //点击事件,这里的option1是chart的option信息 $("#currentProName").val(""); $("#currentCName").val(""); $("#currentDisName").val(""); $("#cityContainer").css("display", "none"); getMapMessage(); getDetail(); } } } }, series: [{ name: provinceName, type: 'map', mapType: provinceName, selectedMode: 'single', itemStyle: { normal: { label: { show: true }, areaStyle: { color: '#3c9ef1' } }, emphasis: { label: { show: true } } }, data: dataArr }] }; // 为echarts对象加载数据 myChart.setOption(option); }); } //加载地市地图 function loadCityMap(dataArr, max, min, cityName) { mapType = 'city'; // 路径配置 require.config({ paths: { echarts: 'http://static.vbdsm.com/js/lib/echarts/build/dist' } }); // 使用 require( ['echarts', 'echarts/chart/map'], // 使用柱状图就加载bar模块,按需加载 function (ec) { // 基于准备好的dom,初始化echarts图表 myChart = ec.init(document.getElementById('main')); var curIndx = 0; var mapType = []; var mapGeoData = require('echarts/util/mapData/params'); for (var city in cityMap) { mapType.push(city); // 自定义扩展图表类型 mapGeoData.params[city] = { getGeoJson: (function (c) { var geoJsonName = cityMap[c]; return function (callback) { $.getJSON('../js/geoJson/china-main-city/' + geoJsonName + '.jsonp', callback); } })(city) } } ecConfig = require('echarts/config'); zrEvent = require('zrender/tool/event'); myChart.on(ecConfig.EVENT.CLICK, function (param) { $("#currentDisName").val(param.name); clickCount += 1; if (null != clickTimer) { return; } clickTimer = window.setInterval(function () { clearInterval(clickTimer); clickTimer = null; var doClick = function () { getCityDetail(); }; var doDBClick = function () { $("#currentProName").val(""); $("#currentCName").val(""); $("#currentDisName").val(""); $("#cityContainer").css("display", "none"); getMapMessage(); getDetail(); }; if (clickCount == 1) { //单击的逻辑 doClick(); } else if (clickCount % 2 == 0) { //双击的逻辑 doDBClick(); } clickCount = 0; }, 300); }); option = { tooltip: { trigger: 'item', formatter: '{b}' }, dataRange: { min: min, max: max, realtime: false, text: ['高', '低'], // 文本,默认为数值文本 calculable: true, color: ['#d44f47', '#de7e39', '#e49a37', '#d9c224', '#84d653', '#47d077', '#50c38b', '#40ace4', '#3c9ef1'] }, toolbox: { show: true, feature: { selfButtons: { //自定义按钮 danielinbiti,这里增加,selfbuttons可以随便取名字 show: true, //是否显示 title: '返回', //鼠标移动上去显示的文字 icon: 'http://static.vbdsm.com/js/lib/easyui/themes/icons/back.png', //图标 option: {}, onclick: function (option) { //点击事件,这里的option1是chart的option信息 $("#currentCName").val(""); $("#currentDisName").val(""); $("#cityContainer").css("display", "none"); getMapMessage(); getDetail(); } } } }, series: [{ name: cityName, type: 'map', mapType: cityName, selectedMode: 'single', itemStyle: { normal: { label: { show: true }, areaStyle: { color: '#3c9ef1' } }, emphasis: { label: { show: true } } }, data: dataArr }] }; // 为echarts对象加载数据 myChart.setOption(option); }); } //加载地市地图 function loadAreaMap(dataArr, max, min, cityName) { mapType = 'city'; // 路径配置 require.config({ paths: { echarts: 'http://static.vbdsm.com/js/lib/echarts/build/dist' } }); // 使用 require( ['echarts', 'echarts/chart/map'], // 使用柱状图就加载bar模块,按需加载 function (ec) { // 基于准备好的dom,初始化echarts图表 myChart = ec.init(document.getElementById('main')); var curIndx = 0; var mapType = []; var mapGeoData = require('echarts/util/mapData/params'); for (var city in cityMap) { mapType.push(city); // 自定义扩展图表类型 mapGeoData.params[city] = { getGeoJson: (function (c) { var geoJsonName = cityMap[c]; return function (callback) { $.getJSON('../js/geoJson/china-main-city/' + geoJsonName + '.jsonp', callback); } })(city) } } ecConfig = require('echarts/config'); zrEvent = require('zrender/tool/event'); option = { tooltip: { trigger: 'item', formatter: '{b}' }, dataRange: { min: min, max: max, realtime: false, text: ['高', '低'], // 文本,默认为数值文本 calculable: true, color: ['#d44f47', '#de7e39', '#e49a37', '#d9c224', '#84d653', '#47d077', '#50c38b', '#40ace4', '#3c9ef1'] }, toolbox: { show: false, feature: { selfButtons: { //自定义按钮 danielinbiti,这里增加,selfbuttons可以随便取名字 show: true, //是否显示 title: '返回', //鼠标移动上去显示的文字 icon: 'http://static.vbdsm.com/js/lib/easyui/themes/icons/back.png', //图标 option: {}, onclick: function (option) { //点击事件,这里的option1是chart的option信息 $("#currentCName").val(""); $("#currentDisName").val(""); $("#cityContainer").css("display", "none"); getMapMessage(); getDetail(); } } } }, series: [{ name: cityName, type: 'map', mapType: cityName, selectedMode: 'single', itemStyle: { normal: { label: { show: true }, areaStyle: { color: '#3c9ef1' } }, emphasis: { label: { show: true } } }, data: dataArr }] }; // 为echarts对象加载数据 myChart.setOption(option); }); } function showDayChart(series, yAxis, title) { $('#chartdiv').highcharts({ title: { text: title, x: -20 }, xAxis: { type: "datetime", tickInterval: 3 * 3600 * 1000, gridLineWidth: 1, // 默认是0,即在图上没有纵轴间隔线 // 自定义x刻度上显示的时间格式,根据间隔大小,以下面预设的小时/分钟/日的格式来显示 dateTimeLabelFormats: { hour: '%H:%M', day: "00:00" } }, yAxis: yAxis, tooltip: { crosshairs: { width: 1, color: 'gray' }, headerFormat: '时间:{point.key}
', pointFormat: '{series.name}: {point.y}
', valueDecimals: 2, // 数据值保留小数位数 xDateFormat: '%H:%M', shared: true }, legend: { borderWidth: 0 }, plotOptions: { column: { dataLabels: { enabled: false, color: (Highcharts.theme && Highcharts.theme.dataLabelsColor) || 'white' } }, series: { connectNulls: true } }, series: series }); } //扩展Date的format方法 Date.prototype.format = function (format) { var o = { "M+": this.getMonth() + 1, "d+": this.getDate(), "h+": this.getHours(), "m+": this.getMinutes(), "s+": this.getSeconds(), "q+": Math.floor((this.getMonth() + 3) / 3), "S": this.getMilliseconds() } if (/(y+)/.test(format)) { format = format.replace(RegExp.$1, (this.getFullYear() + "").substr(4 - RegExp.$1.length)); } for (var k in o) { if (new RegExp("(" + k + ")").test(format)) { format = format.replace(RegExp.$1, RegExp.$1.length == 1 ? o[k] : ("00" + o[k]).substr(("" + o[k]).length)); } } return format; }