|
|
@ -102,25 +102,18 @@ |
|
|
|
|
|
|
|
<!--质控对比--> |
|
|
|
<div v-if="currentTab === 'MWR'" class="picture-container contrast-picture-container picture-MWR"> |
|
|
|
|
|
|
|
<div class="picture"> |
|
|
|
<h2 class="title">质控前</h2> |
|
|
|
<canvas id='original-data-canvas'></canvas> |
|
|
|
</div> |
|
|
|
|
|
|
|
<!-- <div class="picture">--> |
|
|
|
<!-- <h2 class="title">温度异常值标记</h2>--> |
|
|
|
<!-- <canvas id='abnormal-canvas'></canvas>--> |
|
|
|
<!-- </div>--> |
|
|
|
|
|
|
|
|
|
|
|
<!-- <div class="picture">--> |
|
|
|
<!-- <h2 class="title">温度异常值标记</h2>--> |
|
|
|
<!-- <canvas id='abnormal-canvas'></canvas>--> |
|
|
|
<!-- </div>--> |
|
|
|
<div class="picture"> |
|
|
|
<h2 class="title">质控后</h2> |
|
|
|
<canvas id='interpolate-canvas'></canvas> |
|
|
|
</div> |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</div> |
|
|
|
|
|
|
|
<!--BP反演产品--> |
|
|
@ -140,17 +133,14 @@ |
|
|
|
</div> |
|
|
|
|
|
|
|
<div v-if="currentTab === 'kuoxian'" class="verticalProfile"> |
|
|
|
|
|
|
|
<div class="verticalProfile-picture"> |
|
|
|
<h2 class="verticalProfileTitle">温度廓线</h2> |
|
|
|
<div id="verticalProfileTemp" style="width: 400px;height: 400px"></div> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="verticalProfile-picture"> |
|
|
|
<h2 class="verticalProfileTitle">相对湿度廓线</h2> |
|
|
|
<div id="verticalProfileRelativeHumidity" style="width: 400px;height: 400px"></div> |
|
|
|
</div> |
|
|
|
|
|
|
|
<div class="verticalProfile-picture"> |
|
|
|
<h2 class="verticalProfileTitle">水汽密度廓线</h2> |
|
|
|
<div id="verticalProfileVaporDensity" style="width: 400px;height: 400px"></div> |
|
|
@ -203,13 +193,14 @@ |
|
|
|
</template> |
|
|
|
|
|
|
|
<script lang="ts"> |
|
|
|
import { onMounted, reactive, toRefs } from 'vue'; |
|
|
|
import {onMounted, reactive, toRefs} from 'vue'; |
|
|
|
import moment from "moment"; |
|
|
|
import { get } from '../uilts/axios'; |
|
|
|
import { BoxDrawer, ColorChart, createEmptyCanvas } from "../uilts/box-drawer"; |
|
|
|
import { Constant } from "../model/constant"; |
|
|
|
import { HighChartCreate } from "../model/high-chart-create"; |
|
|
|
import { ElMessage } from 'element-plus' |
|
|
|
import {get} from '../uilts/axios'; |
|
|
|
import {BoxDrawer, ColorChart, createEmptyCanvas} from "../uilts/box-drawer"; |
|
|
|
import {Constant} from "../model/constant"; |
|
|
|
import {HighChartCreate} from "../model/high-chart-create"; |
|
|
|
import {ElMessage} from 'element-plus' |
|
|
|
|
|
|
|
export default { |
|
|
|
name: 'MicrowaveRadiation', |
|
|
|
setup() { |
|
|
@ -244,7 +235,7 @@ export default { |
|
|
|
|
|
|
|
let options = reactive({ |
|
|
|
currentTab: 'MWR', |
|
|
|
currentRegion: 'jiangning', |
|
|
|
currentRegion: 'jiang-ning', |
|
|
|
currentType: 'TEMP', |
|
|
|
currentElement: 'six-minute', |
|
|
|
currentCategory: 'CAPE', |
|
|
@ -301,8 +292,7 @@ export default { |
|
|
|
verticalProfileTempInit() |
|
|
|
verticalProfileVaporDensityInit() |
|
|
|
verticalProfileRelativeHumidityInit() |
|
|
|
} |
|
|
|
else if (name === 'shixu') { |
|
|
|
} else if (name === 'shixu') { |
|
|
|
convectiveIndexProfileTimeChartInitCAPE() |
|
|
|
convectiveIndexProfileTimeChartInitCIN() |
|
|
|
kIndexChartInit() |
|
|
@ -368,8 +358,8 @@ export default { |
|
|
|
const convectiveIndexProfileTimeChartInitCAPE = () => { |
|
|
|
creates.convectiveIndexProfileTimeChartCAPE = new HighChartCreate('convectiveHighChartCAPE'); |
|
|
|
creates.convectiveIndexProfileTimeChartCAPE.setChart(); |
|
|
|
creates.convectiveIndexProfileTimeChartCAPE.setXAxis( '时间(时/分)', false); |
|
|
|
creates.convectiveIndexProfileTimeChartCAPE.setYAxis('CAPE(J/kg)', 800, 0, 100,9); |
|
|
|
creates.convectiveIndexProfileTimeChartCAPE.setXAxis('时间(时/分)', false); |
|
|
|
creates.convectiveIndexProfileTimeChartCAPE.setYAxis('CAPE(J/kg)', 800, 0, 100, 9); |
|
|
|
creates.convectiveIndexProfileTimeChartCAPE.setLegend(); |
|
|
|
creates.convectiveIndexProfileTimeChartCAPE.setTooltip('{point.category}: {point.y}(J/kg)'); |
|
|
|
creates.convectiveIndexProfileTimeChartCAPE.setSeries('CAPE') |
|
|
@ -379,8 +369,8 @@ export default { |
|
|
|
const convectiveIndexProfileTimeChartInitCIN = () => { |
|
|
|
creates.convectiveIndexProfileTimeChartCIN = new HighChartCreate('convectiveHighChartCIN'); |
|
|
|
creates.convectiveIndexProfileTimeChartCIN.setChart(); |
|
|
|
creates.convectiveIndexProfileTimeChartCIN.setXAxis( '时间(时/分)', false); |
|
|
|
creates.convectiveIndexProfileTimeChartCIN.setYAxis('CIN(J/kg)', 800, 0, 100,9); |
|
|
|
creates.convectiveIndexProfileTimeChartCIN.setXAxis('时间(时/分)', false); |
|
|
|
creates.convectiveIndexProfileTimeChartCIN.setYAxis('CIN(J/kg)', 800, 0, 100, 9); |
|
|
|
creates.convectiveIndexProfileTimeChartCIN.setLegend(); |
|
|
|
creates.convectiveIndexProfileTimeChartCIN.setTooltip('{point.category}: {point.y}(J/kg)'); |
|
|
|
creates.convectiveIndexProfileTimeChartCIN.setSeries('CIN') |
|
|
@ -391,8 +381,8 @@ export default { |
|
|
|
const kIndexChartInit = () => { |
|
|
|
creates.kIndexChart = new HighChartCreate('kIndexChart'); |
|
|
|
creates.kIndexChart.setChart(); |
|
|
|
creates.kIndexChart.setXAxis( '时间(时/分)', false); |
|
|
|
creates.kIndexChart.setYAxis('K(℃)', 40, -40, 10,9); |
|
|
|
creates.kIndexChart.setXAxis('时间(时/分)', false); |
|
|
|
creates.kIndexChart.setYAxis('K(℃)', 40, -40, 10, 9); |
|
|
|
creates.kIndexChart.setLegend(); |
|
|
|
creates.kIndexChart.setTooltip('{point.category}: {point.y}(℃)'); |
|
|
|
creates.kIndexChart.setSeries('K指数') |
|
|
@ -403,8 +393,8 @@ export default { |
|
|
|
const sandIndexInit = () => { |
|
|
|
creates.sandIndex = new HighChartCreate('sandIndexChart'); |
|
|
|
creates.sandIndex.setChart(); |
|
|
|
creates.sandIndex.setXAxis( '时间(时/分)', false); |
|
|
|
creates.sandIndex.setYAxis('SI(℃)', 30, 0, 3,11); |
|
|
|
creates.sandIndex.setXAxis('时间(时/分)', false); |
|
|
|
creates.sandIndex.setYAxis('SI(℃)', 30, 0, 3, 11); |
|
|
|
creates.sandIndex.setLegend(); |
|
|
|
creates.sandIndex.setTooltip('{point.category}: {point.y}(℃)'); |
|
|
|
creates.sandIndex.setSeries('沙式指数') |
|
|
@ -415,8 +405,8 @@ export default { |
|
|
|
const airPressureInit = () => { |
|
|
|
creates.airPressure = new HighChartCreate('airPressureChart'); |
|
|
|
creates.airPressure.setChart(); |
|
|
|
creates.airPressure.setXAxis( '时间(时/分)', false); |
|
|
|
creates.airPressure.setYAxis('LCL气压(hPa)', 1000, 300, 100,8); |
|
|
|
creates.airPressure.setXAxis('时间(时/分)', false); |
|
|
|
creates.airPressure.setYAxis('LCL气压(hPa)', 1000, 300, 100, 8); |
|
|
|
creates.airPressure.setLegend(); |
|
|
|
creates.airPressure.setTooltip('{point.category}: {point.y}(hPa)'); |
|
|
|
creates.airPressure.setSeries('LCL气压') |
|
|
@ -427,8 +417,8 @@ export default { |
|
|
|
const deltaTInit = () => { |
|
|
|
creates.deltaT = new HighChartCreate('deltaTChart'); |
|
|
|
creates.deltaT.setChart(); |
|
|
|
creates.deltaT.setXAxis( '时间(时/分)', false); |
|
|
|
creates.deltaT.setYAxis('deltaT(℃)', 1000, 300, 100,8); |
|
|
|
creates.deltaT.setXAxis('时间(时/分)', false); |
|
|
|
creates.deltaT.setYAxis('deltaT(℃)', 1000, 300, 100, 8); |
|
|
|
creates.deltaT.setLegend(); |
|
|
|
creates.deltaT.setTooltip('{point.category}: {point.y}(℃)'); |
|
|
|
creates.deltaT.setSeries('deltaT') |
|
|
@ -439,8 +429,8 @@ export default { |
|
|
|
const zeroHeightInit = () => { |
|
|
|
creates.zeroHeight = new HighChartCreate('zeroHeightChart'); |
|
|
|
creates.zeroHeight.setChart(); |
|
|
|
creates.zeroHeight.setXAxis( '时间(时/分)', false); |
|
|
|
creates.zeroHeight.setYAxis('hgt_0(m)', 10, 0, 1,11); |
|
|
|
creates.zeroHeight.setXAxis('时间(时/分)', false); |
|
|
|
creates.zeroHeight.setYAxis('hgt_0(m)', 10, 0, 1, 11); |
|
|
|
creates.zeroHeight.setLegend(); |
|
|
|
creates.zeroHeight.setTooltip('{point.category}: {point.y}(m)'); |
|
|
|
creates.zeroHeight.setSeries('hgt_0') |
|
|
@ -451,8 +441,8 @@ export default { |
|
|
|
const NegativeTwentyHeightInit = () => { |
|
|
|
creates.NegativeTwentyHeight = new HighChartCreate('NegativeTwentyHeightChart'); |
|
|
|
creates.NegativeTwentyHeight.setChart(); |
|
|
|
creates.NegativeTwentyHeight.setXAxis( '时间(时/分)', false); |
|
|
|
creates.NegativeTwentyHeight.setYAxis('hgt_-20(m)', 20, -20, 5,9); |
|
|
|
creates.NegativeTwentyHeight.setXAxis('时间(时/分)', false); |
|
|
|
creates.NegativeTwentyHeight.setYAxis('hgt_-20(m)', 20, -20, 5, 9); |
|
|
|
creates.NegativeTwentyHeight.setLegend(); |
|
|
|
creates.NegativeTwentyHeight.setTooltip('{point.category}: {point.y}(m)'); |
|
|
|
creates.NegativeTwentyHeight.setSeries('hgt_-20') |
|
|
@ -623,7 +613,7 @@ export default { |
|
|
|
|
|
|
|
const reloadQualityInterpolation = () => { |
|
|
|
options.specialStartTime = moment(options.currentTime).add(options.apiTimeLength, 'h').add(options.apiTimeInterval, 'm').format('YYYY-MM-DD HH:mm:00'); |
|
|
|
if (options.currentTab==='shixu_BPFY') { |
|
|
|
if (options.currentTab === 'shixu_BPFY') { |
|
|
|
if (options.currentElement === 'six-minute') { |
|
|
|
options.specialStartTime = moment(options.currentTime).add(-8, 'h').add(options.apiTimeInterval, 'm').format('YYYY-MM-DD HH:mm:00'); |
|
|
|
} |
|
|
@ -687,7 +677,7 @@ export default { |
|
|
|
const params = prepareApiParams(401, startTime, options.titleEndTime); |
|
|
|
get('/njplatform/radardata/getBpRangeData', params, Constant.baseUrl).then((response: any) => { |
|
|
|
// creates.verticalProfile.updateSeries(0, getVerticalProfileResponseData(response)); |
|
|
|
creates.verticalProfileTemp.updateSeries(0,getVerticalProfileResponseData(response)) |
|
|
|
creates.verticalProfileTemp.updateSeries(0, getVerticalProfileResponseData(response)) |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
@ -705,7 +695,7 @@ export default { |
|
|
|
const params = prepareApiParams(404, startTime, options.titleEndTime); |
|
|
|
get('/njplatform/radardata/getBpRangeData', params, Constant.baseUrl).then((response: any) => { |
|
|
|
// creates.verticalProfile.updateSeries(1, getVerticalProfileResponseData(response)); |
|
|
|
creates.verticalProfileRelativeHumidity.updateSeries(0,getVerticalProfileResponseData(response)) |
|
|
|
creates.verticalProfileRelativeHumidity.updateSeries(0, getVerticalProfileResponseData(response)) |
|
|
|
}) |
|
|
|
} |
|
|
|
|
|
|
@ -738,7 +728,7 @@ export default { |
|
|
|
const params = prepareApiParams('cape', startTime, options.titleEndTime); |
|
|
|
get('/njplatform/radardata/getBpRangeData', params, Constant.baseUrl).then((response: any) => { |
|
|
|
let data = convectiveIndexResponseData(response); |
|
|
|
creates.convectiveIndexProfileTimeChartCAPE.updateSeries(0,data[0]) |
|
|
|
creates.convectiveIndexProfileTimeChartCAPE.updateSeries(0, data[0]) |
|
|
|
creates.convectiveIndexProfileTimeChartCAPE.updateXAxis(data[1], 0) |
|
|
|
}) |
|
|
|
} |
|
|
@ -748,7 +738,7 @@ export default { |
|
|
|
const params = prepareApiParams('cin', startTime, options.titleEndTime); |
|
|
|
get('/njplatform/radardata/getBpRangeData', params, Constant.baseUrl).then((response: any) => { |
|
|
|
let data = convectiveIndexResponseData(response); |
|
|
|
creates.convectiveIndexProfileTimeChartCIN.updateSeries(0,data[0]) |
|
|
|
creates.convectiveIndexProfileTimeChartCIN.updateSeries(0, data[0]) |
|
|
|
creates.convectiveIndexProfileTimeChartCIN.updateXAxis(data[1], 0) |
|
|
|
}) |
|
|
|
} |
|
|
@ -758,7 +748,7 @@ export default { |
|
|
|
const params = prepareApiParams('K', startTime, options.titleEndTime); |
|
|
|
get('/njplatform/radardata/getBpRangeData', params, Constant.baseUrl).then((response) => { |
|
|
|
let data = convectiveIndexResponseData(response); |
|
|
|
creates.kIndexChart.updateSeries(0,data[0]) |
|
|
|
creates.kIndexChart.updateSeries(0, data[0]) |
|
|
|
creates.kIndexChart.updateXAxis(data[1], 0) |
|
|
|
}) |
|
|
|
} |
|
|
@ -769,7 +759,7 @@ export default { |
|
|
|
const params = prepareApiParams('SI', startTime, options.titleEndTime); |
|
|
|
get('/njplatform/radardata/getBpRangeData', params, Constant.baseUrl).then((response) => { |
|
|
|
let data = convectiveIndexResponseData(response); |
|
|
|
creates.sandIndex.updateSeries(0,data[0]) |
|
|
|
creates.sandIndex.updateSeries(0, data[0]) |
|
|
|
creates.sandIndex.updateXAxis(data[1], 0) |
|
|
|
}) |
|
|
|
} |
|
|
@ -780,7 +770,7 @@ export default { |
|
|
|
const params = prepareApiParams('LCL_pres', startTime, options.titleEndTime); |
|
|
|
get('/njplatform/radardata/getBpRangeData', params, Constant.baseUrl).then((response) => { |
|
|
|
let data = convectiveIndexResponseData(response); |
|
|
|
creates.airPressure.updateSeries(0,data[0]) |
|
|
|
creates.airPressure.updateSeries(0, data[0]) |
|
|
|
creates.airPressure.updateXAxis(data[1], 0) |
|
|
|
}) |
|
|
|
} |
|
|
@ -791,7 +781,7 @@ export default { |
|
|
|
const params = prepareApiParams('LCL_pres', startTime, options.titleEndTime); |
|
|
|
get('/njplatform/radardata/getBpRangeData', params, Constant.baseUrl).then((response) => { |
|
|
|
let data = convectiveIndexResponseData(response); |
|
|
|
creates.deltaT.updateSeries(0,data[0]) |
|
|
|
creates.deltaT.updateSeries(0, data[0]) |
|
|
|
creates.deltaT.updateXAxis(data[1], 0) |
|
|
|
}) |
|
|
|
} |
|
|
@ -802,7 +792,7 @@ export default { |
|
|
|
const params = prepareApiParams('hgt_0', startTime, options.titleEndTime); |
|
|
|
get('/njplatform/radardata/getBpRangeData', params, Constant.baseUrl).then((response) => { |
|
|
|
let data = convectiveIndexResponseData(response); |
|
|
|
creates.zeroHeight.updateSeries(0,data[0]) |
|
|
|
creates.zeroHeight.updateSeries(0, data[0]) |
|
|
|
creates.zeroHeight.updateXAxis(data[1], 0) |
|
|
|
}) |
|
|
|
} |
|
|
@ -813,7 +803,7 @@ export default { |
|
|
|
const params = prepareApiParams('hgt_-20', startTime, options.titleEndTime); |
|
|
|
get('/njplatform/radardata/getBpRangeData', params, Constant.baseUrl).then((response) => { |
|
|
|
let data = convectiveIndexResponseData(response); |
|
|
|
creates.NegativeTwentyHeight.updateSeries(0,data[0]) |
|
|
|
creates.NegativeTwentyHeight.updateSeries(0, data[0]) |
|
|
|
creates.NegativeTwentyHeight.updateXAxis(data[1], 0) |
|
|
|
}) |
|
|
|
} |
|
|
@ -966,26 +956,32 @@ export default { |
|
|
|
z-index: 100; |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.BPPicture { |
|
|
|
width: 65% !important; |
|
|
|
height: 45%; |
|
|
|
position: relative; |
|
|
|
#BP-temp, #BP-relative-humidity, #BP-vapor-density{ |
|
|
|
|
|
|
|
#BP-temp, #BP-relative-humidity, #BP-vapor-density { |
|
|
|
transform: scale(0.40, 0.4); |
|
|
|
} |
|
|
|
|
|
|
|
.title { |
|
|
|
left: 4.35rem!important; |
|
|
|
left: 3.85rem !important; |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
.shiXu { |
|
|
|
overflow-y: scroll; |
|
|
|
width: 100% !important; |
|
|
|
} |
|
|
|
|
|
|
|
.shiXuBP { |
|
|
|
flex-flow: column; |
|
|
|
align-content: space-around !important; |
|
|
|
} |
|
|
|
|
|
|
|
.picture-MWR { |
|
|
|
width: 100%; |
|
|
|
height: 100%; |
|
|
|