Browse Source

commit

master
xuhuihui 3 years ago
parent
commit
354b9fbfa4
  1. 10
      04.系统编码/Frontend/.idea/runConfigurations.xml
  2. 6
      04.系统编码/Frontend/src/components/MicrowaveRadiation.vue
  3. 51
      04.系统编码/Frontend/src/components/RamanLidar.vue
  4. 4
      04.系统编码/Frontend/src/model/heat-map-drawer.ts

10
04.系统编码/Frontend/.idea/runConfigurations.xml

@ -0,0 +1,10 @@
<?xml version="1.0" encoding="UTF-8"?>
<project version="4">
<component name="RunConfigurationProducerService">
<option name="ignoredProducers">
<set>
<option value="com.android.tools.idea.compose.preview.runconfiguration.ComposePreviewRunConfigurationProducer" />
</set>
</option>
</component>
</project>

6
04.系统编码/Frontend/src/components/MicrowaveRadiation.vue

@ -107,8 +107,8 @@
<!-- @change="onchangeSeason"--> <!-- @change="onchangeSeason"-->
<!-- active-value="1"--> <!-- active-value="1"-->
<!-- inactive-value="2"--> <!-- inactive-value="2"-->
<!-- active-text="普通"--> <!-- active-text=""-->
<!-- inactive-text="特殊"--> <!-- inactive-text=""-->
<!-- />--> <!-- />-->
<div class="picture special-picture"> <div class="picture special-picture">
<h2 class="title">质控前</h2> <h2 class="title">质控前</h2>
@ -882,7 +882,7 @@ export default {
'#FEA61B', '#FDED2A', '#C1FE46', '#7AFD86', '#FEA61B', '#FDED2A', '#C1FE46', '#7AFD86',
'#2BFDCD', '#05E6FD', '#14A0FA', '#1B5AFB', '#2BFDCD', '#05E6FD', '#14A0FA', '#1B5AFB',
'#1C1FF9', '#1310C4', '#09067C'], '#1C1FF9', '#1310C4', '#09067C'],
[999, 15, 12, 11, 9, 7, 5, 3, 1, -1, -3, -5, -7, -9, -11, -999] [999, -5, -7, -9, -11, -13, -15, -17, -19, -21, -23, -25, -27, -29, -31, -999]
); );
default: default:
throw new Error("无效的type类型"); throw new Error("无效的type类型");

51
04.系统编码/Frontend/src/components/RamanLidar.vue

@ -1,6 +1,7 @@
<template> <template>
<div class="tabs"> <div class="tabs">
<div :class="{'active': currentTab === 'MWR'}" class="tab-item" @click="onTabClick('MWR')"> <div :class="{'active': currentTab === 'MWR'}" class="tab-item"
@click="onTabClick('MWR')">
质控对比 质控对比
<img v-if="currentTab === 'MWR'" src="/images/line.png"/> <img v-if="currentTab === 'MWR'" src="/images/line.png"/>
</div> </div>
@ -14,7 +15,8 @@
光学特性 光学特性
<img v-if="currentTab === 'optical-property'" src="/images/line.png"/> <img v-if="currentTab === 'optical-property'" src="/images/line.png"/>
</div> </div>
<div :class="{'active': currentTab === 'aerosol-product'}" class="tab-item" @click="onTabClick('aerosol-product')"> <div :class="{'active': currentTab === 'aerosol-product'}" class="tab-item"
@click="onTabClick('aerosol-product')">
气溶胶产品 气溶胶产品
<img v-if="currentTab === 'aerosol-product'" src="/images/line.png"/> <img v-if="currentTab === 'aerosol-product'" src="/images/line.png"/>
</div> </div>
@ -153,7 +155,8 @@
</div> </div>
<div class="picture"> <div class="picture">
<h2 class="title">云顶高度</h2> <h2 class="title">
云顶高度</h2>
<div id="cloudTopHeight" style="width: 650px;height: 450px" v-loading="loadingCloudTopHeightStatus" <div id="cloudTopHeight" style="width: 650px;height: 450px" v-loading="loadingCloudTopHeightStatus"
custom-class="loading" element-loading-text="加载中"></div> custom-class="loading" element-loading-text="加载中"></div>
</div> </div>
@ -248,8 +251,8 @@ export default {
currentRegion: 'jn', currentRegion: 'jn',
currentElement: 'PBLH', currentElement: 'PBLH',
currentType: '边界层高度', currentType: '边界层高度',
// date: moment('2022-04-01 12:00:00').format('YYYY-MM-DD HH:mm:ss'), date: moment('2022-04-01 12:00:00').format('YYYY-MM-DD HH:mm:ss'),
date: moment().format('YYYY-MM-DD HH:mm:ss'), // date: moment().format('YYYY-MM-DD HH:mm:ss'),
times: [], times: [],
currentTime: null, currentTime: null,
downloadImgUrl: '/images/default-picture.png', downloadImgUrl: '/images/default-picture.png',
@ -332,8 +335,8 @@ export default {
const LidarRatioInit = () => { const LidarRatioInit = () => {
creates.LidarRatio = new HighChartCreate('LidarRatio'); creates.LidarRatio = new HighChartCreate('LidarRatio');
creates.LidarRatio.setChart(); creates.LidarRatio.setChart();
creates.LidarRatio.setSpecialXAxis('', 120, 0, 20); creates.LidarRatio.setSpecialXAxis('sr', 120, 0, 20);
creates.LidarRatio.setYAxis('高度(米)', 12000, 0, 2000, 7); creates.LidarRatio.setYAxis('高度(米)', 3000, 0, 500, 7);
creates.LidarRatio.setLegend(); creates.LidarRatio.setLegend();
creates.LidarRatio.setTooltip('高度: {point.y}'); creates.LidarRatio.setTooltip('高度: {point.y}');
for (let i = 0; i < 24; i++) { for (let i = 0; i < 24; i++) {
@ -506,7 +509,7 @@ export default {
creates.pm2Point5Drawer.close(); creates.pm2Point5Drawer.close();
} }
let matrix = converCloudRecognition(201, result, 'pm2_5'); let matrix = converCloudRecognition(201, result, 'pm2_5');
creates.pm2Point5Drawer = new HeatMapDrawer(800, 600, matrix, "pm2_5_chart",'', 'PM2_5'); creates.pm2Point5Drawer = new HeatMapDrawer(800, 600, matrix, "pm2_5_chart",'μg/m³', 'PM2_5');
creates.pm2Point5Drawer.setAxis(new CoordinateScale(options.timeArray), new CoordinateScale([0, 1000, 2000, 3000], true, true)); creates.pm2Point5Drawer.setAxis(new CoordinateScale(options.timeArray), new CoordinateScale([0, 1000, 2000, 3000], true, true));
creates.pm2Point5Drawer.setColorChart(preparePmColors()); creates.pm2Point5Drawer.setColorChart(preparePmColors());
creates.pm2Point5Drawer.draw(); creates.pm2Point5Drawer.draw();
@ -521,7 +524,7 @@ export default {
} }
let matrix = converCloudRecognition(201, result, 'pm10'); let matrix = converCloudRecognition(201, result, 'pm10');
creates.pm10Drawer = new HeatMapDrawer(800, 600, matrix, "pm10_chart", '', 'PM10'); creates.pm10Drawer = new HeatMapDrawer(800, 600, matrix, "pm10_chart", 'μg/m³', 'PM10');
creates.pm10Drawer.setAxis(new CoordinateScale(options.timeArray), new CoordinateScale([0, 1000, 2000, 3000], true, true)); creates.pm10Drawer.setAxis(new CoordinateScale(options.timeArray), new CoordinateScale([0, 1000, 2000, 3000], true, true));
creates.pm10Drawer.setColorChart(preparePmColors()); creates.pm10Drawer.setColorChart(preparePmColors());
creates.pm10Drawer.draw(); creates.pm10Drawer.draw();
@ -537,7 +540,6 @@ export default {
const drawLidarRatioCharts = (result: CustomeArray<any>) => { const drawLidarRatioCharts = (result: CustomeArray<any>) => {
if (result.length != 24) return; if (result.length != 24) return;
const data = LidarRatioPrepareChartData(result); const data = LidarRatioPrepareChartData(result);
for (let i = 0; i < 24; i++) { for (let i = 0; i < 24; i++) {
creates.LidarRatio.updateSeries(i, data[i]); creates.LidarRatio.updateSeries(i, data[i]);
} }
@ -610,20 +612,22 @@ export default {
result.forEach(item => { result.forEach(item => {
if (item.data == null) { if (item.data == null) {
let temp = []; let temp = [];
for (let i = 0; i < 801; i++) { for (let i = 0; i < 201; i++) {
temp.push([NaN]) temp.push([NaN])
} }
item.data = temp item.data = temp
} }
item.data.forEach((item, index) => { let newData = item.data.slice(0,201)
newData.forEach((item, index) => {
prepareData.push([item[0], index * 15]) prepareData.push([item[0], index * 15])
}) })
}) })
let results = []; let results = [];
for (let i = 0; i < prepareData.length; i+= 801) { for (let i = 0; i < prepareData.length; i+= 201) {
results.push(prepareData.slice(i, i + 801)) results.push(prepareData.slice(i, i + 201))
} }
return results; return results;
} }
const preparePmColors = () => { const preparePmColors = () => {
@ -656,7 +660,7 @@ export default {
} }
let matrix = converCloudRecognition(801, result, 'extinctionOptics'); let matrix = converCloudRecognition(801, result, 'extinctionOptics');
creates.opticsExtinctionDrawer = new HeatMapDrawer(800, 600, matrix, "extinction_optics_chart",'/km'); creates.opticsExtinctionDrawer = new HeatMapDrawer(800, 600, matrix, "extinction_optics_chart",'/km/sr');
creates.opticsExtinctionDrawer.setAxis(new CoordinateScale(options.timeArray), new CoordinateScale([0, 2000, 4000, 6000, 8000, 10000, 12000], true, true)); creates.opticsExtinctionDrawer.setAxis(new CoordinateScale(options.timeArray), new CoordinateScale([0, 2000, 4000, 6000, 8000, 10000, 12000], true, true));
creates.opticsExtinctionDrawer.setColorChart(prepareExtinctionnColors()); creates.opticsExtinctionDrawer.setColorChart(prepareExtinctionnColors());
creates.opticsExtinctionDrawer.draw(); creates.opticsExtinctionDrawer.draw();
@ -671,7 +675,7 @@ export default {
} }
let matrix = converCloudRecognition(101, result, 'singleWatervapor'); let matrix = converCloudRecognition(101, result, 'singleWatervapor');
creates.singleWatervaporDrawer = new HeatMapDrawer(800, 600, matrix, "watervapor_single_chart"); creates.singleWatervaporDrawer = new HeatMapDrawer(800, 600, matrix, "watervapor_single_chart",' g/g');
creates.singleWatervaporDrawer.setAxis(new CoordinateScale(options.timeArray), new CoordinateScale([0, 500, 1000, 1500], true, true)); creates.singleWatervaporDrawer.setAxis(new CoordinateScale(options.timeArray), new CoordinateScale([0, 500, 1000, 1500], true, true));
creates.singleWatervaporDrawer.setColorChart(prepareWatervaporColors()); creates.singleWatervaporDrawer.setColorChart(prepareWatervaporColors());
creates.singleWatervaporDrawer.draw(); creates.singleWatervaporDrawer.draw();
@ -686,7 +690,7 @@ export default {
} }
let matrix = converCloudRecognition(101, result, 'watervapor'); let matrix = converCloudRecognition(101, result, 'watervapor');
creates.watervaporDrawer = new HeatMapDrawer(800, 600, matrix, "watervapor_chart"); creates.watervaporDrawer = new HeatMapDrawer(800, 600, matrix, "watervapor_chart",'g/g');
creates.watervaporDrawer.setAxis(new CoordinateScale(options.timeArray), new CoordinateScale([0, 500, 1000, 1500], true, true)); creates.watervaporDrawer.setAxis(new CoordinateScale(options.timeArray), new CoordinateScale([0, 500, 1000, 1500], true, true));
creates.watervaporDrawer.setColorChart(prepareWatervaporColors()); creates.watervaporDrawer.setColorChart(prepareWatervaporColors());
creates.watervaporDrawer.draw(); creates.watervaporDrawer.draw();
@ -708,7 +712,7 @@ export default {
} }
let matrix = converCloudRecognition(801, result, 'extinction'); let matrix = converCloudRecognition(801, result, 'extinction');
creates.extinctionDrawer = new HeatMapDrawer(800, 600, matrix, "extinction_chart", '/km'); creates.extinctionDrawer = new HeatMapDrawer(800, 600, matrix, "extinction_chart", '/km/sr');
creates.extinctionDrawer.setAxis(new CoordinateScale(options.timeArray), new CoordinateScale([0, 2000, 4000, 6000, 8000, 10000, 12000], true, true)); creates.extinctionDrawer.setAxis(new CoordinateScale(options.timeArray), new CoordinateScale([0, 2000, 4000, 6000, 8000, 10000, 12000], true, true));
creates.extinctionDrawer.setColorChart(prepareExtinctionnColors()); creates.extinctionDrawer.setColorChart(prepareExtinctionnColors());
creates.extinctionDrawer.draw(); creates.extinctionDrawer.draw();
@ -856,7 +860,6 @@ export default {
if (name === 'boundary-layer-height') { if (name === 'boundary-layer-height') {
} else if (name === 'optical-property') { } else if (name === 'optical-property') {
opticalThicknessInit() opticalThicknessInit()
} else if (name === 'aerosol-product') { } else if (name === 'aerosol-product') {
LidarRatioInit() LidarRatioInit()
@ -870,10 +873,10 @@ export default {
// //
const onRegionClick = (region) => { const onRegionClick = (region) => {
options.currentRegion = region; options.currentRegion = region;
setTimeout(() => {
initEcharts(options.currentRegion)
reloadChangeData() reloadChangeData()
// cancelActive(); }, 500)
// setTitle(moment(options.date));
// activeImage();
} }
// //
@ -1246,11 +1249,11 @@ export default {
} }
#pm2_5_chart { #pm2_5_chart {
transform: scale(0.7, 0.45) translate(-236px, 417px); transform: scale(0.7, 0.43) translate(-236px, 417px);
} }
#pm10_chart { #pm10_chart {
transform: scale(0.7, 0.45) translate(-236px, -338px); transform: scale(0.7, 0.43) translate(-236px, -393px);
} }

4
04.系统编码/Frontend/src/model/heat-map-drawer.ts

@ -16,7 +16,7 @@ export class HeatMapDrawer{
private readonly paddingLeft: number = 150; private readonly paddingLeft: number = 150;
private readonly paddingRight: number = 100; private readonly paddingRight: number = 100;
private readonly paddingTop: number = 60; private readonly paddingTop: number = 60;
private readonly paddingBottom: number = 100; private readonly paddingBottom: number = 120;
private colorChart: ColorChart = null; private colorChart: ColorChart = null;
private values: any = null; private values: any = null;
@ -306,7 +306,7 @@ export class HeatMapDrawer{
this.canvasContext.stroke(); this.canvasContext.stroke();
if (true){ if (true){
this.canvasContext.font = "normal 15px Verdana"; this.canvasContext.font = "normal 18px Verdana";
this.canvasContext.fillStyle = "#000000"; this.canvasContext.fillStyle = "#000000";
this.canvasContext.fillText(this.xAxis.scales[index], _x - this.canvasContext.measureText(this.xAxis.scales[index]).width / 2, startY + this.verticalScaleLine + this.borderHeight + 36); this.canvasContext.fillText(this.xAxis.scales[index], _x - this.canvasContext.measureText(this.xAxis.scales[index]).width / 2, startY + this.verticalScaleLine + this.borderHeight + 36);
} }

Loading…
Cancel
Save