| | |
| | | </el-form> |
| | | <el-form :inline="true" :model="formData" label-width="100px"> |
| | | <el-row> |
| | | <el-col :span="12"> |
| | | <el-col :span="16"> |
| | | <el-form-item label="数据类型"> |
| | | <el-checkbox-group v-model="formData.chartCheck" @change="changeChartCheck"> |
| | | <el-checkbox v-for="item in formData.chartOptions" :label="item" |
| | |
| | | currentStamp60: '', |
| | | predictStamp: '', |
| | | chartCheck: ['T+L', '真实值'], |
| | | chartOptions: ['T+N', 'T+L', '当时', '真实值', '调整值'], |
| | | chartOptions: ['T+N', 'T+L', '当时', '真实值', '调整值', '预测累计', '真实累计'], |
| | | checkedItemData: [], |
| | | backItem: '', |
| | | backValue: 0, |
| | |
| | | formData.value.endTime = data.endTime |
| | | |
| | | let xAxisData = data.categories; |
| | | let defaultYAxis = [ |
| | | { |
| | | type: 'value', |
| | | name: "累计值", |
| | | splitLine: {show: false}, |
| | | axisLine: {show: true}, |
| | | position: 'right' |
| | | }, |
| | | { |
| | | type: 'value', |
| | | name: "", |
| | | splitLine: {show: false}, |
| | | axisLine: {show: true}, |
| | | position: 'left' |
| | | } |
| | | ]; |
| | | let yAxisData = []; |
| | | let offset = 0; |
| | | let yAxisIndex = 0; |
| | |
| | | }, |
| | | }); |
| | | itemDataObject.value = {} |
| | | yAxisData.push({ |
| | | type: 'value', |
| | | name: "累计值", |
| | | position: 'right', |
| | | splitLine: { |
| | | show: false |
| | | }, |
| | | axisLine: { |
| | | show: true, |
| | | lineStyle: {} |
| | | }, |
| | | axisLabel: { |
| | | formatter: '{value}' |
| | | } |
| | | }) |
| | | for (let i = 0; i < data.dataViewList.length; i++) { |
| | | let dataView = data.dataViewList[i] |
| | | itemDataObject.value[dataView.outId] = dataView; |
| | | let maxValue = dataView.maxValue; |
| | | let minValue = dataView.minValue; |
| | | yAxisIndex = formData.value.isMultipleY ? i : 0; |
| | | yAxisIndex = (formData.value.isMultipleY ? i : 0) + 1; |
| | | let yMax = maxValue; |
| | | if (maxValue < 0) { |
| | | maxValue = 1; |
| | |
| | | } |
| | | }); |
| | | } |
| | | |
| | | if (chartCheckArray.indexOf('预测累计') !== -1) { |
| | | let legendName = dataView.resultName + '(预测累计)'; |
| | | legendData.push(legendName); |
| | | let seriesLeiJiData = [] |
| | | if (dataView.curData) { |
| | | let leiJi = 0; |
| | | for (let i = 0; i < dataView.curData.length; i++) { |
| | | let item = dataView.curData[i]; |
| | | leiJi = leiJi + Number(item[1]) |
| | | seriesLeiJiData.push([item[0], (leiJi / 60).toFixed(2)]); |
| | | } |
| | | } |
| | | seriesData.push({ |
| | | name: legendName, |
| | | data: seriesLeiJiData, |
| | | type: 'line', |
| | | yAxisIndex: 0, |
| | | showSymbol: false, |
| | | connectNulls: true, |
| | | smooth: false, |
| | | lineStyle: { |
| | | width: 2, |
| | | type: 'dashed' |
| | | } |
| | | }); |
| | | } |
| | | |
| | | if (chartCheckArray.indexOf('真实累计') !== -1) { |
| | | let legendName = dataView.resultName + '(真实累计)'; |
| | | legendData.push(legendName); |
| | | let seriesLeiJiData = [] |
| | | if (dataView.realData) { |
| | | let leiJi = 0; |
| | | let lCount = 0 |
| | | for (let i = 0; i < dataView.realData.length; i++) { |
| | | let item = dataView.realData[i]; |
| | | if(new Date(item[0]).getTime() < new Date(formData.value.predictTime).getTime()) { |
| | | continue |
| | | } |
| | | if (lCount > dataView.curData.length) { |
| | | continue |
| | | } |
| | | lCount = lCount + 1 |
| | | leiJi = leiJi + Number(item[1]) |
| | | seriesLeiJiData.push([item[0], (leiJi / 60).toFixed(2)]); |
| | | } |
| | | } |
| | | seriesData.push({ |
| | | name: legendName, |
| | | data: seriesLeiJiData, |
| | | type: 'line', |
| | | yAxisIndex: 0, |
| | | showSymbol: false, |
| | | connectNulls: true, |
| | | smooth: false, |
| | | lineStyle: { |
| | | width: 2, |
| | | type: 'dashed' |
| | | } |
| | | }); |
| | | } |
| | | } |
| | | //如果最大值相差不大,改成一致大小 |
| | | if (yMaxArr.length > 1) { |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | myChart = echarts.init(dataAnalysisChart.value); |
| | | let option = { |
| | | title: { |
| | |
| | | boundaryGap: false, |
| | | data: xAxisData |
| | | }, |
| | | yAxis: formData.value.isMultipleY ? yAxisData : { |
| | | type: 'value', |
| | | splitLine: {show: false}, |
| | | axisLine: {show: true} |
| | | }, |
| | | yAxis: formData.value.isMultipleY ? yAxisData : defaultYAxis, |
| | | dataZoom: [ |
| | | { |
| | | type: 'inside', |
| | |
| | | currentStamp60: '', |
| | | predictStamp: '', |
| | | chartCheck: ['T+L', '真实值'], |
| | | chartOptions: ['T+N', 'T+L', '当时', '真实值', '调整值'], |
| | | chartOptions: ['T+N', 'T+L', '当时', '真实值', '调整值', '预测累计', '真实累计'], |
| | | checkedItemData: [], |
| | | backItem: '', |
| | | backValue: 0, |