From fb212223fdc2f692896da5483ba2b1a8aec22d5f Mon Sep 17 00:00:00 2001
From: TreeWish <1131093754@qq.com>
Date: 星期一, 27 二月 2023 19:15:20 +0800
Subject: [PATCH] 修改基础数据

---
 src/components/chart/CountryProvincePie.vue  |    2 
 src/components/chart/VisitCount.vue          |  187 ++++++++++++++
 src/components/Screen/top.vue                |   10 
 src/components/chart/ServiceGet.vue          |    4 
 src/components/chart/FileFormat.vue          |  256 ++++++++++++-------
 src/components/chart/BasePieChart .vue       |   27 +
 src/components/chart/CountryDimensionPie.vue |    2 
 src/components/Screen/left.vue               |   80 +++--
 src/components/Screen/right.vue              |  131 +++++++--
 src/components/Screen/bottom.vue             |    1 
 src/components/chart/ServiceType.vue         |    7 
 src/components/chart/BaseBarChart.vue        |    2 
 src/components/chart/BaseLineChart.vue       |    7 
 src/views/Thematic/index.vue                 |   16 
 14 files changed, 534 insertions(+), 198 deletions(-)

diff --git a/src/components/Screen/bottom.vue b/src/components/Screen/bottom.vue
index 94e85d3..bcf1037 100644
--- a/src/components/Screen/bottom.vue
+++ b/src/components/Screen/bottom.vue
@@ -201,6 +201,7 @@
           break
         case "椤圭洰灞曠ず":
           this.DisplayCurrentProject(child)
+          this.changeProject(child)
           break
         case "涓撻灞曠ず":
           this.changeProject(child)
diff --git a/src/components/Screen/left.vue b/src/components/Screen/left.vue
index 2863288..75d356e 100644
--- a/src/components/Screen/left.vue
+++ b/src/components/Screen/left.vue
@@ -3,7 +3,7 @@
     <div class="leftarrow">
       <img :src="leftImg" @click="ChangeLeft" />
     </div>
-    <div class="leftContainer" v-if="ChartDisplay">
+    <div class="leftContainer" v-if="currentDisplay == '澶у睆' && ChartDisplay">
       <div class="current1" id="leftCurrent1">
         <div class="aside-title">鏁版嵁鐢宠娆℃暟</div>
         <count-data-apply></count-data-apply>
@@ -17,38 +17,51 @@
         <data-storage></data-storage>
       </div>
     </div>
-    <!-- 鍏ㄧ悆缁熻娆℃暟 -->
-    <div class="leftContainer" v-if="GlobleChartDisplay">
+    <!-- 鍏ㄧ悆銆佸叏鍥界粺璁℃鏁� -->
+    <div class="leftContainer" v-if="currentDisplay == '椤圭洰'">
       <div class="current1" id="leftCurrent1">
-        <div class="aside-title">椤硅嚜绫诲瀷</div>
+        <div class="aside-title">鍥藉唴銆佸浗澶�</div>
+      </div>
+      <div class="current1" id="leftCurrent2">
+        <div class="aside-title">缁熻鍦扮伨銆佹礊搴撶瓑涓撲笟鏁版嵁瀛樺偍閲�</div>
         <base-line-chart :project="currProject"></base-line-chart>
-
+      </div>
+      <div class="current1" id="leftCurrent3">
+        <div class="aside-title">鏁版嵁瀛樺偍閲�</div>
+        <data-storage></data-storage>
+      </div>
+    </div>
+    <!-- 鍏ㄧ悆銆佸叏鍥界缃戝浘 -->
+    <div class="leftContainer" v-if="currentDisplay == '绠$綉'">
+      <div class="current1" id="leftCurrent1">
+        <div class="aside-title">绠$綉鍥藉唴銆佸浗澶�</div>
         <!-- <base-bar-chart :project="currProject"></base-bar-chart> -->
         <!-- <count-data-apply></count-data-apply> -->
       </div>
       <div class="current1" id="leftCurrent2">
-        <div class="aside-title">鐢ㄦ埛璁块棶閲�</div>
-        <base-pie-chart :project="currProject"></base-pie-chart>
+        <div class="aside-title">杈撻�佷粙璐ㄧ被鍒粺璁¢暱搴�</div>
+        <base-line-chart :project="currProject"></base-line-chart>
+        <!-- <base-pie-chart :project="currProject"></base-pie-chart> -->
         <!-- <service-type></service-type> -->
       </div>
       <div class="current1" id="leftCurrent3">
-        <div class="aside-title">椤圭洰瀛樺偍淇℃伅</div>
+        <div class="aside-title">鏁版嵁瀛樺偍閲�</div>
         <data-storage></data-storage>
       </div>
     </div>
-    <!-- 鍏ㄥ浗椤圭洰缁熻娆℃暟 -->
-    <div class="leftContainer" v-if="CountryChartDisplay">
-      <div class="current1" id="leftCurrent1">
-        <div class="aside-title">鏁版嵁鐢宠娆℃暟</div>
-        <count-data-apply></count-data-apply>
+    <!-- 鍗曚釜宸ョ▼灞曠ず -->
+    <div class="leftContainer" v-if="currentDisplay == '宸ョ▼'">
+      <div class="current1" >
+        <div class="aside-title">宸ョ▼绠�浠�</div>
+
       </div>
-      <div class="current1" id="leftCurrent2">
-        <div class="aside-title">鐢ㄦ埛璁块棶閲�</div>
-        <service-type></service-type>
+      <div class="current1" >
+        <div class="aside-title">椤圭洰鐘舵��</div>
+ 
       </div>
-      <div class="current1" id="leftCurrent3">
-        <div class="aside-title">椤圭洰瀛樺偍淇℃伅</div>
-        <data-storage></data-storage>
+      <div class="current1">
+        <div class="aside-title">寤鸿宸ユ湡</div>
+
       </div>
     </div>
     <!-- <div class="leftContainer" v-if="ProjectreeDisplay">
@@ -72,7 +85,7 @@
     DataStorage,
     BaseBarChart,
     BaseLineChart,
-    BasePieChart
+    BasePieChart,
   },
   data() {
     return {
@@ -83,24 +96,22 @@
       CountryChartDisplay: false,
       leftImg: require("../../assets/img/Screen/rightArrow.png"),
       currProject: "鍏ㄧ悆椤圭洰",
+      currentDisplay: "澶у睆",
     }
   },
   mounted() {
     this.OpenLeftInit()
     // this.OpenLeftInitChart();
+
     this.$bus.$on("changeProject", name => {
-      this.currProject = name
-      this.GlobleChartDisplay = true
-      this.ChartDisplay = false
-      // if (name == "鍏ㄧ悆椤圭洰") {
-      //   this.GlobleChartDisplay = true
-      //   this.ChartDisplay = false
-
-      // } else {
-      //   this.ChartDisplay = true
-      //   this.GlobleChartDisplay = false
-
-      // }
+      if (name.includes("鍏ㄧ悆绠$綉") || name.includes("鍏ㄥ浗绠$綉")) {
+        this.currentDisplay = "绠$綉"
+      } else if (name.includes("鍏ㄧ悆椤圭洰") || name.includes("鍏ㄥ浗椤圭洰")) {
+        this.currentDisplay = "椤圭洰"
+      } else {
+        this.currentDisplay = '宸ョ▼'
+      }
+      this.currentProject = name
     })
   },
   methods: {
@@ -127,13 +138,14 @@
     },
     //鎵撳紑澶у睆宸︿晶鐣岄潰
     OpenLeftInit() {
+      this.currentDisplay = "澶у睆"
+
       this.ChartDisplay = true
       this.ProjectreeDisplay = false
       this.leftMessage = "init"
       // this.OpenLeftInitChart();
       this.$parent.ChangeWidth("leftView")
       this.GlobleChartDisplay = false
-
     },
     //鎵撳紑宸ョ▼鏍�
     OpenLeftProjectTree() {
@@ -600,7 +612,7 @@
 
   .leftContainer {
     height: 100%;
-    width: calc(100% - 7px);
+    width: calc(100% - 45px);
     display: flex;
     flex-direction: column;
     align-items: center;
diff --git a/src/components/Screen/right.vue b/src/components/Screen/right.vue
index fef52f4..99d9bac 100644
--- a/src/components/Screen/right.vue
+++ b/src/components/Screen/right.vue
@@ -1,62 +1,88 @@
 <template>
   <div class="current">
-    <div class="rightContainer" v-if="ChartDisplay">
+    <div class="rightContainer" v-if="currentDisplay == '澶у睆' && ChartDisplay">
       <div class="current1">
         <div class="aside-title">椤圭洰缁熻</div>
         <project-category></project-category>
       </div>
       <div class="current1">
         <div class="aside-title">鏁版嵁缁熻</div>
-        <!-- <div class="content" style="height:30px">
-          <div class="header">
-            <div>鏍煎紡</div>
-            <div>鏁伴噺</div>
-          </div>
-        </div> -->
-        <file-format></file-format>
+        <visit-count></visit-count>
       </div>
       <div class="current1">
         <div class="aside-title">鏈嶅姟璁块棶娆℃暟</div>
         <Service-Get></Service-Get>
       </div>
     </div>
-
-    <div
-      class="rightContainer2"
-      v-if="CourtyDisplay && currentProject == '鍏ㄧ悆椤圭洰'"
-    >
+    <!-- 鍏ㄧ悆銆佸叏鍥介」鐩� -->
+    <div class="rightContainer" v-if="currentDisplay == '椤圭洰'">
       <div class="current1">
-        <div class="aside-title">椤圭洰鏁伴噺鏌辩姸鍥�</div>
+        <div class="aside-title">绔欏満搴ф暟</div>
         <!-- <country-dimension-bar ref="barRef"></country-dimension-bar> -->
         <base-bar-chart :project="currentProject"></base-bar-chart>
       </div>
       <div class="current1">
-        <div class="aside-title">椤圭洰鏁伴噺楗肩姸鍥�</div>
-        <country-dimension-pie ref="pieRef"></country-dimension-pie>
+        <div class="aside-title">闃�瀹ゅ骇鏁�</div>
+        <!-- <base-pie-chart :project="currentProject"></base-pie-chart> -->
+        <country-dimension-pie
+          v-if="currentProject == '鍏ㄧ悆椤圭洰'"
+          ref="pieRef"
+        ></country-dimension-pie>
+        <province-dimension-pie v-else ref="pieRef"></province-dimension-pie>
       </div>
       <div class="current1">
-        <div class="aside-title">椤圭洰鏁伴噺楗肩姸鍥�</div>
-        <dv-capsule-chart
-          :config="config"
-          style="width: 300px; height: 200px"
-        />
+        <div class="aside-title">椤圭洰鏁版嵁浣跨敤鎯呭喌</div>
+        <dv-capsule-chart :config="config" style="width: 360px; height: 85%" />
       </div>
     </div>
-
-    <div
-      class="rightContainer2"
-      v-if="CourtyDisplay && currentProject == '鍏ㄥ浗椤圭洰'"
-    >
+    <!-- 鍏ㄥ浗銆佸叏鐞冪缃� -->
+    <div class="rightContainer" v-if="currentDisplay == '绠$綉'">
       <div class="current1">
-        <div class="aside-title">椤圭洰鏁伴噺鏌辩姸鍥�</div>
-        <!-- <province-dimension-bar ref="barRef"></province-dimension-bar> -->
+        <div class="aside-title">绔欏満搴ф暟</div>
+        <!-- <country-dimension-bar ref="barRef"></country-dimension-bar> -->
         <base-bar-chart :project="currentProject"></base-bar-chart>
       </div>
       <div class="current1">
-        <div class="aside-title">椤圭洰鏁伴噺楗肩姸鍥�</div>
-        <province-dimension-pie ref="pieRef"></province-dimension-pie>
+        <div class="aside-title">闃�瀹ゅ骇鏁�</div>
+        <dv-active-ring-chart
+          :config="pieconfig"
+          style="width: 377px; height: 85%"
+        />
+      </div>
+      <div class="current1">
+        <div class="aside-title">涓嶅悓杈撻�佷粙璐ㄧ閬撴潯鏁�</div>
+        <dv-conical-column-chart
+          :config="config"
+          style="width: 377px; height: 85%"
+        />
       </div>
     </div>
+    <!-- 鍗曚釜宸ョ▼ -->
+    <div class="rightContainer" v-if="currentDisplay == '宸ョ▼'">
+      <div class="current1">
+        <div class="aside-title">鏁版嵁瀛樺偍閲�</div>
+        <base-line-chart :project="currentProject"></base-line-chart>
+      </div>
+      <div class="current1">
+        <div class="aside-title">鏁版嵁涓嬭浇娆℃暟</div>
+        <base-pie-chart height="90%" :project="currentProject"></base-pie-chart>
+      </div>
+      <div class="current1">
+        <div class="aside-title">缁熻涓嶅悓杈撻�佷粙璐ㄧ閬撴潯鏁�</div>
+        <div class="content" style="height: 30px">
+          <div class="header">
+            <div>鏍煎紡</div>
+            <div>鏁伴噺</div>
+          </div>
+        </div>
+        <file-format></file-format>
+        <!-- <dv-conical-column-chart
+          :config="config"
+          style="width: 377px; height: 85"
+        /> -->
+      </div>
+    </div>
+
     <div class="rightarrow">
       <img :src="RightImg" @click="ChangeRight" />
     </div>
@@ -76,7 +102,7 @@
 import BaseBarChart from "../chart/BaseBarChart.vue"
 import BaseLineChart from "../chart/BaseLineChart.vue"
 import BasePieChart from "../chart/BasePieChart .vue"
-
+import VisitCount from "../chart/VisitCount.vue"
 import { countCountryDimension, countProvinceDimension } from "@/api/screen.js"
 
 export default {
@@ -94,14 +120,17 @@
     BaseBarChart,
     BaseLineChart,
     BasePieChart,
+    VisitCount,
   },
   data() {
     return {
       ChartDisplay: true,
       CourtyDisplay: false,
+      PipeDisPlay: false,
       RightImg: require("../../assets/img/Screen/leftArrow.png"),
       leftMessage: "init",
       currentProject: "鍏ㄧ悆椤圭洰",
+      currentDisplay: "澶у睆",
       countryData: [],
       provinceData: [],
       config: {
@@ -127,17 +156,47 @@
             value: 66,
           },
         ],
-        unit: "鍗曚綅",
         showValue: true,
+      },
+      pieconfig: {
+        data: [
+          {
+            name: "鍛ㄥ彛",
+            value: 55,
+          },
+          {
+            name: "鍗楅槼",
+            value: 120,
+          },
+          {
+            name: "瑗垮场",
+            value: 78,
+          },
+          {
+            name: "椹婚┈搴�",
+            value: 66,
+          },
+          {
+            name: "鏂颁埂",
+            value: 80,
+          },
+        ],
+        lineWidth: 10,
       },
     }
   },
 
   mounted() {
+    this.OpenLeftInit()
     this.$bus.$on("changeProject", name => {
+      if (name.includes("鍏ㄧ悆绠$綉") || name.includes("鍏ㄥ浗绠$綉")) {
+        this.currentDisplay = "绠$綉"
+      } else if (name.includes("鍏ㄧ悆椤圭洰") || name.includes("鍏ㄥ浗椤圭洰")) {
+        this.currentDisplay = "椤圭洰"
+      } else {
+        this.currentDisplay = "宸ョ▼"
+      }
       this.currentProject = name
-      this.CourtyDisplay = true
-      this.ChartDisplay = false
     })
   },
   methods: {
@@ -165,6 +224,7 @@
     },
     //鎵撳紑澶у睆宸︿晶鐣岄潰
     OpenLeftInit() {
+      this.currentDisplay = "澶у睆"
       this.ChartDisplay = true
       this.CourtyDisplay = false
       this.leftMessage = "init"
@@ -182,7 +242,7 @@
   },
 }
 </script>
-<style lang="less" sc>
+<style lang="less">
 .current {
   height: 100%;
   width: 100%;
@@ -190,6 +250,7 @@
   flex-direction: row;
   align-items: center;
   justify-content: center;
+
   .rightarrow {
     width: 36px;
     height: 100%;
diff --git a/src/components/Screen/top.vue b/src/components/Screen/top.vue
index e10734b..8279555 100644
--- a/src/components/Screen/top.vue
+++ b/src/components/Screen/top.vue
@@ -42,11 +42,11 @@
     }
   },
   mounted() {
-    this.$bus.$on('changeProject', name => {
-      if (name == '鍏ㄥ浗椤圭洰' || name == '鍏ㄧ悆椤圭洰') {
-        // this.OpenProjectree()
-      }
-    })
+    // this.$bus.$on('changeProject', name => {
+    //   if (name == '鍏ㄥ浗椤圭洰' || name == '鍏ㄧ悆椤圭洰') {
+    //     this.OpenProjectree()
+    //   }
+    // })
   },
   methods: {
     ReturnLast() {
diff --git a/src/components/chart/BaseBarChart.vue b/src/components/chart/BaseBarChart.vue
index af16c00..ea195ce 100644
--- a/src/components/chart/BaseBarChart.vue
+++ b/src/components/chart/BaseBarChart.vue
@@ -265,7 +265,7 @@
           default:
             break
         }
-        this.initData(requsetFn)
+        requsetFn && this.initData(requsetFn)
         this.setOptions(this.option)
       },
     },
diff --git a/src/components/chart/BaseLineChart.vue b/src/components/chart/BaseLineChart.vue
index e2f5995..f78d2e8 100644
--- a/src/components/chart/BaseLineChart.vue
+++ b/src/components/chart/BaseLineChart.vue
@@ -77,11 +77,13 @@
           boundaryGap: true,
           axisLine: {
             lineStyle: {
-              color: "#fff",
+              color: "#fff"
             },
+            show: false
           },
           nameRotate: 45,
           axisTick: {
+            show: false,
             alignWithLabel: true,
           },
           axisLabel: {
@@ -154,7 +156,8 @@
           default:
             break
         }
-        this.initData(requsetFn)
+        requsetFn && this.initData(requsetFn)
+
         this.setOptions(this.option)
       },
     },
diff --git a/src/components/chart/BasePieChart .vue b/src/components/chart/BasePieChart .vue
index 764f592..29d58b9 100644
--- a/src/components/chart/BasePieChart .vue
+++ b/src/components/chart/BasePieChart .vue
@@ -69,7 +69,7 @@
       let data = []
       let xAxisData = []
       let yAxisData = []
-      let  count = 0
+      let count = 0
       if (this.dataList) {
         data = this.dataList
         echartData = data.map(item => {
@@ -90,7 +90,7 @@
         yellow: {
           color: "#ffc72b",
           fontSize: 18 * scale,
-          padding: [5, 4],
+          padding: [4, 4],
           align: "center",
         },
         total: {
@@ -102,7 +102,7 @@
           color: "#fff",
           align: "center",
           fontSize: 14 * scale,
-          padding: [5, 0],
+          padding: [4, 0],
         },
         blue: {
           color: "#49dff0",
@@ -122,9 +122,8 @@
           left: "1%", // 涓庡鍣ㄥ乏渚х殑璺濈
           right: "1%", // 涓庡鍣ㄥ彸渚х殑璺濈
           top: "1%", // 涓庡鍣ㄩ《閮ㄧ殑璺濈
-          bottom: "1%", // 涓庡鍣ㄥ簳閮ㄧ殑璺濈
+          bottom: "10%", // 涓庡鍣ㄥ簳閮ㄧ殑璺濈
           containLabel: true,
-
         },
         title: {
           text: "鎬绘暟",
@@ -145,7 +144,7 @@
             fontFamily: "YouSheBiaoTiHei",
           },
         },
-        
+
         // legend: {
         //   selectedMode: false,
         //   formatter: function (name) {
@@ -177,9 +176,15 @@
               "#034079",
               "#6f81da",
               "#00ffb4",
+              "#3087d6",
+              "#f6ce54",
+              "#4be1ff",
+              "#b6e9ff",
+              "#18edc9",
+              "#6ac5fa",
             ],
-            minAngle: 30, //鏈�灏忚搴�
-            startAngle: 270, //璧峰瑙掑害
+            // minAngle: 15, 
+            // startAngle: 270,
             label: {
               normal: {
                 formatter: function (params, ticket, callback) {
@@ -194,7 +199,7 @@
                     params.name +
                     "}\n{hr|}\n{yellow|" +
                     params.value +
-                    "}\n{blue|" +
+                    "} {blue|" +
                     percent +
                     "%}"
                   )
@@ -241,7 +246,7 @@
           default:
             break
         }
-        this.initData(requsetFn)
+        requsetFn && this.initData(requsetFn)
         this.setOptions(this.option)
       },
     },
@@ -304,6 +309,6 @@
 <style lang="scss" scoped>
 .piechar {
   width: 100%;
-  height: 100%;
+  height: 85%;
 }
 </style>
diff --git a/src/components/chart/CountryDimensionPie.vue b/src/components/chart/CountryDimensionPie.vue
index 6bc8d69..d3750f7 100644
--- a/src/components/chart/CountryDimensionPie.vue
+++ b/src/components/chart/CountryDimensionPie.vue
@@ -287,6 +287,6 @@
 <style lang="scss" scoped>
 .echart {
   width: 100%;
-  height: 100%;
+  height: 85%;
 }
 </style>
diff --git a/src/components/chart/CountryProvincePie.vue b/src/components/chart/CountryProvincePie.vue
index 7237e02..2f1780c 100644
--- a/src/components/chart/CountryProvincePie.vue
+++ b/src/components/chart/CountryProvincePie.vue
@@ -289,6 +289,6 @@
 <style lang="scss" scoped>
 .echart {
   width: 100%;
-  height: 100%;
+  height: 85%;
 }
 </style>
diff --git a/src/components/chart/FileFormat.vue b/src/components/chart/FileFormat.vue
index 505499b..9418542 100644
--- a/src/components/chart/FileFormat.vue
+++ b/src/components/chart/FileFormat.vue
@@ -1,11 +1,10 @@
 <template>
-  <div class="file-format" ref="chart"></div>
+  <div class="FileFormat" ref="chart"></div>
 </template>
 
 <script>
-const fileTypeBar = require("@/assets/img/Screen/fileTypeBar.png")
 import * as echarts from "echarts"
-import { GetTypeVisitsCount } from "@/api/screen.js"
+import { countFileFormat } from "@/api/screen.js"
 export default {
   data() {
     return {
@@ -59,112 +58,177 @@
           value: 20,
         },
       ]
-      const res = await GetTypeVisitsCount()
-      let xAxis = []
-      let yAxis = []
+      const res = await countFileFormat()
       if (res.code == 200) {
         data = res.result.map(item => {
-          xAxis.push(item.name)
-          yAxis.push(item.count)
+          return {
+            name: item.type,
+            value: item.number,
+          }
         })
       }
+      data.sort((a, b) => b.value - a.value)
+      data = data.slice(0, 4)
+      let getArrByKey = (data, k) => {
+        let key = k || "value"
+        let res = []
+        if (data) {
+          data.forEach(function (t) {
+            res.push(t[key])
+          })
+        }
+        return res
+      }
+      let getSymbolData = data => {
+        let arr = []
+        for (var i = 0; i < data.length; i++) {
+          arr.push({
+            value: data[i].value,
+            symbolPosition: "end",
+          })
+        }
+        return arr
+      }
+      let opt = {
+        index: 0,
+      }
+      let color = ["#A71A2B"]
+      data = data.sort((a, b) => {
+        return b.value - a.value
+      })
       let option = {
+        backgroundColor: "transparent",
         grid: {
-          // 璁╁浘琛ㄥ崰婊″鍣�
-          top: "12%",
-          left: "15%",
-          right: "10%",
-          bottom: "15%",
-        },
-        tooltip: {
-          show: true
+          top: "10%",
+          bottom: "10%",
+          right: "5%",
+          left: "10%",
+          containLabel: true,
         },
         xAxis: {
-          data: xAxis,
-          axisLabel: {
-            show: true,
-            color: "#ffff",
-          },
-          axisTick: {
-            show: false,
-          },
-          axisLine: {
-            show: true,
-            lineStyle: {
-              color: "rgba(95, 180, 237, 0.32)",
-            },
-          },
+          show: false,
         },
-        yAxis: {
-          axisLine: {
-            show: false,
-          },
-          axisTick: {
-            show: false,
-          },
-          axisLabel: {
-            color: "#ffff",
-          },
-          // 鍒嗗壊绾�
-          splitLine: {
-            lineStyle: {
-              color: "#5d7289",
-              width: 1,
-              type: "dashed",
-            },
-          },
-        },
-        series: [
+        yAxis: [
           {
-            // 椤堕儴鍦嗙墖
-            type: "pictorialBar",
-            animation: false,
-            itemStyle: {
-              color: "rgba(115, 240, 252, 1)",
+            triggerEvent: true,
+            show: true,
+            inverse: true,
+            data: getArrByKey(data, "name"),
+            axisLine: {
+              show: false,
             },
-            symbolRepeat: false,
-            symbolSize: [15, 8],
-            symbolMargin: 1,
-            z: 10,
-            data: data,
-            symbolPosition: "end",
-            symbolOffset: [0, -4],
-          },
-          {
-            // 搴曢儴鍦嗙墖
-            type: "pictorialBar",
-            animation: false,
-
-            itemStyle: {
-              color: "rgba(50, 96, 225, 0.8)",
+            splitLine: {
+              show: false,
             },
-            symbolRepeat: false,
-            symbolSize: [15, 8],
-            symbolMargin: 1,
-            z: 10,
-            data: data,
-            symbolPosition: "start",
-            symbolOffset: [0, 3],
-          },
-          {
-            barWidth: 15,
-            animation: false,
-
-            type: "bar",
-            label: {
-              show: true,
-              position: "top",
-              textStyle: {
-                color: "#ffff",
+            axisTick: {
+              show: false,
+            },
+            axisLabel: {
+              show: false,
+              interval: 0,
+              color: "#fff",
+              align: "left",
+              margin: 0,
+              fontSize: 13,
+              formatter: function (value, index) {
+                return "{title|" + value + "}"
+              },
+              rich: {
+                title: {
+                  width: 165,
+                },
               },
             },
-            itemStyle: {
-              color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
-                { offset: 1, color: "rgba(82, 180, 249, 0.35)" },
-                { offset: 0, color: "rgba(82, 180, 249, 1)" },
-              ]),
+          },
+          {
+            triggerEvent: true,
+            show: true,
+            inverse: true,
+            data: getArrByKey(data, "name"),
+            axisLine: {
+              show: false,
             },
-            data: yAxis,
+            splitLine: {
+              show: false,
+            },
+            axisTick: {
+              show: false,
+            },
+            axisLabel: {
+              interval: 0,
+              shadowOffsetX: "-20px",
+              color: "#fff",
+              align: "right",
+              verticalAlign: "bottom",
+              lineHeight: 20,
+              fontSize: 13,
+              formatter: function (value, index) {
+                return data[index].value
+              },
+            },
+          },
+        ],
+        series: [
+          {
+            name: "XXX",
+            type: "pictorialBar",
+            symbol:
+              "image://data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADoAAAA6CAMAAADWZboaAAAAZlBMVEUAAABe3uVe3+Vf3uVf3+Zf3uVg3+Zg3+Zf3+Vi4OZh4OZg3+Z86/Bh3+Zi4Odj4Odi4OZ86/B76/B86/Bj4ed56+9x5+xn4umB7/N87PB36e+A7/N+7fF/7vJ/7vJ+7fGA7/OB7/PReX+lAAAAIXRSTlMABQkVDREmIhk3MR10LEFFPHh7cUprXE35h2XnqMLAp+mHAG9cAAAB5ElEQVRIx83WjU7CMBQFYIoiKMqU/XUboHv/l/Tce7t2XamDNSacETEmX86tlK2rx4py150o+MstMBLwWRfHKo6JCVxLnvmFGBjFQ58oF1//sUZhGy/ClSTWObgnL4O+bkeN4nY2okfNMbkRt9/vtxz8InoTsWplJSCzFxPmO8+GpSIByX3YQAuGDWtRKhKjCnxDXhF6Z4yxnZ20Wgko7BMRDmxtSGVaI4kdTIgb+zTYoJQlIMlDlmUFgrcDWWC201qSayqlTkiCddWWeV62VU0YlnpRi9VOKaSUsiyq/N0krwq2Ugt7lVpZl5BfHNiytjagMi+XYp0kCR45hMlivVQrE/uU5pXSrCB5bM6d1t2lOZItMqmliT3q5uVxqxzyW/ccfYLNKx7ZTeykMvNyac2yt2Fbc61MHLSC0rwoxbiNdlQ3GBm1NLHQsHUrtEXppR/ljNpW6DbSCoqlFiVoN6YdaFlgsSFVPs1BdT8OaB5QyQzVcaqWDows/zepxR8ObLglTrdtCRVuRNj4Rrxh+//0ke2f8KVL+Kon3GCSbmsJN9OUW3j6g0Ns+LgCij2u0h+Sghc8mlMPBMgdx5DFh59VmOVHrvmDnoNxCz3J7MFWsMuaLyR089xz/xhlfijvwutR8gv3zk6BLUUeCgAAAABJRU5ErkJggg==",
+            symbolSize: [35, 35],
+            symbolOffset: [20, 0],
+            z: 5,
+            data: getSymbolData(data),
+          },
+          {
+            name: "鏉�",
+            type: "bar",
+            showBackground: true,
+            barBorderRadius: 10,
+            yAxisIndex: 0,
+            data: data,
+            barWidth: 8,
+            // align: left,
+            itemStyle: {
+              normal: {
+                color: new echarts.graphic.LinearGradient(
+                  0,
+                  0,
+                  1,
+                  0,
+                  [
+                    {
+                      offset: 0,
+                      color: "#5A9DFF",
+                    },
+                    {
+                      offset: 0.7,
+                      color: "#1878FF",
+                    },
+                    {
+                      offset: 1,
+                      color: "#164182",
+                    },
+                  ],
+                  false
+                ),
+                barBorderRadius: 5,
+              },
+              // color: '#A71A2B',
+              barBorderRadius: 2,
+            },
+            label: {
+              normal: {
+                color: "#fff",
+                show: true,
+                position: ["0px", "-25px"],
+                textStyle: {
+                  fontSize: 14,
+                },
+                formatter: function (a, b) {
+                  return a.name
+                },
+              },
+            },
           },
         ],
       }
@@ -181,8 +245,8 @@
 </script>
 
 <style lang="less" scoped>
-.file-format {
+.FileFormat {
   width: 100%;
-  height: calc(100% - 30px);
+  height: calc(100% - 40px);
 }
 </style>
diff --git a/src/components/chart/ServiceGet.vue b/src/components/chart/ServiceGet.vue
index b4d4fc8..c6d005f 100644
--- a/src/components/chart/ServiceGet.vue
+++ b/src/components/chart/ServiceGet.vue
@@ -56,10 +56,12 @@
           axisLine: {
             lineStyle: {
               color: "#fff"
-            }
+            },
+            show: false
           },
           nameRotate: 45,
           axisTick: {
+            // show: false,
             alignWithLabel: true
           },
           axisLabel: {
diff --git a/src/components/chart/ServiceType.vue b/src/components/chart/ServiceType.vue
index d84e8be..80ae7d2 100644
--- a/src/components/chart/ServiceType.vue
+++ b/src/components/chart/ServiceType.vue
@@ -140,9 +140,9 @@
           data: dataPie,
           icon: "vertical",
           right: "1%",
-          top: "10%",
+          top: "2%",
           orient: "vertical",
-          itemGap: 7,
+          itemGap: 5,
           itemWidth: 12,
           itemHeight: 3,
 
@@ -165,7 +165,8 @@
           left: "1%", // 涓庡鍣ㄥ乏渚х殑璺濈
           right: "1%", // 涓庡鍣ㄥ彸渚х殑璺濈
           top: "1%", // 涓庡鍣ㄩ《閮ㄧ殑璺濈
-          bottom: "1%", // 涓庡鍣ㄥ簳閮ㄧ殑璺濈
+          bottom: "5%", // 涓庡鍣ㄥ簳閮ㄧ殑璺濈
+          containLabel: true
         },
         series: [
           {
diff --git a/src/components/chart/VisitCount.vue b/src/components/chart/VisitCount.vue
new file mode 100644
index 0000000..3f1ad72
--- /dev/null
+++ b/src/components/chart/VisitCount.vue
@@ -0,0 +1,187 @@
+<template>
+  <div class="visit-count" ref="chart"></div>
+</template>
+
+<script>
+import * as echarts from "echarts"
+import { GetTypeVisitsCount } from "@/api/screen.js"
+export default {
+  data() {
+    return {
+      option: {},
+    }
+  },
+  mounted() {
+    this.initChart()
+  },
+  methods: {
+    async initChart() {
+      let data = [
+        {
+          name: "user1",
+          value: 10,
+        },
+        {
+          name: "user2",
+          value: 20,
+        },
+        {
+          name: "user3",
+          value: 23,
+        },
+        {
+          name: "user4",
+          value: 44,
+        },
+        {
+          name: "user1",
+          value: 10,
+        },
+        {
+          name: "user2",
+          value: 20,
+        },
+        {
+          name: "user3",
+          value: 53,
+        },
+        {
+          name: "user4",
+          value: 24,
+        },
+        {
+          name: "user1",
+          value: 10,
+        },
+        {
+          name: "user2",
+          value: 20,
+        },
+      ]
+      const res = await GetTypeVisitsCount()
+      let xAxis = []
+      let yAxis = []
+      if (res.code == 200) {
+        data = res.result.map(item => {
+          xAxis.push(item.name)
+          yAxis.push(item.count)
+        })
+      }
+      let option = {
+        grid: {
+          // 璁╁浘琛ㄥ崰婊″鍣�
+          top: "12%",
+          left: "15%",
+          right: "10%",
+          bottom: "15%",
+        },
+        tooltip: {
+          show: true
+        },
+        xAxis: {
+          data: xAxis,
+          axisLabel: {
+            show: true,
+            color: "#ffff",
+          },
+          axisTick: {
+            show: false,
+          },
+          axisLine: {
+            show: true,
+            lineStyle: {
+              color: "rgba(95, 180, 237, 0.32)",
+            },
+          },
+        },
+        yAxis: {
+          axisLine: {
+            show: false,
+          },
+          axisTick: {
+            show: false,
+          },
+          axisLabel: {
+            color: "#ffff",
+          },
+          // 鍒嗗壊绾�
+          splitLine: {
+            lineStyle: {
+              color: "#5d7289",
+              width: 1,
+              type: "dashed",
+            },
+          },
+        },
+        series: [
+          {
+            // 椤堕儴鍦嗙墖
+            type: "pictorialBar",
+            animation: false,
+            itemStyle: {
+              color: "rgba(115, 240, 252, 1)",
+            },
+            symbolRepeat: false,
+            symbolSize: [15, 8],
+            symbolMargin: 1,
+            z: 10,
+            data: data,
+            symbolPosition: "end",
+            symbolOffset: [0, -4],
+          },
+          {
+            // 搴曢儴鍦嗙墖
+            type: "pictorialBar",
+            animation: false,
+
+            itemStyle: {
+              color: "rgba(50, 96, 225, 0.8)",
+            },
+            symbolRepeat: false,
+            symbolSize: [15, 8],
+            symbolMargin: 1,
+            z: 10,
+            data: data,
+            symbolPosition: "start",
+            symbolOffset: [0, 3],
+          },
+          {
+            barWidth: 15,
+            animation: false,
+
+            type: "bar",
+            label: {
+              show: true,
+              position: "top",
+              textStyle: {
+                color: "#ffff",
+              },
+            },
+            itemStyle: {
+              color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
+                { offset: 1, color: "rgba(82, 180, 249, 0.35)" },
+                { offset: 0, color: "rgba(82, 180, 249, 1)" },
+              ]),
+            },
+            data: yAxis,
+          },
+        ],
+      }
+
+      const chart = echarts.init(this.$refs.chart)
+
+      chart.setOption(option)
+      window.addEventListener("resize", function () {
+        chart.resize()
+      })
+    },
+  },
+}
+</script>
+
+<style lang="less" scoped>
+.visit-count{
+  width: 100%;
+  height: calc(100% - 30px);
+}
+</style>
diff --git a/src/views/Thematic/index.vue b/src/views/Thematic/index.vue
index 9c1473c..175b16d 100644
--- a/src/views/Thematic/index.vue
+++ b/src/views/Thematic/index.vue
@@ -4,7 +4,7 @@
     <top class="title" ref="title"></top>
     <left
       class="mapleft"
-      :style="{ width: leftWidth, left: leftTree && leftWidth == '20%' ? '-14px' : '0' }"
+      :style="{ width: leftWidth, left: leftWidth == '22%' ? '-19px' : '0' }"
       ref="mapleft"
     ></left>
     <right
@@ -28,7 +28,7 @@
   components: { mapsdk, top, left, right, bottom },
   data() {
     return {
-      leftWidth: "20%",
+      leftWidth: "22%",
       rightWidth: "22%",
       leftTree: false,
       currTree: false
@@ -40,17 +40,17 @@
     //淇敼宸︿晶瀹藉害
     ChangeWidth(parm) {
       if (parm == "left") {
-        if (this.leftWidth == "20%") {
+        if (this.leftWidth == "22%") {
           this.leftWidth = "8px"
         } else {
-          this.leftWidth = "20%"
+          this.leftWidth = "22%"
         }
       }
 
-      // if (parm == "leftView" || parm == "leftTree") {
-      //   this.leftWidth = "20%"
-      //   this.rightWidth = "22%"
-      // }
+      if (parm == "leftView" || parm == "leftTree") {
+        this.leftWidth = "22%"
+        this.rightWidth = "22%"
+      }
       // if (parm == "leftView") {
       //   this.leftTree = false
       // }

--
Gitblit v1.9.3