zmc
2023-08-07 1e18f0bcee0358e13c0e2cb750d17cd7ef5bf4d6
src/views/analysis/graph/AllRate.vue
@@ -45,9 +45,11 @@
     </el-form-item> 
     </el-form>
    <el-card>
      <div class="chart-container" ref="chart"></div>
    <el-card v-loading="loading">
      <div class="chart-container" ref="lineChart" v-show="!isNoData"></div>
      <el-empty v-show="isNoData" :image-size="200" />
    </el-card>
  </el-main>
</el-container>
  </div>
@@ -56,10 +58,13 @@
<script>
import * as echarts from 'echarts'
import axiosInstance from '../../../utils/request.js'
import axiosInstanceInstance from '../../../utils/request.js'
export default {
  data() {
    return {
      isNoData:false,
      chart:null,
      loading:false,
      chartData: [],     //保存查询的结果
      //devId:'',          //设备编号
      begin:'2023-05-01',         //开始时间
@@ -192,6 +197,7 @@
  mounted(){
    //  默认加载付小姐在成都 5月1号到15号的
      this.fetchData()
      window.addEventListener('resize',this.updateChart)
    },
  methods: {
    
@@ -215,10 +221,18 @@
      if(this.end){
        params['end'] = this.end
      }
      axiosInstance.get('/data/id',{params:params})
      this.loading = true
      axiosInstanceInstance.get('/data/id',{params:params})
        .then(response => {
          this.chartData = response.data.data
          this.loading = false
        if(response.data.data.length==0){
          alert('该时段无数据')
          this.isNoData = true
          return
        }
        // 移除空数据状态
        this.isNoData = false
          this.drawChart()
        })
    },
@@ -271,8 +285,8 @@
        keyExceeding.push(item.keyExceedingRate.slice(0,-1))
      })
      let chart = echarts.init(this.$refs.chart)
      chart.setOption({
      this.chart = echarts.init(this.$refs.lineChart)
      this.chart.setOption({
        title: {
          text: '比率',
          //left: 'center'
@@ -394,12 +408,12 @@
          type: 'line',
          data: keyExceeding
        },
      ]
      })
    },
    updateChart(){
      this.chart.resize()
    }
  }
}
@@ -407,12 +421,13 @@
<style scoped>
  .el-card {
    margin-top: 40px;
    margin-top: 50px;
    width:90%;
    border-radius: 9px;
  }
.chart-container {
    width: 100%;
    height: 600px;
    width:100%;
    height: 540px;
  }
  .el-header {
    background-color: #010408;