From 52afe2d58776967da3a03b00d7f635fc6fd7d1a8 Mon Sep 17 00:00:00 2001 From: chenzeping <ChenZeping02609@163.com> Date: 星期一, 26 四月 2021 15:42:21 +0800 Subject: [PATCH] 标准值颜色标准 --- /dev/null | 581 ---------------------------------- src/components/BaseNav/WasteWater/WasteWaterIndex.vue | 14 src/components/BaseNav/WasteWater/WasteWaterRealChart.vue | 280 +++++++-------- src/components/BaseNav/WasteWater/WasteWaterDayChart.vue | 102 ++--- src/components/BaseNav/WasteGas/WasteGasRealChart.vue | 1 5 files changed, 186 insertions(+), 792 deletions(-) diff --git a/src/components/BaseNav/WasteGas/WasteGasRealChart.vue b/src/components/BaseNav/WasteGas/WasteGasRealChart.vue index c1b1705..de4951a 100644 --- a/src/components/BaseNav/WasteGas/WasteGasRealChart.vue +++ b/src/components/BaseNav/WasteGas/WasteGasRealChart.vue @@ -22,7 +22,6 @@ <el-option v-for="(item,index) in formData.regionList" :key="index" :label="item" :value="item"></el-option> </el-select> <el-button @click="querySearch">鏌ヨ</el-button> - <el-button>鏄庣粏琛�</el-button> </div> <div class="echarts-chart"> <div style="width:5rem;height:1.5rem;" ref="echarts"></div> diff --git a/src/components/BaseNav/WasteWater/HourData.vue b/src/components/BaseNav/WasteWater/HourData.vue deleted file mode 100644 index bda31d2..0000000 --- a/src/components/BaseNav/WasteWater/HourData.vue +++ /dev/null @@ -1,581 +0,0 @@ -<template> - <div class="echarts-box"> - <div class="tab-scroll"> - <PublicDataStandard :dataStandard="dataStandard"></PublicDataStandard> - <span class="time-select">{{ formData.startTime }}鈥攞{ formData.endTime }}</span> - </div> - <div class="echarts-form"> - <span class="demonstration">寮�濮嬫椂闂达細</span> - <el-date-picker - v-model="formData.startTime" - value-format="yyyy-MM-dd HH" - type="datetime"> - </el-date-picker> - <span class="demonstration">缁撴潫鏃堕棿锛�</span> - <el-date-picker - v-model="formData.endTime" - value-format="yyyy-MM-dd HH" - type="datetime"> - </el-date-picker> - <span class="demonstration">閲囨牱鐐规暟锛�</span> - <el-select v-model="formData.region" placeholder="璇烽�夋嫨" style="width: 80px"> - <el-option v-for="(item,index) in formData.regionList" :key="index" :label="item" :value="item"></el-option> - </el-select> - <el-button @click="querySearch()">鏌ヨ</el-button> - <el-button>鏄庣粏琛�</el-button> - </div> - <div class="echarts-chart"> - <div style="width:5rem;height:1.5rem;" ref="echartsHour"></div> - </div> - </div> -</template> - -<script> -import PublicDataStandard from '../PublicDataStandard' -import dayjs from 'dayjs' -import mapApi from '../../../api/mapApi' - -export default { - name: 'HourData', - components: { - PublicDataStandard - }, - data () { - return { - // tab鏍忎紶閫掓帴鏀舵暟鎹� - dataStandard: [ - { - current: { - name: '姘哀鍖栫墿', - val: 29.93 - }, - standard: { - name: '鏍囧噯', - val: 100 - } - }, - { - current: { - name: '浜屾哀鍖栫~', - val: 17.34 - }, - standard: { - name: '鏍囧噯', - val: 50 - } - }, - { - current: { - name: '鐑熷皹', - val: 6.93 - }, - standard: { - name: '鏍囧噯', - val: 30 - } - }, - { - current: { - name: '搴熸皵娴侀噺', - val: 120 - }, - standard: { - name: '', - val: null - } - }], - formData: { - region: '25', - regionList: [25, 50, 75, 100], - startTime: dayjs().subtract(16, 'hour').format('YYYY-MM-DD HH'), - endTime: dayjs().format('YYYY-MM-DD HH') - }, - chart: null, - jcdID: 1, - dataType: 2, - bzz: null, - bzzList: [], - bz: '' - } - }, - mounted () { - this.draw24Chart() - }, - methods: { - // 鐐瑰嚮鏌ヨ鍔熻兘 - querySearch () { - - }, - async draw24Chart () { - const data = { - onLineMonEmissPointId: 23, - monItemId: 28, - beginTime: this.formData.startTime, - endTime: this.formData.endTime, - dataType: this.dataType - } - const result = (await mapApi.getQueryOnlineMonData(data)).Result.DataInfo - // console.log(result) - this.get24HourDate(result) - }, - // 缁樺埗灏忔椂鏁版嵁鎶樼嚎鍥� - get24HourDate (result) { - if (result.length > 0) { - const d = result - const nameList = [] // 瀛樻斁鍥句緥 - const dateList = [] // 瀛樻斁鏃堕棿 - let dataList = [] // 瀛樻斁鏁版嵁 - let data = [] - const bzh = [] - for (let i = 0; i < d.length; i++) { - if (d[i].MonItemId === '29') { - continue - } - - const MonTimeStr = d[i].MonTimeStr - - let strDate - const d1 = MonTimeStr.split('/') // 鏈� - const d2 = d1[2].split(' ') - const t = MonTimeStr.split(' ') - const hlist = t[1].split(':') - const h = hlist[0] - if (d1[1] > 9) { - // strDate=MonTimeStr.substring(8,10)+"鏃�"; - if (d2[0] > 9) { - strDate = '' - if (h > 9) { - strDate += MonTimeStr.substring(11, 13) + '鏃�' - } else { - strDate += MonTimeStr.substring(11, 12) + '鏃�' - } - } else { - strDate = '' - if (h > 9) { - strDate += MonTimeStr.substring(10, 12) + '鏃�' - } else { - strDate += MonTimeStr.substring(10, 11) + '鏃�' - } - } - } else { - if (d2[0] > 9) { - strDate = '' - if (h > 9) { - strDate += MonTimeStr.substring(10, 12) + '鏃�' - } else { - strDate += MonTimeStr.substring(10, 11) + '鏃�' - } - } else { - strDate = '' - if (h > 9) { - strDate += MonTimeStr.substring(9, 11) + '鏃�' - } else { - strDate += MonTimeStr.substring(9, 10) + '鏃�' - } - } - } - - if (nameList.length === 0) { - nameList.push(d[i].PoltmtrlName.trim()) - dateList.push(strDate) - if ((d[i].PoltmtrlName === '搴熸按娴侀噺' || d[i].PoltmtrlName === '搴熸按') && d[i].MonQty < 0) { - d[i].MonQty = 0 - } - data.push(d[i].MonQty) - bzh.push(d[i].StdValue) - } else if (nameList.indexOf(d[i].PoltmtrlName.trim()) < 0) { - nameList.push(d[i].PoltmtrlName) - bzh.push(d[i].StdValue) - dataList.push(data) - data = [] - if ((d[i].PoltmtrlName === '搴熸按娴侀噺' || d[i].PoltmtrlName === '搴熸按') && d[i].MonQty < 0) { - d[i].MonQty = 0 - } - data.push(d[i].MonQty) - } else if (i === d.length - 1) { - if ((d[i].PoltmtrlName === '搴熸按娴侀噺' || d[i].PoltmtrlName === '搴熸按') && d[i].MonQty < 0) { - d[i].MonQty = 0 - } - data.push(d[i].MonQty) - dataList.push(data) - } else { - if (dateList.indexOf(strDate) < 0) { - dateList.push(strDate) - } - // data.push() - if ((d[i].PoltmtrlName === '搴熸按娴侀噺' || d[i].PoltmtrlName === '搴熸按') && d[i].MonQty < 0) { - d[i].MonQty = 0 - } - data.push(d[i].MonQty) - } - } - - const newList = [] - - for (let i = 0; i < dataList.length; i++) { - const list = dataList[i].reverse() - newList.push(list) - } - dataList = newList - - const lengList = [] - let objTemp - - for (let l = 0; l < nameList.length; l++) { - let obj - let iconUrl - if (nameList[l] === 'COD') { - iconUrl = 'image://../assets/imgs/legend/SO2.png' - } else if (nameList[l] === '姘ㄦ爱') { - iconUrl = 'image://../assets/imgs/legend/NOX.png' - } else if (nameList[l] === '鎬荤7') { - iconUrl = 'image://../assets/imgs/legend/YanChen.png' - } else if (nameList[l] === '鎬绘爱') { - iconUrl = 'image://../assets/imgs/legend/zongdan.png' - } else { - iconUrl = 'image://../assets/imgs/legend/VOCs.png' - } - - if (nameList[l] === '搴熸按' || nameList[l] === '搴熸按娴侀噺') { // 灏嗗簾姘存祦閲忔帓鍒版暟缁勬渶鍚� - objTemp = { - name: nameList[l], - icon: iconUrl, - textStyle: { - color: '#ccc' - }, - itemWidth: 20, - itemHeight: 5 - } - } else { - obj = { - name: nameList[l], - icon: iconUrl, - textStyle: { - color: '#ccc' - }, - itemWidth: 20, - itemHeight: 5 - } - lengList.push(obj) - } - } - lengList.push(objTemp) - - const legend = lengList - const xdata = dateList.reverse() - const ydatas = [] - - for (let j = 0; j < nameList.length; j++) { - let zdcbcolor, zxcolor - if (nameList[j] === 'COD') { - zdcbcolor = 'red' - zxcolor = '#fff21c' - } else if (nameList[j] === '姘ㄦ爱') { - zdcbcolor = 'red' - zxcolor = '#00B0F0' - } else if (nameList[j] === '搴熸按娴侀噺') { - zdcbcolor = 'red' - zxcolor = '#8fdc6e' - } - const ydata = { - name: nameList[j], - data: dataList[j], - zdcbcolor: zdcbcolor, - zxcolor: zxcolor, - bzz: bzh[j] - } - - this.bzz = { - name: nameList[j], - bzhui: bzh[j] - } - this.bzzList.push(this.bzz) - ydatas.push(ydata) - } - // console.log(ydatas) - - const yname = '娴撳害(mg/l)' - - this.effChartShow(legend, xdata, ydatas, yname, this.jcdID, this.datatype) - } - }, - effChartShow (legend, xdata, ydatas, yname, jcdID, datatype) { - // console.log(ydatas) - // 鍒濆鍖栧浘鏍� - this.chart = this.$echarts.init(this.$refs.echartsHour) - this.chart.clear() - // const bzlist = this.bzzList - // const bzz = this.bz - - let dataUnit = '' - if (datatype === 1) { - dataUnit = '娴侀噺(m鲁/d)' - } else { - dataUnit = '娴侀噺(m鲁/h)' - } - const bzzList = this.bzzList - const serLists = [] - for (let i = 0; i < ydatas.length; i++) { - const zdcbcolor = ydatas[i].zxcolor - const bz = ydatas[i].bzz - let obj - if (bz) { - obj = { - name: ydatas[i].name, - symbol: 'circle', // 鎶樼偣褰㈢姸 - symbolSize: 10, // 澶у皬 - smooth: false, // 鐩寸嚎 锛宼rue 涓烘洸绾� - itemStyle: { - normal: { - // color: function (c) { - // for (let i = 0; i < bzlist.length; i++) { - // if (bzlist[i].name === c.seriesName) { - // this.bzz = bzlist[i].bzhui - // } - // } - // if (c.value > bzz) { - // return zdcbcolor - // } else if (c.value > bzz * 0.9) { - // return '#FFA500' - // } else { - // return '#33c95f' - // } - // }, - lineStyle: { // 鎶樼嚎鐨勯鑹� - color: ydatas[i].zxcolor, - width: 5 - }, - borderColor: ydatas[i].zxcolor, // 鎶樼偣杈规鐨勯鑹� - label: { // 鏄剧ず鍊� - show: false - } - } - }, - type: 'line', - data: ydatas[i].data, - markLine: { // 骞冲潎鍊� 锛� 鍜� 鎸囨爣涓婇檺 - symbol: 'none', - data: [{ - label: { - normal: { - position: 'end', - formatter: ''// ydatas[i].name+'鏍囧噯鍊�' //+'{c}' - } - }, - name: '鏍囧噯鍊�', - yAxis: bz, - lineStyle: { - color: ydatas[i].zxcolor, - type: 'dashed', - width: 2 - } - }] - } - } - } else { - obj = { - name: ydatas[i].name, - symbol: 'circle', // 鎶樼偣褰㈢姸 - symbolSize: 10, // 澶у皬 - smooth: false, // 鐩寸嚎 锛宼rue 涓烘洸绾� - yAxisIndex: 1, - itemStyle: { - normal: { - color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹� - let biaozhuiz - for (let i = 0; i < bzzList.length; i++) { - if (bzzList[i].name === c.seriesName) { - biaozhuiz = bzzList[i].bzhui - } - } - if (c.value[1] > biaozhuiz) { - return zdcbcolor - } else if (c.value[1] > biaozhuiz * 0.9) { - return '#FFA500' - } else { - return '#33c95f' - } - }, - lineStyle: { // 鎶樼嚎鐨勯鑹� - color: ydatas[i].zxcolor, - width: 5 - }, - borderColor: 'black', // 鎶樼偣杈规鐨勯鑹� - label: { // 鏄剧ず鍊� - show: false - } - } - }, - type: 'line', - data: ydatas[i].data - } - } - serLists.push(obj) - } - const option = { - tooltip: { - trigger: 'axis', - axisPointer: { - type: 'cross', - label: { - color: '#1a4245' - } - }, - formatter: function (params) { - let s = params[0].name + '<br />' - for (let i = 0; i < params.length; i++) { - // let name = params[i].name - // 鍥捐〃title鍚嶇О - const seriesName = params[i].seriesName - // 鍊� - const value = params[i].value - - // let valueFliter = formatter(value) - const valueFliter = parseFloat(value).toFixed(2) - - let maker = params[i].marker - if (seriesName === 'COD') { - maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#fff21c;"></span>' - } else if (seriesName === '姘ㄦ爱') { - maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#00B0F0;"></span>' - } else if (seriesName === '鎬荤7') { - maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#f48183;"></span>' - } else if (seriesName === '搴熸按娴侀噺') { - maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#9ACD32;"></span>' - } else { - maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#d9f2f4;"></span>' - } - s += maker + seriesName + ':' + valueFliter + '<br />' - } - return s - } - }, - toolbox: { - show: false, - feature: { - saveAsImage: {} - } - }, - grid: { // 缃戞牸 - top: '20%' - // left: '15%' - }, - legend: { - data: legend - }, - dataZoom: [{ - type: 'inside', - start: 0, - end: 100 - }, { - start: 0, - end: 100, - show: false, - handleIcon: 'M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4v1.3h1.3v-1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7V23h6.6V24.4z M13.3,19.6H6.7v-1.4h6.6V19.6z', - handleSize: '80%', - handleStyle: { - color: '#fff', - shadowBlur: 3, - shadowColor: 'rgba(0, 0, 0, 0.6)', - shadowOffsetX: 2, - shadowOffsetY: 2 - } - }], - xAxis: { // x 杞磋缃� - type: 'category', - boundaryGap: false, - axisLabel: { // x杞村叏閮ㄦ樉绀� - // rotate: 20, - // interval: 0, - textStyle: { - color: '#fff' - } - }, - splitLine: { // 缃戞牸鍨傜洿绾夸负 铏氱嚎 - show: true, - lineStyle: { - type: 'dashed' - } - }, - axisTick: { // x 杞村埢搴︽樉绀� - show: false - }, - axisLine: { - lineStyle: { - color: '#FFFFFF', - width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑 - } - }, - data: xdata - }, - yAxis: [{ - type: 'value', - name: yname, - // max: function (value) { - // let max_val_list = [] // 鎵�鏈夋樉绀烘姌绾跨殑鏍囧噯鍊� - // if (bzzList && bzzList.length > 0) { - // $.each(bzzList, function (index, item) { - // max_val_list.push(item.bzhui) - // }) - // } - // max_val_list = max_val_list.sort(function (a, b) { - // return a - b - // }) // 鎺掑簭 - // let ma = value.max > max_val_list[max_val_list.length - 1] ? value.max + 5 : max_val_list[max_val_list.length - 1] - // return parseInt(ma) - // }, - axisLabel: { - formatter: '{value}', - textStyle: { - color: '#fff' - } - }, - axisPointer: { - snap: true - }, - splitLine: { - show: false - }, // y杞� 缃戞牸绾夸笉鏄剧ず, - axisLine: { - lineStyle: { - color: '#FFFFFF', - width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑 - } - } - }, { - type: 'value', - name: dataUnit, - axisLabel: { - formatter: '{value}', - textStyle: { - color: '#fff' - } - }, - axisPointer: { - snap: true - }, - splitLine: { - show: false - }, // y杞� 缃戞牸绾夸笉鏄剧ず, - // inverse: true, - // nameLocation: 'start', - // max:500, - axisLine: { - lineStyle: { - color: '#FFFFFF', - width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑 - } - } - }], - series: serLists - } - this.chart.setOption(option) - window.onresize = this.chart.resize - } - } -} -</script> - -<style scoped lang="less"> - -</style> diff --git a/src/components/BaseNav/WasteWater/DayData.vue b/src/components/BaseNav/WasteWater/WasteWaterDayChart.vue similarity index 86% rename from src/components/BaseNav/WasteWater/DayData.vue rename to src/components/BaseNav/WasteWater/WasteWaterDayChart.vue index 35f43e5..56bf366 100644 --- a/src/components/BaseNav/WasteWater/DayData.vue +++ b/src/components/BaseNav/WasteWater/WasteWaterDayChart.vue @@ -2,7 +2,7 @@ <div class="echarts-box"> <div class="tab-scroll"> <PublicDataStandard :dataStandard="dataStandard"></PublicDataStandard> - <span class="time-select">{{ formData.timeStart }}鈥攞{ formData.timeEnd }}</span> + <span class="time-select">{{ formData.timeStart }}鏃モ�攞{ formData.timeEnd }}鏃�</span> </div> <div class="echarts-form"> <span class="demonstration">寮�濮嬫椂闂达細</span> @@ -25,7 +25,7 @@ <el-button>鏄庣粏琛�</el-button> </div> <div class="echarts-chart"> - <div style="width:5rem;height:1.5rem;" ref="echartsday"></div> + <div style="width:5rem;height:1.5rem;" ref="echartsDay"></div> </div> </div> </template> @@ -36,9 +36,8 @@ import mapApi from '@/api/mapApi' export default { - name: 'DayData', + name: 'WasteWaterDayChart', components: { - // PublicDetailedList PublicDataStandard }, data () { @@ -128,18 +127,14 @@ let data const bzh = [] - // wrwIDS = [] - for (let i = 0; i < d.length; i++) { if (d[i].MonItemId === '29') { continue } - // 20190430 add 鑾峰彇鐩戞祴鐐筰d 姹℃煋鐗﹊d 妫�娴嬮」id - // getWRW(d[i]) const MonTimeStr = d[i].MonTimeStr const d1 = MonTimeStr.split('/') - // var d2=d1[2].split(' '); + // let d2=d1[2].split(' '); let strDate if (d1[1] > 9) { // if(d2[0]>9){ @@ -177,7 +172,7 @@ if (dateList.indexOf(strDate) < 0) { dateList.push(strDate) } - for (var j = 0; j < dataList.length; j++) { + for (let j = 0; j < dataList.length; j++) { if (d[i].PoltmtrlName.trim() === dataList[j].name) { dataList[j].data.push(d[i].MonQty) } @@ -186,16 +181,12 @@ } // 澶勭悊鏁版嵁缁撴潫 - var divid = 'mychart1eff' + const lengList = [] + let objTemp - var title = name - - var lengList = [] - var objTemp - - for (var l = 0; l < nameList.length; l++) { - var obj - var iconurl + for (let l = 0; l < nameList.length; l++) { + let obj + let iconurl if (nameList[l] === 'COD') { iconurl = 'image://../assets/imgs/legend/SO2.png' } else if (nameList[l] === '姘ㄦ爱') { @@ -244,7 +235,7 @@ const ydatas = [] for (let j = 0; j < nameList.length; j++) { - var zdcbcolor, zxcolor + let zdcbcolor, zxcolor if (nameList[j] === 'COD') { zdcbcolor = 'red' zxcolor = '#fff21c' @@ -281,26 +272,26 @@ } const yname = '娴撳害(mg/l)' - this.effChartShow(divid, title, legend, xdata, ydatas, yname, this.jcdID, this.datatype) + this.effChartShow(legend, xdata, ydatas, yname, this.jcdID, this.datatype) } }, - effChartShow (divid, title, legend, xdata, ydatas, yname, jcdID, datatype) { - this.chart = this.$echarts.init(this.$refs.echartsday) + effChartShow (legend, xdata, ydatas, yname, jcdID, datatype) { + this.chart = this.$echarts.init(this.$refs.echartsDay) this.chart.clear() // console.log(this.chart) this.chart.clear() - var dataUnit = '' + let dataUnit = '' if (datatype === 1) { dataUnit = '娴侀噺(m鲁/d)' } else { dataUnit = '娴侀噺(m鲁/h)' } const bzzList = this.bzzList - var serLists = [] - for (var i = 0; i < ydatas.length; i++) { - var zdcbcolor = ydatas[i].zxcolor - var bz = ydatas[i].bzz - var obj + const serLists = [] + for (let i = 0; i < ydatas.length; i++) { + const zdcbcolor = ydatas[i].zxcolor + const bz = ydatas[i].bzz + let obj if (bz) { obj = { name: ydatas[i].name, @@ -309,22 +300,21 @@ smooth: false, // 鐩寸嚎 锛宼rue 涓烘洸绾� itemStyle: { normal: { - // color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹� - // // var biaozhuiz - // let bzlist = this.bzzList - // for (let i = 0; i < this.bzzList.length; i++) { - // if (this.bzzList[i].name === c.seriesName) { - // this.bz = this.bzzList[i].bzhui - // } - // } - // if (c.value > this.bz) { - // return zdcbcolor - // } else if (c.value > this.bz * 0.9) { - // return '#FFA500' - // } else { - // return '#33c95f' - // } - // }, + color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹� + let biaozhuiz + for (let i = 0; i < bzzList.length; i++) { + if (bzzList[i].name === c.seriesName) { + biaozhuiz = bzzList[i].bzhui + } + } + if (c.value[1] > biaozhuiz) { + return zdcbcolor + } else if (c.value[1] > biaozhuiz * 0.9) { + return '#FFA500' + } else { + return '#33c95f' + } + }, lineStyle: { // 鎶樼嚎鐨勯鑹� color: ydatas[i].zxcolor, width: 5 @@ -397,7 +387,7 @@ } serLists.push(obj) } - var option = { + const option = { /* title: { text: title, }, */ @@ -410,18 +400,18 @@ } }, formatter: function (params) { - var s = params[0].name + '<br />' - for (var i = 0; i < params.length; i++) { - // var name = params[i].name + let s = params[0].name + '<br />' + for (let i = 0; i < params.length; i++) { + // let name = params[i].name // 鍥捐〃title鍚嶇О - var seriesName = params[i].seriesName + const seriesName = params[i].seriesName // 鍊� - var value = params[i].value + const value = params[i].value - // var valueFliter = formatter(value) - var valueFliter = parseFloat(value).toFixed(2) + // let valueFliter = formatter(value) + const valueFliter = parseFloat(value).toFixed(2) - var maker = params[i].marker + let maker = params[i].marker if (seriesName === 'COD') { maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#fff21c;"></span>' } else if (seriesName === '姘ㄦ爱') { @@ -500,7 +490,7 @@ type: 'value', name: yname, // max: function (value) { - // var max_val_list = [] // 鎵�鏈夋樉绀烘姌绾跨殑鏍囧噯鍊� + // let max_val_list = [] // 鎵�鏈夋樉绀烘姌绾跨殑鏍囧噯鍊� // if (bzzList && bzzList.length > 0) { // $.each(bzzList, function (index, item) { // max_val_list.push(item.bzhui) @@ -509,7 +499,7 @@ // max_val_list = max_val_list.sort(function (a, b) { // return a - b // }) // 鎺掑簭 - // var ma = value.max > max_val_list[max_val_list.length - 1] ? value.max + 5 : max_val_list[max_val_list.length - 1] + // let ma = value.max > max_val_list[max_val_list.length - 1] ? value.max + 5 : max_val_list[max_val_list.length - 1] // return parseInt(ma) // }, axisLabel: { diff --git a/src/components/BaseNav/WasteWater/WasteWaterIndex.vue b/src/components/BaseNav/WasteWater/WasteWaterIndex.vue index e64189b..f891ef9 100644 --- a/src/components/BaseNav/WasteWater/WasteWaterIndex.vue +++ b/src/components/BaseNav/WasteWater/WasteWaterIndex.vue @@ -41,8 +41,8 @@ import PublicSector from '../PublicSector' // 鍥捐〃缁勪欢 import RealData from './WasteWaterRealChart' -import HourData from './HourData' -import DayData from './DayData' +import HourData from './WasteWaterHoursChart' +import DayData from './WasteWaterDayChart' import Detail from './Detail' export default { @@ -103,23 +103,23 @@ .default-uncheck { background-color: #0e639e; - color: #fff; + color: #C0C0C0; cursor: pointer; } .hover { - background-color: #0e639e; - color: #fff; + background-color: #0e539e; + color: #ffffff; cursor: pointer; } .hover:hover { cursor: pointer; padding: 5px; - border: 1px solid #2b87c8; + border: 1px solid #5F9EA0; border-radius: 4px; text-align: center; - color: #fff; + color: #F0FFFF; } } diff --git a/src/components/BaseNav/WasteWater/WasteWaterRealChart.vue b/src/components/BaseNav/WasteWater/WasteWaterRealChart.vue index cf1c44f..8d6654b 100644 --- a/src/components/BaseNav/WasteWater/WasteWaterRealChart.vue +++ b/src/components/BaseNav/WasteWater/WasteWaterRealChart.vue @@ -18,8 +18,8 @@ type="datetime"> </el-date-picker> <span class="demonstration">閲囨牱鐐规暟锛�</span> - <el-select v-model="region" placeholder="璇烽�夋嫨" style="width: 80px"> - <el-option v-for="(item,index) in regionList" :key="index" :label="item" :value="item"></el-option> + <el-select v-model="formData.region" placeholder="璇烽�夋嫨" style="width: 80px"> + <el-option v-for="(item,index) in formData.regionList" :key="index" :label="item" :value="item"></el-option> </el-select> <el-button @click="querySearch()">鏌ヨ</el-button> <!-- <el-button>鏄庣粏琛�</el-button>--> @@ -45,7 +45,6 @@ }, data () { return { - a: '', // tab鏍忎紶閫掓帴鏀舵暟鎹� dataStandard: [ { @@ -88,19 +87,22 @@ val: null } }], + // 琛ㄥ崟鏁版嵁缁戝畾鍊� formData: { + region: '25', + regionList: [25, 50, 75, 100], startTime: dayjs().subtract(3, 'minute').format('YYYY-MM-DD HH:mm:ss'), endTime: dayjs().format('YYYY-MM-DD HH:mm:ss') }, - region: '25', - regionList: [25, 50, 75, 100], - datatype: 1, + // 鏁版嵁鍒嗙被澶勭悊瀛樺偍鍒楄〃 RealTimeDataList: [], - bzz: null, - bzzList: [], + // 鐢ㄤ簬澶勭悊鏍囧噯鍊� + standardValues: null, + // 鏍囧噯鍊煎垪琛� + standardValuesList: [], + // 鐢ㄤ簬鍥捐〃灞曠ず璁剧疆鏁扮粍 nameList: [], - // legend绫诲埆鍥捐〃灞曠ず璁剧疆鏁扮粍 - lengList: [], + legendList: [], ydatas: [] } }, @@ -122,29 +124,31 @@ $endTime: this.formData.endTime, $step: 15 } - // console.log(data) const result = (await mapApi.getDataItems(data)).data // 鏁版嵁鎸夌被鍒垎缁� this.pointsSet(result) // 鍥炬爣瀛樺偍澶勭悊 this.legendSet() - // ydata鏁版嵁 + // y杞磀ata鏁版嵁 this.yDataSet() // 鏍规嵁宸叉湁鏁版嵁缁樺埗鍥捐〃 this.drawRealTimeDateChart() }, // 鎺ュ彛鏁版嵁鎸夌収 鏁版嵁鍐呭垎绫诲埆璁剧疆 pointsSet (d) { - let data = [] - let datalist = [] + // 鏁扮粍鏁版嵁缃┖ this.nameList = [] this.RealTimeDataList = [] + + let data = [] + let datalist = [] + for (let i = 0; i < d.length; i++) { - // this.RealTimeDataList = [] // 鍒ゆ柇鏄惁缁х画鎵ц if (d[i].ErrorMessage != null) { continue } + // temp 涓存椂鏁版嵁鍒ゆ柇鏂规硶 const tempList = [ { @@ -155,13 +159,12 @@ 'TJIP45.lscl2tb552AISA11202A': '搴熸按娴侀噺' } ] - // 鎸囨爣 + // 鎸囨爣 涓存椂鐢ㄤ簬鏁版嵁澶勭悊 const name = tempList[0][d[i].UnionTagCode] - // 鍒ゆ柇甯傚眬绫诲瀷杩涜鍒嗙粍 + + // 鍒ゆ柇甯傚眬绫诲瀷杩涜鍒嗙粍 =>鏁扮粍涓虹┖鏃� if (this.nameList.length === 0) { - // 鏁扮粍涓虹┖鏃� this.nameList.push(name) - // todo 鐢╠ayjs const newDate = new Date(d[i].ReadTime) data = { name: name, @@ -171,7 +174,6 @@ name: name, data: [data] } - // console.log('1111111') this.RealTimeDataList.push(datalist) } else if (this.nameList.indexOf(name) < 0) { // 娌℃湁鎸囨爣鏃� @@ -185,7 +187,6 @@ name: name, data: [data] } - // console.log('222222222') this.RealTimeDataList.push(datalist) } else if (i === d.length - 1) { // 寰幆鍒版渶鍚� @@ -200,7 +201,6 @@ name: name, data: [data] } - // console.log('3333333') this.RealTimeDataList.push(datalist) } else { const newDate = new Date(d[i].ReadTime) @@ -208,7 +208,6 @@ name: name, value: [newDate, d[i].TagValue] } - // console.log('444444') for (let k = 0; k < this.RealTimeDataList.length; k++) { if (this.RealTimeDataList[k].name === name) { this.RealTimeDataList[k].data.push(data) @@ -228,11 +227,10 @@ } } } - // console.log(this.RealTimeDataList) }, // legend绫诲埆鍥捐〃灞曠ず璁剧疆鏁扮粍 legendSet () { - this.lengList = [] + this.legendList = [] let objTemp for (let l = 0; l < this.nameList.length; l++) { let obj @@ -268,34 +266,34 @@ itemWidth: 20, itemHeight: 5 } - this.lengList.push(obj) + this.legendList.push(obj) } } - this.lengList.push(objTemp) + this.legendList.push(objTemp) }, // yDataSet 鏁版嵁澶勭悊 yDataSet () { - this.bzzList = [] + // 鏁扮粍娣诲姞鏁版嵁 缃┖ + this.standardValuesList = [] this.ydatas = [] for (let j = 0; j < this.nameList.length; j++) { - let zdcbcolor, zxcolor + let pointColor, lineColor if (this.nameList[j] === 'COD') { - zdcbcolor = 'red' - zxcolor = '#ffff00' + pointColor = 'red' + lineColor = '#ffff00' } else if (this.nameList[j] === '姘ㄦ爱') { - zdcbcolor = 'red' - zxcolor = '#00B0F0' + pointColor = 'red' + lineColor = '#00B0F0' } else if (this.nameList[j] === '鎬荤7') { - zdcbcolor = 'red' - zxcolor = '#f48183' + pointColor = 'red' + lineColor = '#f48183' } else if (this.nameList[j] === '鎬绘爱') { - zdcbcolor = 'red' - zxcolor = '#e0ffff' + pointColor = 'red' + lineColor = '#e0ffff' } else if (this.nameList[j] === '搴熸按娴侀噺') { - zdcbcolor = 'red' - zxcolor = '#9ACD32' + pointColor = 'red' + lineColor = '#9ACD32' } - let ydata // 涓存椂鏁版嵁 const BBZMAPPING = { @@ -308,26 +306,20 @@ for (let m = 0; m < this.RealTimeDataList.length; m++) { let stdValue = null if (this.RealTimeDataList[m].name === this.nameList[j]) { - for (const p in BBZMAPPING) { - // console.log('p' + p) - this.a = p - stdValue = BBZMAPPING[this.RealTimeDataList[m].name] - } - // console.log(stdValue) - this.bzz = { + stdValue = BBZMAPPING[this.RealTimeDataList[m].name] + this.standardValues = { name: this.nameList[j], - bzhui: stdValue + standardValue: stdValue } - ydata = { + const yData = { name: this.nameList[j], data: this.RealTimeDataList[m].data, - zdcbcolor: zdcbcolor, - zxcolor: zxcolor, - bzz: stdValue + pointColor: pointColor, + lineColor: lineColor, + standardValue: stdValue } - // console.log(stdValue) - this.bzzList.push(this.bzz) - this.ydatas.push(ydata) + this.standardValuesList.push(this.standardValues) + this.ydatas.push(yData) } } } @@ -337,53 +329,58 @@ this.myChart = this.$echarts.init(this.$refs.echarts) this.myChart.clear() - const legend = this.lengList - const yname = '娴撳害(mg/m鲁)' - const bzzList = this.bzzList + // y杞翠晶杈规爣棰榥eme + const ySideName = '娴撳害(mg/m鲁)' + // 鏍囧噯鍊煎垪琛� + const standardValuesList = this.standardValuesList + // 搴旂敤浜庢暟鎹粨鏋滃垽鏂爣鍑嗗�� + let standardValue + + // series鏁版嵁瀛樺偍 const serLists = [] for (let i = 0; i < this.ydatas.length; i++) { - const zdcbcolor = this.ydatas[i].zdcbcolor - const bz = this.ydatas[i].bzz - // console.log(bz) - let obj + // 搴旂敤浜庢暟鎹鐞� + const pointColor = this.ydatas[i].pointColor + // 鏁版嵁鏍囧噯鍊� + const bz = this.ydatas[i].standardValue + let seriesObj + if (bz) { - obj = { + seriesObj = { name: this.ydatas[i].name, - // symbol:'circle', // 鎶樼偣褰㈢姸 - // symbolSize: 3, //澶у皬 - smooth: true, // 鐩寸嚎 锛宼rue 涓烘洸绾� + smooth: true, + type: 'line', + data: this.ydatas[i].data, + // borderColor: this.ydatas[i].pointColor, + borderColor: '#fff', itemStyle: { normal: { - color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹� - let biaozhuiz - for (let i = 0; i < bzzList.length; i++) { - if (bzzList[i].name === c.seriesName) { - biaozhuiz = bzzList[i].bzhui + color: function (c) { + for (let i = 0; i < standardValuesList.length; i++) { + if (standardValuesList[i].name === c.seriesName) { + standardValue = standardValuesList[i].standardValue } } - if (c.value[1] > biaozhuiz) { - return zdcbcolor - } else if (c.value[1] > biaozhuiz * 0.9) { + if (c.value[1] > standardValue) { + return pointColor + } else if (c.value[1] > standardValue * 0.7) { return '#FFA500' } else { return '#33c95f' } }, - lineStyle: { // 鎶樼嚎鐨勯鑹� - color: this.ydatas[i].zxcolor, + lineStyle: { + color: this.ydatas[i].lineColor, width: 2 }, - // borderColor:'black', //鎶樼偣杈规鐨勯鑹� label: { // 鏄剧ず鍊� show: false } } }, - type: 'line', - data: this.ydatas[i].data, - markLine: { // 骞冲潎鍊� 锛� 鍜� 鎸囨爣涓婇檺 + markLine: { symbol: 'none', data: [{ label: { @@ -396,16 +393,15 @@ yAxis: bz, lineStyle: { normal: { - color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹� - let biaozhuiz - for (let i = 0; i < bzzList.length; i++) { - if (bzzList[i].name === c.seriesName) { - biaozhuiz = bzzList[i].bzhui + color: function (c) { + for (let i = 0; i < standardValuesList.length; i++) { + if (standardValuesList[i].name === c.seriesName) { + standardValue = standardValuesList[i].standardValue } } - if (c.value[1] > biaozhuiz) { - return zdcbcolor - } else if (c.value[1] > biaozhuiz * 0.9) { + if (c.value[1] > standardValue) { + return pointColor + } else if (c.value[1] > standardValue * 0.7) { return '#FFA500' } else { return '#33c95f' @@ -413,62 +409,55 @@ } } } - } - ] + }] } } } else { - obj = { + seriesObj = { name: this.ydatas[i].name, - symbol: 'circle', // 鎶樼偣褰㈢姸 - symbolSize: 10, // 澶у皬 - smooth: false, // 鐩寸嚎 锛宼rue 涓烘洸绾� + symbol: 'circle', + symbolSize: 10, + smooth: false, yAxisIndex: 1, - // itemStyle: { - // normal: { - // color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹� - // for (let i = 0; i < this.bzzList.length; i++) { - // let biaozhuizs - // if (this.bzzList[i].name === c.seriesName) { - // biaozhuizs = this.bzzList[i].bzhui - // } - // console.log(biaozhuizs) - // } - // if (c.value[1] > 9) { - // return zdcbcolor - // } else { - // return '#33c95f' - // } - // }, - // lineStyle: { // 鎶樼嚎鐨勯鑹� - // color: this.ydatas[i].zxcolor, - // width: 5 - // }, - // borderColor: 'black', // 鎶樼偣杈规鐨勯鑹� - // label: { // 鏄剧ず鍊� - // show: false - // } - // } - // }, + // borderColor:'black', type: 'line', - data: this.ydatas[i].data + data: this.ydatas[i].data, + itemStyle: { + normal: { + color: function (c) { + for (let i = 0; i < standardValuesList.length; i++) { + if (standardValuesList[i].name === c.seriesName) { + standardValue = standardValuesList[i].standardValue + } + } + if (c.value[1] > standardValue) { + return pointColor + } else if (c.value[1] > standardValue * 0.9) { + return '#FFA500' + } else { + return '#33c95f' + } + }, + lineStyle: { // 鎶樼嚎鐨勯鑹� + color: this.ydatas[i].lineColor, + width: 2 + }, + label: { // 鏄剧ず鍊� + show: false + } + } + } } } - if (this.ydatas[i].name === '搴熸皵娴侀噺' || this.ydatas[i].name === '搴熸皵') { - obj.yAxisIndex = 1 + if (this.ydatas[i].name === '搴熸按娴侀噺' || this.ydatas[i].name === '搴熸按') { + seriesObj.yAxisIndex = 1 } - serLists.push(obj) + serLists.push(seriesObj) } - // console.log(serLists) - let dataUnit = '' - if (this.datatype === 1) { - dataUnit = '娴侀噺(m鲁/d)' - } else { - dataUnit = '娴侀噺(m鲁/h)' - } + const dataUnit = '娴侀噺(m鲁/h)' // echarts鍥捐〃option鏁版嵁 const options = { - tooltip: { // 鎻愮ず妗� + tooltip: { trigger: 'axis', axisPointer: { type: 'cross', @@ -479,8 +468,6 @@ formatter: function (params) { let s = params[0].name + '<br />' for (let i = 0; i < params.length; i++) { - // let name = params[i].name - // 鍥捐〃title鍚嶇О const seriesName = params[i].seriesName // 鍊� const value = params[i].value[1] @@ -516,18 +503,18 @@ return s } }, - toolbox: { // 鎵撳嵃绛夊伐鍏� + toolbox: { show: false, feature: { saveAsImage: {} } }, - grid: { // 缃戞牸 + grid: { top: '20%', left: '15%' }, legend: { - data: legend + data: this.legendList }, dataZoom: [{ type: 'inside', @@ -547,10 +534,10 @@ shadowOffsetY: 2 } }], - xAxis: { // x 杞磋缃� + xAxis: { type: 'time', boundaryGap: false, - axisLabel: { // x杞村叏閮ㄦ樉绀� + axisLabel: { // rotate: 30, margin: 6, interval: 0, @@ -558,7 +545,7 @@ color: '#fff' } }, - splitLine: { // 缃戞牸鍨傜洿绾夸负 铏氱嚎 + splitLine: { show: true, lineStyle: { type: 'dashed' @@ -570,14 +557,13 @@ axisLine: { lineStyle: { color: '#FFFFFF', - width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑 + width: 1 } } - // data: xdata }, yAxis: [{ type: 'value', - name: yname, + name: ySideName, max: function (value) { return parseInt(value.max + 3) }, @@ -592,11 +578,11 @@ }, splitLine: { show: false - }, // y杞� 缃戞牸绾夸笉鏄剧ず, + }, axisLine: { lineStyle: { color: '#FFFFFF', - width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑 + width: 1 } } }, { @@ -613,14 +599,14 @@ }, splitLine: { show: false - }, // y杞� 缃戞牸绾夸笉鏄剧ず, + }, // inverse: true, // nameLocation: 'start', // max:500, axisLine: { lineStyle: { color: '#FFFFFF', - width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑 + width: 1 } } }], -- Gitblit v1.8.0