From f9537176ce96bfc13a7d6e26bb6f2ec17def9bfb Mon Sep 17 00:00:00 2001
From: 小小儁爺 <1694218219@qq.com>
Date: 星期一, 01 七月 2024 17:42:35 +0800
Subject: [PATCH] 1.金华智研院看板   30%

---
 src/utils/myEcharts.js | 1721 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 1 files changed, 1,695 insertions(+), 26 deletions(-)

diff --git a/src/utils/myEcharts.js b/src/utils/myEcharts.js
index b4eb432..d9ab55a 100644
--- a/src/utils/myEcharts.js
+++ b/src/utils/myEcharts.js
@@ -1,6 +1,6 @@
 import * as echarts from 'echarts'
 
-/**
+/** 255
  * 缁熶竴鏍峰紡锛屽姞杞�
  * @param {*} id
  * @param {*} option
@@ -418,7 +418,7 @@
 
       // data: ['00:00','2:00','4:00','6:00','8:00','10:00','12:00','14:00','16:00','18:00','20:00',"22:00"],
       // data: ['1鏈�', '2鏈�', '3鏈�', '4鏈�', '5鏈�', '6鏈�', '7鏈�', '8鏈�', '9鏈�', '10鏈�', '11鏈�', '12鏈�'],
-      data: ['1鏈�', '2鏈�', '3鏈�', '4鏈�', '5鏈�', '6鏈�', '7鏈�', '8鏈�'],
+      data: ['1鏈�', '2鏈�', '3鏈�', '4鏈�', '5鏈�', '6鏈�', '7鏈�', '8鏈�', '9鏈�', '10鏈�', '11鏈�', '12鏈�'],
       // type: 'category',
       // boundaryGap: true,
       // axisLabel: {
@@ -977,7 +977,7 @@
   ]
   const color = ['26,171,234', '73,226,196', '255,221,97']
   // const xList = ['1鏈�', '2鏈�', '3鏈�', '4鏈�', '5鏈�', '6鏈�', '7鏈�', '8鏈�', '9鏈�', '10鏈�', '11鏈�', '12鏈�']
-  const xList = ['1鏈�', '2鏈�', '3鏈�', '4鏈�', '5鏈�', '6鏈�', '7鏈�', '8鏈�']
+  const xList = ['1鏈�', '2鏈�', '3鏈�', '4鏈�', '5鏈�', '6鏈�', '7鏈�', '8鏈�', '9鏈�', '10鏈�', '11鏈�', '12鏈�']
   const seriesData = []
 
   list.forEach((r, i) => {
@@ -1438,7 +1438,7 @@
       axisTick: {
         show: false
       },
-      data: ['1鏈�', '2鏈�', '3鏈�', '4鏈�', '5鏈�', '6鏈�', '7鏈�', '8鏈�']
+      data: ['1鏈�', '2鏈�', '3鏈�', '4鏈�', '5鏈�', '6鏈�', '7鏈�', '8鏈�', '9鏈�', '10鏈�', '11鏈�', '12鏈�']
     }],
     yAxis: [
       {
@@ -1523,7 +1523,7 @@
           }
         },
         // data: [393, 438, 485, 631, 689, 824, 987]
-        data: [600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100)]
+        data: [600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100), 600 + Math.floor(Math.random() * 100)]
       }
       //   {
       //   name: '鏈�鏂版敞鍐岄噺',
@@ -1570,7 +1570,7 @@
 export function zhkb01() {
   // const zhkb01name = ['璁″垝瀹屾垚杩涘害(鑷骇)', '璁″垝瀹屾垚杩涘害(澶栬喘)'] // 鍚嶇О
   const zhkb01name = ['', ''] // 鍚嶇О
-  const zhkb01Value = [88, 95] // 鍊�
+  const zhkb01Value = [Math.ceil(Math.random() * 10 + 90), Math.ceil(Math.random() * 10 + 90)] // 鍊�
   const zhkb01Max = []
 
   const max = Math.ceil(Math.max(...zhkb01Value.map(r => r)) * 1.1)
@@ -1816,7 +1816,7 @@
 
 }
 
-export function zhkb03() {
+export function zhkb03(title) {
   const labelData = []
   const labelData1 = []
   for (let i = 0; i < 80; ++i) {
@@ -1980,7 +1980,7 @@
     backgroundColor: 'transparent',
     title: [
       {
-        text: '铻烘瘝鎶曞叆浜у嚭鐜�',
+        text: title,
         x: '46%',
         y: '38%',
         textAlign: 'center',
@@ -2235,6 +2235,8 @@
 
 export function zhkb04() {
   const myColor = ['#d0a00e', '#34da62', '#00e9db', '#00c0e9', '#0096f3']
+  // const data = [330, 404, 780, 509, 150]
+  const data = [Math.ceil(Math.random() * 100 + 500), Math.ceil(Math.random() * 100 + 600), Math.ceil(Math.random() * 100 + 700), Math.ceil(Math.random() * 400 + 500), Math.ceil(Math.random() * 100 + 200)]
   const option = {
     backgroundColor: 'transparent',
     grid: {
@@ -2285,7 +2287,8 @@
             fontSize: 16
           }
         },
-        data: ['12566', '12566', '12566', '12566', '12566']
+
+        data: data
       },
       {
         show: false,
@@ -2308,7 +2311,7 @@
         name: '鏉�',
         type: 'bar',
         yAxisIndex: 0,
-        data: [33, 44, 78, 59, 15],
+        data: data.map(r => r / 10),
         label: {
           normal: {
             show: false,
@@ -2383,7 +2386,8 @@
           }
         },
         z: 2
-      }]
+      }
+    ]
   }
 
   return option
@@ -2394,7 +2398,8 @@
 //   var XName = ['鍛ㄤ竴', '鍛ㄤ簩', '鍛ㄤ笁', '鍛ㄥ洓', '鍛ㄤ簲', '鍛ㄥ叚', '鍛ㄦ棩']
   var XName = ['01鏈�', '02鏈�', '03鏈�', '04鏈�', '05鏈�', '06鏈�', '07鏈�', '08鏈�', '09鏈�', '10鏈�', '11鏈�', '12鏈�']
   var data1 = [
-    [123, 121, 123, 321, 222, 111, 234, 121, 123, 321, 222, 321]
+    // [123, 121, 123, 321, 222, 111, 234, 121, 123, 321, 222, 321]
+    [Math.ceil(Math.random() * 100 + 100), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 300), Math.ceil(Math.random() * 100 + 100), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 300), Math.ceil(Math.random() * 100 + 100), Math.ceil(Math.random() * 100 + 200), Math.ceil(Math.random() * 100 + 300)]
     // [123, 154, 234, 321, 120, 390, 634],
     // [63, 194, 234, 321, 278, 110, 534],
     // [53, 254, 234, 321, 118, 240, 434],
@@ -2564,26 +2569,26 @@
   return option
 }
 
-export function zhkb06() {
+export function zhkb06(title) {
   const option = {
     backgroundColor: 'transparent',
     title: [
       {
-        text: '妫�楠屽強鏃剁巼',
+        text: title,
         x: 'center',
         top: '55%',
         textStyle: {
           color: '#FFFFFF',
-          fontSize: 12,
+          fontSize: 14,
           fontWeight: 100
         }
       },
       {
-        text: '75%',
+        text: '95%',
         x: 'center',
         top: '38%',
         textStyle: {
-          fontSize: 12,
+          fontSize: 14,
           color: '#FFFFFF',
           fontFamily: 'DINAlternate-Bold, DINAlternate',
           foontWeight: 100
@@ -2722,11 +2727,11 @@
   return option
 }
 
-export function zhkb07() {
+export function zhkb07(title, value) {
   const dataArr = [
     {
-      value: 61,
-      name: '鎴戞槸鏍囬'
+      value: value,
+      name: title
     }
   ]
   const color = new echarts.graphic.LinearGradient(0, 0, 1, 0, [
@@ -2740,17 +2745,17 @@
     }
   ])
   const colorSet = [
-    [0.61, color],
+    [value / 100, color],
     [1, '#15337C']
   ]
   const rich = {
     white: {
-      fontSize: 12,
+      fontSize: 14,
       color: '#fff',
       fontWeight: '500'
     },
     bule: {
-      fontSize: 12,
+      fontSize: 14,
       fontFamily: 'DINBold',
       color: '#fff',
       fontWeight: 100
@@ -2761,7 +2766,7 @@
       // lineHeight:80,
       borderWidth: 1,
       borderColor: '#0092F2',
-      fontSize: 12,
+      fontSize: 14,
       color: '#fff',
       backgroundColor: '#1B215B',
       borderRadius: 20,
@@ -2789,7 +2794,7 @@
         detail: {
           formatter: function(value) {
             var num = Math.round(value)
-            return '{bule|' + num + '}{white|鍒唥'
+            return '{bule|' + num + '}{white|%}'
           },
           rich: rich,
           offsetCenter: ['0%', '0%']
@@ -2799,7 +2804,7 @@
           show: true,
           color: '#fff',
           offsetCenter: ['0', '75%'],
-          fontSize: 12
+          fontSize: 14
         },
         axisLine: {
           show: true,
@@ -2832,3 +2837,1667 @@
 
   return option
 }
+
+export function zhkb08() {
+  const data = [
+    {
+      name: '閽㈡潗鏀瑰埗杞﹂棿',
+      value: Math.floor(Math.random() * 10 + 90)
+    },
+    {
+      name: '鍐峰ⅸ杞﹂棿',
+      value: Math.floor(Math.random() * 10 + 90)
+    },
+    {
+      name: '鐑ⅸ杞﹂棿',
+      value: Math.floor(Math.random() * 10 + 90)
+    },
+    {
+      name: '鐑鐞嗚溅闂�',
+      value: Math.floor(Math.random() * 10 + 90)
+    },
+    {
+      name: '杈惧厠缃楄溅闂�',
+      value: Math.floor(Math.random() * 10 + 90)
+    },
+    {
+      name: '闀�閿岃溅闂�',
+      value: Math.floor(Math.random() * 10 + 90)
+    }
+  ]
+
+  const myColor = ['#d0a00e', '#34da62', '#00e9db', '#00c0e9', '#0096f3', '#ff00ff']
+
+  const getArrByKey = (data, k) => {
+    const key = k || 'value'
+    const res = []
+    if (data) {
+      data.forEach(function(t) {
+        res.push(t[key])
+      })
+    }
+    return res
+  }
+  const getSymbolData = (data) => {
+    const arr = []
+    for (var i = 0; i < data.length; i++) {
+      arr.push({
+        value: data[i].value,
+        symbolPosition: 'end'
+      })
+    }
+    return arr
+  }
+  // console.log(getSymbolData(data));
+  const option = {
+    backgroundColor: 'transparent',
+    grid: {
+      left: '0%',
+      right: '0%',
+      bottom: '0%',
+      top: '15%',
+      containLabel: true
+    },
+    title: {
+      text: '涔濇湀鑳借�楃敤閲�',
+      x: '44%',
+      y: '0%',
+      textStyle: {
+        color: '#09d8f2',
+        fontSize: 16
+      }
+      // subtextStyle: {
+      //   color: '#90979c',
+      //   fontSize: '16'
+      // }
+    },
+    xAxis: {
+      show: false
+    },
+    yAxis: [
+      {
+        triggerEvent: true,
+        show: true,
+        inverse: true,
+        data: getArrByKey(data, 'name'),
+        axisLine: {
+          show: false
+        },
+        splitLine: {
+          show: false
+        },
+        axisTick: {
+          show: false
+        },
+        axisLabel: {
+          show: true,
+          interval: 0,
+          // color: colorY,
+          align: 'left',
+          margin: 30,
+          textStyle: {
+            color: function(value, index) {
+              let temp = ''
+              myColor.forEach((it, ind) => {
+                if (index === ind) {
+                  temp = it
+                }
+              })
+              return temp
+            },
+            fontSize: 16,
+            align: 'right'
+            // width: 36
+          }
+          // formatter: function(value, index) {
+          //   return '{title|' + value + '}'
+          // },
+          // rich: {
+          //   title: {
+          //     width: 36,
+          //     align: 'right',
+          //     fontSize: 16
+          //   }
+          // }
+        }
+      },
+      {
+        triggerEvent: true,
+        show: true,
+        inverse: true,
+        data: getArrByKey(data, 'name'),
+        axisLine: {
+          show: false
+        },
+        splitLine: {
+          show: false
+        },
+        axisTick: {
+          show: false
+        },
+        axisLabel: {
+          interval: 0,
+          shadowOffsetX: '-20px',
+          // color: colorX,
+          color: function(value, index) {
+            let temp = ''
+            myColor.forEach((it, ind) => {
+              if (index === ind) {
+                temp = it
+              }
+            })
+            return temp
+          },
+          align: 'left',
+          verticalAlign: 'center',
+          lineHeight: 40,
+          fontSize: 16,
+          margin: 20,
+          formatter: function(value, index) {
+            // return data[index].value + '%'
+            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: [50, 50],
+        symbolOffset: [20, 0],
+        z: 12,
+        itemStyle: {
+          normal: {
+            color: '#fff'
+          }
+        },
+        data: getSymbolData(data)
+      },
+      {
+        name: '鏉�',
+        type: 'bar',
+        showBackground: true,
+        yAxisIndex: 0,
+        data: data,
+        barWidth: 10,
+        // align: left,
+        itemStyle: {
+          normal: {
+            color: function(params) {
+              return myColor[params.dataIndex]
+            },
+            barBorderRadius: 10
+          }
+        }
+        // label: {
+        //     normal: {
+        //         color: '#fff',
+        //         show: true,
+        //         position: ["-80px", 0],
+        //         textStyle: {
+        //             fontSize: 16
+        //         },
+        //         formatter: function(a, b) {
+        //             return a.name
+        //         }
+        //     }
+        // }
+      }]
+  }
+
+  return option
+}
+
+// 鏆傛椂寮冪敤
+export function zhkb092222() {
+  const data = [220, 182, 191, 234, 290, 330, 310, 182, 191, 234, 290, 330]
+  const sideData = data.map(item => item + 4.5)
+
+  const option = {
+
+    backgroundColor: 'transparent',
+    // tooltip: {
+    //   trigger: 'axis',
+    //   formatter: '{b} : {c}',
+    //   axisPointer: { // 鍧愭爣杞存寚绀哄櫒锛屽潗鏍囪酱瑙﹀彂鏈夋晥
+    //     type: 'shadow' // 榛樿涓虹洿绾匡紝鍙�変负锛�'line' | 'shadow'
+    //   }
+    // },
+    grid: {
+      left: '2%',
+      right: '2%',
+      bottom: '2%',
+      top: '15%',
+      containLabel: true
+    },
+    title: {
+      text: '杩戜竴骞存瘡鏈堣兘鑰椾娇鐢�',
+      x: '40%',
+      y: '0%',
+      textStyle: {
+        color: '#09d8f2',
+        fontSize: 16
+      }
+      // subtextStyle: {
+      //   color: '#90979c',
+      //   fontSize: '16'
+      // }
+    },
+    xAxis: {
+      data: ['01鏈�', '02鏈�', '03鏈�', '04鏈�', '05鏈�', '06鏈�', '07鏈�', '08鏈�', '09鏈�', '10鏈�', '11鏈�', '12鏈�'],
+      // 鍧愭爣杞�
+      axisLine: {
+        lineStyle: {
+          color: '#3eb2e8'
+        }
+      },
+      // 鍧愭爣鍊兼爣娉�
+      axisLabel: {
+        show: true,
+        textStyle: {
+          color: colorX,
+          fontSize: 14
+        }
+      }
+    },
+    yAxis: {
+      // 鍧愭爣杞�
+      axisLine: {
+        show: false
+      },
+      // 鍧愭爣鍊兼爣娉�
+      axisLabel: {
+        show: true,
+        textStyle: {
+          color: '#09d8f2',
+          fontSize: 14
+        }
+      },
+      // 鍒嗘牸绾�
+      splitLine: {
+        lineStyle: {
+          type: 'dashed',
+          color: 'rgba(135,140,147,0.8)'
+        }
+      },
+      splitNumber: 3
+    },
+    series: [
+      {
+        name: 'a',
+        tooltip: {
+          show: false
+        },
+        type: 'bar',
+        barWidth: 18,
+        itemStyle: {
+          normal: {
+            color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
+              offset: 0,
+              color: '#0B4EC3' // 0% 澶勭殑棰滆壊
+            }, {
+              offset: 0.6,
+              color: '#138CEB' // 60% 澶勭殑棰滆壊
+            }, {
+              offset: 1,
+              color: '#17AAFE' // 100% 澶勭殑棰滆壊
+            }], false)
+          }
+        },
+        data: data,
+        barGap: 0
+      },
+      {
+        type: 'bar',
+        barWidth: 8,
+        itemStyle: {
+          normal: {
+            color: new echarts.graphic.LinearGradient(0, 1, 0, 0, [{
+              offset: 0,
+              color: '#09337C' // 0% 澶勭殑棰滆壊
+            }, {
+              offset: 0.6,
+              color: '#0761C0' // 60% 澶勭殑棰滆壊
+            }, {
+              offset: 1,
+              color: '#0575DE' // 100% 澶勭殑棰滆壊
+            }], false)
+          }
+        },
+        barGap: 0,
+        data: sideData
+      },
+      {
+        name: 'b',
+        tooltip: {
+          show: false
+        },
+        type: 'pictorialBar',
+        itemStyle: {
+          borderWidth: 1,
+          borderColor: '#0571D5',
+          color: '#1779E0'
+        },
+        symbol: 'path://M 0,0 l 120,0 l -30,60 l -120,0 z',
+        symbolSize: ['30', '6'],
+        symbolOffset: ['0', '-4'],
+        // symbolRotate: -5,
+        symbolPosition: 'end',
+        data: data,
+        z: 3
+      }
+    ]
+  }
+  return option
+}
+
+export function zhkb09() {
+  // const dataY = [60, 70, 80, 90, 60, 70, 80, 90, 80, 90, 60, 70, 80, 90]
+  const dataY = [(80 + Math.random() * 10), (90 - Math.random() * 30), (60 + Math.random() * 30), (70 + Math.random() * 20), (80 + Math.random() * 10), (90 - Math.random() * 30), (80 - Math.random() * 30), (90 - Math.random() * 30), (60 + Math.random() * 30), (70 + Math.random() * 20), (80 - Math.random() * 10), (90 - Math.random() * 30)]
+
+  const option = {
+    backgroundColor: 'transparent',
+    grid: {
+      left: '2%',
+      right: '2%',
+      bottom: '2%',
+      top: '15%',
+      containLabel: true
+    },
+    title: {
+      text: '杩戜竴骞存瘡鏈堣兘鑰椾娇鐢�',
+      x: '40%',
+      y: '0%',
+      textStyle: {
+        color: '#09d8f2',
+        fontSize: 16
+      }
+    },
+    color: ['#3cefff'],
+    tooltip: {},
+    xAxis: [
+      {
+        type: 'category',
+        data: ['01鏈�', '02鏈�', '03鏈�', '04鏈�', '05鏈�', '06鏈�', '07鏈�', '08鏈�', '09鏈�', '10鏈�', '11鏈�', '12鏈�'],
+        axisTick: {
+          alignWithLabel: true
+        },
+        nameTextStyle: {
+          color: '#82b0ec'
+        },
+        axisLine: {
+          lineStyle: {
+            color: '#82b0ec'
+          }
+        },
+        axisLabel: {
+          margin: 20,
+          textStyle: {
+            // color: '#82b0ec'
+            color: colorX,
+            fontSize: 14
+          }
+        }
+      }
+    ],
+    yAxis: [
+      {
+        type: 'value',
+        axisLabel: {
+          textStyle: {
+            color: '#09d8f2',
+            fontSize: 14
+          }
+          // formatter: '{value}%'
+        },
+        splitLine: {
+          lineStyle: {
+            type: 'dashed',
+            color: 'rgba(135,140,147,0.8)'
+          }
+        },
+        axisLine: {
+          show: false
+        }
+      }
+    ],
+    series: [
+      {
+        name: '',
+        type: 'pictorialBar',
+        symbolSize: [20, 10],
+        symbolOffset: [0, -5],
+        symbolPosition: 'end',
+        z: 12,
+        label: {
+          normal: {
+            show: false,
+            position: 'top',
+            formatter: '{c}%'
+          }
+        },
+        data: dataY
+      },
+      {
+        name: '',
+        type: 'pictorialBar',
+        symbolSize: [20, 10],
+        symbolOffset: [0, 5],
+        z: 12,
+        data: dataY
+      },
+      {
+        type: 'bar',
+        itemStyle: {
+          normal: {
+            opacity: 0.7
+          }
+        },
+        barWidth: '20',
+        data: dataY
+        // markLine: {
+        //   silent: true,
+        //   label: {
+        //     position: 'middle',
+        //     formatter: '{b}',
+        //     color: 'red'
+        //   },
+        //   data: [
+        //     {
+        //       name: '鐩爣鍊�',
+        //       yAxis: 80,
+        //       lineStyle: {
+        //         color: 'red'
+        //       },
+        //       itemStyle: {
+        //         color: 'red'
+        //       },
+        //       label: {
+        //         position: 'end',
+        //         formatter: '{b}\n {c}%'
+        //       }
+        //     }
+        //   ]
+        // }
+      },
+      {
+        type: 'effectScatter',
+        silent: true,
+        tooltip: {
+          show: false
+        },
+        zlevel: 3,
+        symbolSize: 10,
+        showEffectOn: 'render',
+        rippleEffect: {
+          brushType: 'stroke',
+          color: '#3cefff',
+          scale: 5
+        },
+        itemStyle: {
+          color: '#3cefff'
+        },
+        hoverAnimation: true,
+        data: [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]
+      }
+    ]
+  }
+
+  return option
+}
+
+export function zhkb10() {
+  const _legendColor = '#8FD8FF'
+  const _fontSize = 16
+  const _fontColor = '#8FD8FF'
+  // const data1 = [70, 90, 100, 70, 90, 100]
+  // const data2 = [80, 60, 80, 50, 90, 60]
+  const data1 = [70 + Math.random() * 20, 90 - Math.random() * 20, 100 - Math.random() * 20, 70 + Math.random() * 20, 90 - Math.random() * 20, 80 - Math.random() * 20]
+  const data2 = [80 + Math.random() * 20, 60 + Math.random() * 20, 80 - Math.random() * 20, 50 + Math.random() * 20, 90 - Math.random() * 20, 60 + Math.random() * 20]
+  const option = {
+    backgroundColor: 'transparent',
+    legend: {
+      x: 'right',
+      y: '2%',
+      itemWidth: 10,
+      itemHeight: 10,
+      textStyle: {
+        fontSize: 16,
+        color: 'rgba(255,255,255,.7)'
+      }
+    },
+    grid: {
+      left: '2%',
+      top: '7%',
+      right: '2%',
+      bottom: '0%',
+      containLabel: true
+    },
+    yAxis: {
+      // max: Math.ceil(Math.max(...data1) * 1.2),
+      max: 100,
+      type: 'value',
+      position: 'left',
+      axisLine: {
+        show: true,
+        lineStyle: {
+          color: '#4E84AC'
+        }
+      },
+      axisTick: {
+        show: false
+      },
+      axisLabel: {
+        formatter: '{value}',
+        color: '#00FFFF',
+        fontSize: 14
+      },
+      splitLine: {
+        show: false
+      }
+    },
+    xAxis: {
+      type: 'category',
+      nameTextStyle: {
+        fontSize: 16,
+        color: '#7dd6ea'
+      },
+      axisLabel: {
+        show: true,
+        interval: 0,
+        // margin: 20,
+        textStyle: {
+          color: colorX,
+          fontSize: 16
+        }
+      },
+      splitLine: {
+        show: false
+      },
+      axisTick: {
+        show: false
+      },
+      axisLine: {
+        show: true,
+        lineStyle: {
+          color: '#4E84AC'
+          // width: 3
+        }
+      },
+      data: ['閽㈡潗鏀瑰埗', '鍐峰ⅸ', '鐑ⅸ', '鐑鐞�', '杈惧厠缃�', '闀�閿�']
+    },
+    series: [
+      {
+        name: '浜哄憳鍒嗘瀽1',
+        type: 'bar',
+        barWidth: 15,
+        barGap: '30%',
+        itemStyle: {
+          normal: {
+            color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
+              {
+                offset: 0,
+                color: 'rgba(0,234,255, 1)'
+              },
+              {
+                offset: 1,
+                color: 'rgba(0,234,255, .1)'
+              }
+            ])
+          }
+        },
+        // label: {
+        //   show: true,
+        //   position: 'top',
+        //   textStyle: {
+        //     fontSize: 36,
+        //     color: '#00EAFF'
+        //   },
+        //   formatter: function(params) {
+        //     return params.value + '%'
+        //   }
+        // },
+        data: data1,
+        z: 10,
+        zlevel: 0
+      },
+      {
+        // 鍒嗛殧
+        type: 'pictorialBar',
+        itemStyle: {
+          normal: {
+            color: '#0F375F'
+          }
+        },
+        symbolRepeat: 'fixed',
+        symbolMargin: 15,
+        symbol: 'rect',
+        symbolClip: true,
+        symbolSize: [15, 2],
+        symbolPosition: 'start',
+        symbolOffset: [-10, 0],
+        data: data1,
+        width: 2,
+        z: 0,
+        zlevel: 1
+      },
+      {
+        name: '浜哄憳鍒嗘瀽2',
+        type: 'bar',
+        barWidth: 15,
+        itemStyle: {
+          normal: {
+            color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
+              {
+                offset: 0,
+                color: 'rgba(252,160,0, 1)'
+              },
+              {
+                offset: 1,
+                color: 'rgba(252,160,0, .1)'
+              }
+            ])
+          }
+        },
+        // label: {
+        //   show: true,
+        //   position: 'top',
+        //   textStyle: {
+        //     fontSize: 16,
+        //     color: '#FFA200'
+        //   },
+        //   formatter: function(params) {
+        //     return params.value + '%'
+        //   }
+        // },
+        data: data2,
+        z: 10,
+        zlevel: 0
+      },
+      {
+        // 鍒嗛殧
+        type: 'pictorialBar',
+        itemStyle: {
+          normal: {
+            color: '#0F375F'
+          }
+        },
+        symbolRepeat: 'fixed',
+        symbolMargin: 15,
+        symbol: 'rect',
+        symbolClip: true,
+        symbolSize: [15, 2],
+        symbolPosition: 'start',
+        symbolOffset: [10, 0],
+        data: data2,
+        width: 2,
+        z: 0,
+        zlevel: 1
+      }
+    ]
+  }
+  return option
+}
+
+export function zhkb11() {
+  const option = {
+    backgroundColor: 'transparent',
+    // title: {
+    //   text: '鏃舵-杩涘嚭娓祦閲�',
+    //   left: '5%',
+    //   top: '5%',
+    //   textStyle: {
+    //     color: '#fff',
+    //     fontSize: '18px'
+    //   }
+    // },
+    tooltip: {
+      trigger: 'axis',
+      axisPointer: {
+        type: 'shadow'
+      }
+    },
+    legend: [
+      {
+        icon: 'react',
+        right: '0%',
+        top: '0%',
+        textStyle: {
+          color: '#fff',
+          fontSize: 14
+        },
+        itemGap: 30,
+        itemWidth: 30,
+        itemHeight: 4,
+        data: ['璁惧鍒╃敤鐜�', '璁惧寮�鏈虹巼']
+      }
+    ],
+    grid: {
+      top: '10%',
+      right: '5%',
+      left: '1%',
+      bottom: '0%',
+      containLabel: true
+    },
+    yAxis: [
+      {
+        type: 'category',
+        data: ['鍐烽暒杞﹂棿', '鐑ⅸ杞﹂棿', '杈惧厠缃楄溅闂�', '纾峰寲杞﹂棿', '娉ㄥ杞﹂棿'],
+        axisLine: {
+          lineStyle: {
+            color: '#4E84AC'
+            // width: 2
+          }
+        },
+        axisTick: {
+          show: false
+        },
+        axisLabel: {
+          // margin: 10,
+          color: '#09d8f2',
+          textStyle: {
+            fontSize: 16
+          }
+        }
+      }
+    ],
+    xAxis: [
+      {
+        axisLabel: {
+          formatter: '{value}',
+          color: '#6895CA',
+          textStyle: {
+            fontSize: 16,
+            color: colorX
+          }
+        },
+        axisLine: {
+          show: true,
+          lineStyle: {
+            width: 2,
+            color: '#4E84AC'
+          }
+        },
+        axisTick: {
+          show: false
+        },
+        splitLine: {
+          lineStyle: {
+            type: 'dashed',
+            // 浣跨敤娣辨祬鐨勯棿闅旇壊
+            color: '#184D9A'
+          }
+        }
+      }
+    ],
+    series: [
+      {
+        name: '璁惧鍒╃敤鐜�',
+        type: 'bar',
+        barGap: '70%',
+        data: [Math.ceil(30 + Math.random() * 20), Math.ceil(75 - Math.random() * 20), Math.ceil(77 - Math.random() * 20), Math.ceil(39 + Math.random() * 20), Math.ceil(85 - Math.random() * 20)],
+        barWidth: 12,
+        itemStyle: {
+          normal: {
+            color: {
+              type: 'linear',
+              x: 0,
+              y: 0,
+              x2: 1,
+              y2: 0,
+              colorStops: [
+                {
+                  offset: 0,
+                  color: '#00FFFF' //  0%  澶勭殑棰滆壊
+                },
+                {
+                  offset: 1,
+                  color: '#00FF00' //  100%  澶勭殑棰滆壊
+                }
+              ],
+              global: false //  缂虹渷涓�  false
+            },
+            barBorderRadius: [30, 30, 30, 30],
+            shadowColor: 'rgba(0,160,221,1)',
+            shadowBlur: 4
+          }
+        },
+        label: {
+          normal: {
+            show: true,
+            // lineHeight: 20,
+            // width: 80,
+            // height: 20,
+            verticalAlign: 'center',
+            borderRadius: 200,
+            position: 'right',
+            color: '#00FF00',
+            fontSize: 16
+          }
+        }
+      },
+      {
+        name: '璁惧寮�鏈虹巼',
+        type: 'bar',
+        data: [Math.ceil(90 - Math.random() * 20), 45 + Math.ceil(Math.random() * 20), Math.ceil(27 + Math.random() * 20), Math.ceil(20 + Math.random() * 60), Math.ceil(85 - Math.random() * 20)],
+        barWidth: 12,
+        itemStyle: {
+          normal: {
+            color: {
+              type: 'linear',
+              x: 0,
+              y: 0,
+              x2: 1,
+              y2: 0,
+              colorStops: [
+                {
+                  offset: 0,
+                  color: '#00FFFF' //  0%  澶勭殑棰滆壊
+                },
+                {
+                  offset: 1,
+                  color: '#FFFF00' //  100%  澶勭殑棰滆壊
+                }
+              ],
+              global: false //  缂虹渷涓�  false
+            },
+            barBorderRadius: [30, 30, 30, 30],
+            shadowColor: 'rgba(0,160,221,1)',
+            shadowBlur: 4
+          }
+        },
+        label: {
+          normal: {
+            show: true,
+            // lineHeight: 20,
+            // width: 80,
+            // height: 20,
+            borderRadius: 200,
+            verticalAlign: 'center',
+            // position: ['-0', '-20'],
+            position: 'right',
+            color: '#FFFF00',
+            fontSize: 16
+          }
+        }
+      }
+    ]
+  }
+  return option
+}
+
+export function zhkb12() {
+
+}
+
+export function echart01() {
+  return {
+    // title: {
+    //   text: '2019骞撮攢鍞按閲忓拰涓昏惀涓氬姟鏀跺叆瀵规瘮',
+    //   textStyle: {
+    //     align: 'center',
+    //     color: '#fff',
+    //     fontSize: 20
+    //   },
+    //   top: '3%',
+    //   left: '10%'
+    // },
+    backgroundColor: 'transparent',
+    grid: {
+      left: '5%',
+      right: '5%',
+      bottom: '5%',
+      top: '30%',
+      containLabel: true
+    },
+    tooltip: {
+      trigger: 'axis',
+      axisPointer: {
+        type: 'shadow',
+        label: {
+          show: true
+        }
+      }
+    },
+    legend: {
+      data: ['鎴愭湰', '鏁堢泭'],
+      top: '15%',
+      textStyle: {
+        color: '#ffffff'
+      }
+    },
+    xAxis: [
+      {
+        type: 'category',
+        data: ['01鏈�', '02鏈�', '03鏈�', '04鏈�', '05鏈�', '06鏈�', '07鏈�', '08鏈�', '09鏈�', '10鏈�', '11鏈�', '12鏈�'],
+        axisTick: {
+          alignWithLabel: true
+        },
+        nameTextStyle: {
+          color: '#82b0ec'
+        },
+        axisLine: {
+          lineStyle: {
+            color: '#82b0ec'
+          }
+        },
+        axisLabel: {
+          // margin: 5,
+          textStyle: {
+            // color: '#82b0ec'
+            color: colorX,
+            fontSize: 10
+          }
+        }
+      }
+    ],
+    yAxis: [
+      // {
+      //   type: 'value',
+      //   name: '浜垮厓',
+      //   nameTextStyle: {
+      //     color: '#ebf8ac'
+      //   },
+      //   splitLine: {
+      //     show: false
+      //   },
+      //   axisTick: {
+      //     show: true
+      //   },
+      //   axisLine: {
+      //     show: true,
+      //     lineStyle: {
+      //       color: '#FFFFFF'
+      //     }
+      //   },
+      //   axisLabel: {
+      //     show: true,
+      //     textStyle: {
+      //       color: '#ebf8ac'
+      //     }
+      //   }
+      //
+      // },
+
+      {
+        type: 'value',
+        gridIndex: 0,
+        min: 0,
+        max: 100,
+        splitNumber: 8,
+        splitLine: {
+          show: false
+        },
+        axisLine: {
+          show: false
+        },
+        axisTick: {
+          show: false
+        },
+        axisLabel: {
+          show: false
+        },
+        splitArea: {
+          show: true,
+          areaStyle: {
+            color: ['rgba(250,250,250,0.0)', 'rgba(250,250,250,0.05)']
+          }
+        }
+      },
+      {
+        type: 'value',
+        name: '',
+        nameTextStyle: {
+          color: '#ebf8ac'
+        },
+        position: 'left',
+        splitLine: {
+          show: false
+        },
+        axisTick: {
+          show: false
+        },
+        axisLine: {
+          show: false
+        },
+        axisLabel: {
+          show: true,
+          formatter: '{value} %', // 鍙充晶Y杞存枃瀛楁樉绀�
+          textStyle: {
+            color: colorX
+          }
+        }
+      }
+    ],
+    series: [
+      {
+        name: '鎴愭湰',
+        type: 'line',
+        yAxisIndex: 1, // 浣跨敤鐨� y 杞寸殑 index锛屽湪鍗曚釜鍥捐〃瀹炰緥涓瓨鍦ㄥ涓� y杞寸殑鏃跺�欐湁鐢�
+        smooth: true, // 骞虫粦鏇茬嚎鏄剧ず
+        showAllSymbol: true, // 鏄剧ず鎵�鏈夊浘褰€��
+        // symbol: 'circle', // 鏍囪鐨勫浘褰负瀹炲績鍦�
+        symbolSize: 5, // 鏍囪鐨勫ぇ灏�
+        itemStyle: {
+          // 鎶樼嚎鎷愮偣鏍囧織鐨勬牱寮�
+          color: '#058cff'
+        },
+        lineStyle: {
+          color: '#058cff'
+        },
+        areaStyle: {
+          color: 'rgba(5,140,255, 0.2)'
+        },
+        // data: [4.2, 3.8, 4.8, 3.5, 2.9, 2.8, 3, 5, 2.9, 2.8, 3, 5]
+
+        data: [100, 98, 99, 100, 100, 99, 98, 96, 97, 100, 100, 99]
+      },
+      {
+        name: '鏁堢泭',
+        type: 'bar',
+        barWidth: 15,
+        itemStyle: {
+          normal: {
+            color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
+              offset: 0,
+              color: '#00FFE3'
+            },
+            {
+              offset: 1,
+              color: '#4693EC'
+            }
+            ])
+          }
+        },
+        data: [28, 60, 30, 35, 27, 28, 33, 50, 29, 28, 36, 5]
+        // data: [100, 98, 99, 100, 100, 99, 98, 96, 97, 100, 100, 99]
+
+      }
+    ]
+  }
+}
+
+export function echart02() {
+  var img = 'data:image/png;base64,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'
+
+  var trafficWay = [
+    {
+      name: '鍘嬪嵃',
+      value: 20
+    }, {
+      name: '瀛斿皬',
+      value: 10
+    }, {
+      name: '鍙樺舰',
+      value: 30
+    }, {
+      name: '鍒掍激',
+      value: 20
+    }, {
+      name: '鎶攱',
+      value: 20
+    }]
+
+  var data = []
+  var color = ['#00ffff', '#00cfff', '#006ced', '#ffe000', '#ffa800', '#ff5b00', '#ff3000']
+  for (var i = 0; i < trafficWay.length; i++) {
+    data.push({
+      value: trafficWay[i].value,
+      name: trafficWay[i].name,
+      itemStyle: {
+        normal: {
+          borderWidth: 5,
+          shadowBlur: 20,
+          borderColor: color[i],
+          shadowColor: color[i]
+        }
+      }
+    }, {
+      value: 2,
+      name: '',
+      itemStyle: {
+        normal: {
+          label: {
+            show: false
+          },
+          labelLine: {
+            show: false
+          },
+          color: 'rgba(0, 0, 0, 0)',
+          borderColor: 'rgba(0, 0, 0, 0)',
+          borderWidth: 0
+        }
+      }
+    })
+  }
+  var seriesOption = [{
+    name: '',
+    type: 'pie',
+    clockWise: false,
+    radius: [60, 66],
+    hoverAnimation: false,
+    itemStyle: {
+      normal: {
+        label: {
+          show: true,
+          position: 'outside',
+          color: '#ddd',
+          formatter: function(params) {
+            var percent = 0
+            var total = 0
+            for (var i = 0; i < trafficWay.length; i++) {
+              total += trafficWay[i].value
+            }
+            percent = ((params.value / total) * 100).toFixed(0)
+            if (params.name !== '') {
+              // return '缂洪櫡鍚嶇О锛�' + params.name + '\n' + '\n' + '鍗犵櫨鍒嗘瘮锛�' + percent + '%'
+              return params.name + ' ' + percent + '%'
+            } else {
+              return ''
+            }
+          }
+        },
+        labelLine: {
+          length: 10,
+          length2: 30,
+          show: true,
+          color: '#00ffff'
+        }
+      }
+    },
+    data: data
+  }]
+  const option = {
+    backgroundColor: 'transparent',
+    color: color,
+    title: {
+      text: '',
+      top: '48%',
+      textAlign: 'center',
+      left: '49%',
+      textStyle: {
+        color: '#fff',
+        fontSize: 22,
+        fontWeight: '400'
+      }
+    },
+    graphic: {
+      elements: [{
+        type: 'image',
+        z: 3,
+        style: {
+          image: img,
+          width: 88,
+          height: 88
+        },
+        left: 'center',
+        top: 'center',
+        position: [100, 100]
+      }]
+    },
+    tooltip: {
+      show: false
+    },
+    // legend: {
+    //   icon: 'circle',
+    //   orient: 'horizontal',
+    //   // x: 'left',
+    //   data: ['鍘嬪嵃', '瀛斿皬', '鍙樺舰', '鎶攱'],
+    //   right: 340,
+    //   bottom: 150,
+    //   align: 'right',
+    //   textStyle: {
+    //     color: '#fff'
+    //   },
+    //   itemGap: 20
+    // },
+    toolbox: {
+      show: false
+    },
+    series: seriesOption
+  }
+
+  return option
+}
+
+export function echart03() {
+  return {
+    // title: {
+    //   text: '2019骞撮攢鍞按閲忓拰涓昏惀涓氬姟鏀跺叆瀵规瘮',
+    //   textStyle: {
+    //     align: 'center',
+    //     color: '#fff',
+    //     fontSize: 20
+    //   },
+    //   top: '3%',
+    //   left: '10%'
+    // },
+    backgroundColor: 'transparent',
+    grid: {
+      left: '5%',
+      right: '5%',
+      bottom: '5%',
+      top: '20%',
+      containLabel: true
+    },
+    tooltip: {
+      trigger: 'axis',
+      axisPointer: {
+        type: 'shadow',
+        label: {
+          show: true
+        }
+      }
+    },
+    xAxis: [
+      {
+        type: 'category',
+        data: ['鍘嬪嵃', '瀛斿皬', '鍙樺舰', '鍒掍激', '鎶攱'],
+        axisTick: {
+          alignWithLabel: true
+        },
+        nameTextStyle: {
+          color: '#82b0ec'
+        },
+        axisLine: {
+          lineStyle: {
+            color: '#82b0ec'
+          }
+        },
+        axisLabel: {
+          // margin: 5,
+          textStyle: {
+            // color: '#82b0ec'
+            color: colorX,
+            fontSize: 16
+          }
+        }
+      }
+    ],
+    yAxis: [
+      {
+        boundaryGap: false,
+        splitNumber: 4,
+        type: 'value',
+        // name: '%',
+        nameTextStyle: {
+          color: colorY,
+          fontSize: 14,
+          lineHeight: 20
+        },
+        axisLabel: {
+          textStyle: {
+            fontSize: 14,
+            // color: '#7696c5'
+            color: colorX
+            // color: this.colorY
+          }
+        },
+        splitLine: {
+          show: true,
+          lineStyle: {
+            color: '#032c58'
+          }
+        },
+        axisLine: {
+          show: true,
+          lineStyle: {
+            color: '#032c58'
+          }
+        },
+        axisTick: {
+          show: true
+        }
+      }
+    ],
+    series: [
+      {
+        name: '鏁伴噺',
+        type: 'bar',
+        barWidth: 25,
+        itemStyle: {
+          normal: {
+            color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [{
+              offset: 0,
+              color: '#00FFE3'
+            },
+            {
+              offset: 1,
+              color: '#4693EC'
+            }
+            ])
+          }
+        },
+        data: [228, 260, 230, 235, 227, 228, 233]
+        // data: [100, 98, 99, 100, 100, 99, 98, 96, 97, 100, 100, 99]
+
+      }
+    ]
+  }
+}
+
+export function echart04() {
+  const indicatorList = [{
+    name: '浜哄伐鏅鸿兘鍥惧儚璇嗗埆'
+  },
+  {
+    name: '寮�鍙戣�呭伐鍏�'
+  },
+  {
+    name: '鑷姩鍏夊妫�娴�'
+  },
+  {
+    name: '铏氭嫙閲忔祴VM'
+  },
+  {
+    name: '楂橀娴烽噺鏁版嵁鍒嗘瀽'
+  }]
+  const option = {
+    backgroundColor: 'transparent',
+    color: ['#0290ff', '#ffe533', '#ff4d4d', '#06f5bc'],
+    tooltip: {
+      show: false // 寮瑰眰鏁版嵁鍘绘帀
+    },
+    legend: {
+      data: [
+        {
+          name: '浣跨敤鐜�', icon: 'rect', itemStyle: {
+            color: '#06f5bc', borderWidth: 0
+          }
+        },
+        {
+          name: '瀹為檯浣跨敤鐜�', icon: 'rect', itemStyle: {
+            color: '#0290ff', borderWidth: 0
+          }
+        }
+      ],
+
+      top: 30,
+      show: true,
+      y: '1',
+      center: 0,
+      itemWidth: 12,
+      itemHeight: 12,
+      itemGap: 26,
+      z: 3,
+      // orient: 'horizontal',
+      textStyle: {
+        fontSize: 14,
+        color: '#edf8ff'
+      }
+    },
+    radar: {
+      center: ['50%', '65%'], // 澶栧渾鐨勪綅缃�
+      radius: '55%',
+      name: {
+        textStyle: {
+          color: '#fff',
+          fontSize: 14,
+          fontWeight: 400,
+          fontFamily: 'PingFangSC-Regular,PingFang SC',
+          fontStyle: 'normal'
+        }
+      },
+      // TODO:
+      indicator: indicatorList,
+      splitArea: {
+        // 鍧愭爣杞村湪 grid 鍖哄煙涓殑鍒嗛殧鍖哄煙锛岄粯璁や笉鏄剧ず銆�
+        show: true,
+        areaStyle: {
+          // 鍒嗛殧鍖哄煙鐨勬牱寮忚缃��
+          color: ['rgba(255,255,255,0)'] // 鍒嗛殧鍖哄煙棰滆壊銆傚垎闅斿尯鍩熶細鎸夋暟缁勪腑棰滆壊鐨勯『搴忎緷娆″惊鐜缃鑹层�傞粯璁ゆ槸涓�涓繁娴呯殑闂撮殧鑹层��
+        }
+      },
+      axisLine: {
+        // 鎸囧悜澶栧湀鏂囨湰鐨勫垎闅旂嚎鏍峰紡
+        lineStyle: {
+          color: 'rgba(255,255,255,0)'
+        }
+      },
+      splitLine: {
+        lineStyle: {
+          type: 'solid',
+          color: '#0ac8ff', // 鍒嗛殧绾块鑹�
+          width: 2 // 鍒嗛殧绾跨嚎瀹�
+        }
+      }
+    },
+    series: [
+      {
+        type: 'radar',
+        data: [
+          {
+            value: [0, 0, 10, 30, 70],
+            name: '浣跨敤鐜�',
+            areaStyle: {
+              normal: {
+                color: {
+                  type: 'radial',
+                  x: 0.5,
+                  y: 0.5,
+                  r: 0.5,
+                  colorStops: [{
+                    offset: 0, color: '#00ffb4' // 0% 澶勭殑棰滆壊
+                  },
+                  {
+                    offset: 0.15, color: '#00ffb4' // 100% 澶勭殑棰滆壊
+                  },
+                  {
+                    offset: 0.75, color: '#00ffb4' // 100% 澶勭殑棰滆壊
+                  },
+                  {
+                    offset: 1, color: '#00ffb4' // 100% 澶勭殑棰滆壊
+                  }],
+                  global: false // 缂虹渷涓� false
+                }
+              }
+            },
+            symbolSize: [6, 6],
+            lineStyle: { // 杈圭紭棰滆壊
+              //  width: 0
+              color: 'rgba(13, 248, 172, 0.8)'
+              // shadowBlur:8,
+              // shadowColor:'#ff3838'
+            },
+            itemStyle: {
+              color: '#fff',
+              borderColor: '#00ffb4',
+              borderWidth: 1,
+              shadowBlur: 8,
+              shadowColor: '#00ffb4'
+            }
+          },
+          {
+            value: [80, 80, 80, 70, 60],
+            name: '瀹為檯浣跨敤鐜�',
+            areaStyle: {
+              normal: {
+                color: {
+                  type: 'radial',
+                  x: 0.5,
+                  y: 0.5,
+                  r: 0.5,
+                  colorStops: [{
+                    offset: 0, color: 'rgba(0,194,255, 0.8)' // 0% 澶勭殑棰滆壊
+                  },
+                  {
+                    offset: 0.15, color: 'rgba(0,194,255, 0.8)' // 100% 澶勭殑棰滆壊
+                  },
+                  {
+                    offset: 0.75, color: 'rgba(0,194,255, 0.8)' // 100% 澶勭殑棰滆壊
+                  },
+                  {
+                    offset: 1, color: 'rgba(0,194,255, 0.8)' // 100% 澶勭殑棰滆壊
+                  }],
+                  global: false // 缂虹渷涓� false
+                }
+              }
+            },
+            symbolSize: [6, 6],
+            lineStyle: { // 杈圭紭棰滆壊
+              //  width: 0
+              color: 'rgba(0, 194, 255, 0.8)'
+              // shadowBlur:8,
+              // shadowColor:'#ff3838'
+            },
+            itemStyle: {
+              color: '#fff',
+              borderColor: '#00c8ff',
+              borderWidth: 1,
+              shadowBlur: 8,
+              shadowColor: '#00c8ff'
+            }
+          }
+
+        ]
+      }
+    ]
+  }
+
+  return option
+}
+
+export function echart05() {
+  var img = 'data:image/png;base64,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'
+
+  var trafficWay = [
+    {
+      name: '渚涘簲瀹㈡埛',
+      value: 9
+    }, {
+      name: '鐜板満绠$悊鑰�',
+      value: 30
+    }, {
+      name: '宸ュ巶绠$悊鑰�',
+      value: 25
+    }, {
+      name: '浼佷笟鍐崇瓥鑰�',
+      value: 23
+    }, {
+      name: '骞冲彴寮�鍙戣��',
+      value: 14
+    }]
+
+  var data = []
+  var color = ['#00ffff', '#00cfff', '#006ced', '#ffe000', '#ffa800', '#ff5b00', '#ff3000']
+  for (var i = 0; i < trafficWay.length; i++) {
+    data.push({
+      value: trafficWay[i].value,
+      name: trafficWay[i].name,
+      itemStyle: {
+        normal: {
+          borderWidth: 5,
+          shadowBlur: 20,
+          borderColor: color[i],
+          shadowColor: color[i]
+        }
+      }
+    }, {
+      value: 2,
+      name: '',
+      itemStyle: {
+        normal: {
+          label: {
+            show: false
+          },
+          labelLine: {
+            show: false
+          },
+          color: 'rgba(0, 0, 0, 0)',
+          borderColor: 'rgba(0, 0, 0, 0)',
+          borderWidth: 0
+        }
+      }
+    })
+  }
+  var seriesOption = [{
+    name: '',
+    type: 'pie',
+    clockWise: false,
+    radius: [60, 66],
+    hoverAnimation: false,
+    itemStyle: {
+      normal: {
+        label: {
+          show: true,
+          position: 'outside',
+          color: '#ddd',
+          formatter: function(params) {
+            var percent = 0
+            var total = 0
+            for (var i = 0; i < trafficWay.length; i++) {
+              total += trafficWay[i].value
+            }
+            percent = ((params.value / total) * 100).toFixed(0)
+            if (params.name !== '') {
+              // return '缂洪櫡鍚嶇О锛�' + params.name + '\n' + '\n' + '鍗犵櫨鍒嗘瘮锛�' + percent + '%'
+              return params.name + ' ' + percent + '%'
+            } else {
+              return ''
+            }
+          }
+        },
+        labelLine: {
+          length: 10,
+          length2: 30,
+          show: true,
+          color: '#00ffff'
+        }
+      }
+    },
+    data: data
+  }]
+  const option = {
+    backgroundColor: 'transparent',
+    color: color,
+    title: {
+      text: '',
+      top: '48%',
+      textAlign: 'center',
+      left: '49%',
+      textStyle: {
+        color: '#fff',
+        fontSize: 22,
+        fontWeight: '400'
+      }
+    },
+    graphic: {
+      elements: [{
+        type: 'image',
+        z: 3,
+        style: {
+          image: img,
+          width: 88,
+          height: 88
+        },
+        left: 'center',
+        top: 'center',
+        position: [100, 100]
+      }]
+    },
+    tooltip: {
+      show: false
+    },
+    // legend: {
+    //   icon: 'circle',
+    //   orient: 'horizontal',
+    //   // x: 'left',
+    //   data: ['鍘嬪嵃', '瀛斿皬', '鍙樺舰', '鎶攱'],
+    //   right: 340,
+    //   bottom: 150,
+    //   align: 'right',
+    //   textStyle: {
+    //     color: '#fff'
+    //   },
+    //   itemGap: 20
+    // },
+    toolbox: {
+      show: false
+    },
+    series: seriesOption
+  }
+
+  return option
+}

--
Gitblit v1.9.3