From a06efb450b0ef4ea7ae6c2e1cdf74682fc73e983 Mon Sep 17 00:00:00 2001
From: chenzeping <ChenZeping02609@163.com>
Date: 星期一, 12 四月 2021 11:30:21 +0800
Subject: [PATCH] echarts实时数据

---
 src/components/BaseNav/PublicBounced/GasComponents/Echarts.vue |  115 ++++++++++++++++++++++++++++++++++++++++++---------------
 1 files changed, 84 insertions(+), 31 deletions(-)

diff --git a/src/components/BaseNav/PublicBounced/GasComponents/Echarts.vue b/src/components/BaseNav/PublicBounced/GasComponents/Echarts.vue
index 7051034..a803441 100644
--- a/src/components/BaseNav/PublicBounced/GasComponents/Echarts.vue
+++ b/src/components/BaseNav/PublicBounced/GasComponents/Echarts.vue
@@ -1,5 +1,5 @@
 <template>
-  <div style="width:100%;height:2rem;margin-top: 0.3rem" ref="echarts"></div>
+  <div style="width:5rem;height:2rem;margin-top: 0.3rem" ref="echarts"></div>
 </template>
 
 <script>
@@ -22,16 +22,18 @@
   },
   mounted () {
     this.$nextTick(() => {
+      this.initEchartsData()
       this.upDateEchartsData()
     })
   },
   methods: {
-    async upDateEchartsData () {
-      const addDays = dayjs().add(1, 's')
+    // 鍒濆鍖栨暟鎹�
+    async initEchartsData () {
+      const endTime = dayjs().add(1, 's')
       const data = {
         $tagCodeList: 'TJIP45.yyqAI90305,TJIP45.yyqAI90303,TJIP45.yyqFI_90310N,TJIP45.yyqAI90304,TJIP45.yyqAIR001',
         $startTime: this.dayjs,
-        $endTime: addDays,
+        $endTime: endTime,
         $step: 15
       }
       const result = (await mapApi.DataItems(data)).data
@@ -40,13 +42,30 @@
         this.xAxis.push(result[i].ReadTime)
         this.seriesData.push(result[i].TagValue)
         this.seriesName = result[i].UnionTagCode
-        // let num = 0
-        // if (result[i].UnionTagCode === 'TJIP45.lscl2tb552AI10710') {
-        //   num++
-        //   console.log(num)
-        // }
       }
       this.upDateEchartsinit()
+    },
+    // 瀹炴椂鏁版嵁鍒锋柊
+    upDateEchartsData () {
+      // const interValHander =
+      setInterval(async () => {
+        const endTime = dayjs().add(1, 's')
+        const data = {
+          $tagCodeList: 'TJIP45.yyqAI90305,TJIP45.yyqAI90303,TJIP45.yyqFI_90310N,TJIP45.yyqAI90304,TJIP45.yyqAIR001',
+          $startTime: this.dayjs,
+          $endTime: endTime,
+          $step: 15
+        }
+        const result = (await mapApi.DataItems(data)).data
+        for (var i = 0; i < result.length; i++) {
+          // console.log(result[i])
+          // this.xAxis.shift()
+          this.xAxis.push(result[i].ReadTime)
+          this.seriesData.push(result[i].TagValue)
+          this.seriesName = result[i].UnionTagCode
+        }
+        this.upDateEchartsinit()
+      }, 1500)
     },
     // 鍒濆鍖杄charts
     upDateEchartsinit () {
@@ -58,25 +77,19 @@
         {
           name: this.seriesName,
           type: 'line',
-          data: this.seriesData,
-          symbolSize: 8,
-          smooth: true,
-          silent: false,
-          barWidth: '50%',
-          animation: true
+          stack: '鎬婚噺',
+          data: this.seriesData
         },
         {
           name: 'TJIP45.lscl2tb552AISA11201B',
           type: 'line',
           stack: '鎬婚噺',
-          smooth: true,
-          symbolSize: 8,
           data: [2.20, 1.82, 1.91, 2.34, 2.90, 3.30, 3.10]
         }
       ]
       const option = {
         title: {
-          text: '瀹炴椂鏁版嵁',
+          // text: '瀹炴椂鏁版嵁',
           target: 'blank',
           left: '5%',
           textStyle: {
@@ -86,13 +99,42 @@
           }
         },
         tooltip: {
-          trigger: 'axis'
+          trigger: 'axis',
+          axisPointer: {
+            type: 'cross',
+            label: {
+              color: '#1a4245'
+            }
+          }
+          // formatter: function (params) {
+          //   // console.log(params)
+          //   var UnionTagCode = params[0].seriesName + '<br />'
+          //   for (var i = 0; i < params.length; i++) {
+          //     var seriesName = params[i].seriesName
+          //     // 鍊�
+          //     var value = params[i].value[1]
+          //
+          //     // var valueFliter = formatter(value)
+          //     var valueFliter = value
+          //
+          //     var maker = params[i].marker
+          //     var colo = ''
+          //     switch (seriesName) {
+          //       case 'TJIP45.lscl2tb552AI10710':
+          //         colo = '#fff21c'
+          //         break
+          //       default:
+          //         colo = 'red'
+          //         break
+          //     }
+          //     maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:' + colo + ';"></span>'
+          //     UnionTagCode += maker + seriesName + ':' + valueFliter + '<br />'
+          //   }
+          //   return UnionTagCode
+          // }
         },
         grid: {
-          left: '3%',
-          right: '4%',
-          bottom: '3%',
-          containLabel: true
+          top: '20%'
         },
         toolbox: {
           show: false,
@@ -100,14 +142,24 @@
             saveAsImage: {}
           }
         },
-        dataZoom: [
-          {
-            type: 'inside'
-            // start: 50,
-            // end: 100,
-            // filterMode: 'empty'
+        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
           }
-        ],
+        }],
         legend: {
           data: legendData,
           textStyle: {
@@ -117,9 +169,10 @@
         },
         xAxis: {
           type: 'category',
+          // type: 'time',
           boundaryGap: false,
           axisLabel: {
-            rotate: 20,
+            margin: 6,
             interval: 0,
             textStyle: {
               color: '#fff'

--
Gitblit v1.8.0