最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

基于vue3+antDesign2+echarts?實現(xiàn)雷達圖效果

 更新時間:2022年08月12日 10:25:01   作者:Ningal0717  
這篇文章主要介紹了基于vue3+antDesign2+echarts?實現(xiàn)雷達圖,本文通過實例代碼圖文相結合給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下

右上角時間選擇器的實現(xiàn)

  • 修改ant組件樣式

根據(jù)原型圖,該選擇器為月份時間選擇器,使用a-month-picker,但原始的月份選擇器樣式與設計圖不符,需要進行修改,修改有分為兩部分:1.選擇框;2.額外彈出的日歷

  • 選擇框樣式修改

修改ant組件時應避免全局修改,如使用less語法,對ant組件的修改應在該頁面的class下

<style lang="less" >
@vw: 19.2vw;
@vh: 10.8vh;
.ping_index {
  .ant-picker {
    border: none;
    height: 28 / @vh;
    font-size: 14 / @vw;
    //修改字體居中
    .ant-picker-input > input {
      text-align: center;
      color: rgba(255, 255, 255, 0.8);
    }
    //修改右側(cè)下拉圖標
    .anticon svg {
      color: rgb(143, 135, 135);
    }
  }
</style>
  • 額外彈出的日歷

額外彈出的日歷框是在#app之外的,故無法與選擇框使用相同方法進行修改,需要利用dropdownClassName屬性來修改樣式

   a-month-picker(
  	...
     dropdownClassName="month_class"
   )
   
<style lang="less">
    .month_class {
	  .ant-picker-panel-container {
	    background-color: #010a21;
	    border: none;
	    .ant-picker-panel {
	      background: linear-gradient(0deg, rgba(0, 0, 0, 0), rgba(222, 60, 70, 0));
	      box-shadow: 0 0 10 / @vh 0 #005088 inset;
	      .ant-picker-header button {
	        color: rgba(255, 255, 255, 0.8);
	      }
	      .ant-picker-cell-in-view {
	        color: rgba(255, 255, 255, 0.8);
	      }
	      .ant-picker-cell-selected {
	        background: rgba(28, 68, 169, 0.7);
	      }
	      .ant-picker-cell-in-view:hover {
	        background: rgba(28, 68, 169, 0.6);
	        box-shadow: 0 0 18 / @vh 0 #1c44a9 inset;
	      }
	      .ant-picker-cell:hover {
	        background-color: transparent;
	      }
	      .ant-picker-cell-inner {
	        background: transparent !important;
	      }
	    }
	  }
	}
    </style>
  • 數(shù)據(jù)綁定
    • 默認時間

設置默認事件時需要對時間格式進行確定,根據(jù)原型圖需要的時年-月的格式,故需要將ant組件的valueFormat設置為“YYYY-MM”
綁定的值也需要利用moment.js處理得到相同是時間格式

	a-month-picker.info_btn(
            v-model:value="selectedMonth",
            value-format="YYYY-MM"
          )
          
    let selectedMonth = ref(moment(new Date()).format("YYYY-MM"));
  • 時間改變時觸發(fā)的事件

利用@change綁定事件,考慮到接口需要分別傳輸年、月,需要對selectedMonth進行切割

 a-month-picker.info_btn(
   v-model:value="selectedMonth",
   value-format="YYYY-MM"
   @change="changeMonth()"
 )
 
let changeMonth = () => {
      let year = selectedMonth.value.substring(0,4)
      let month = Number(selectedMonth.value.substring(5,7))
      //封裝過的接口
      getSafetyIndex({
        year,
        month
      }).then(( res ) => {
        console.log(res);
      })
    }

五角雷達圖的繪制及數(shù)據(jù)渲染

接口返回的數(shù)據(jù)是類別名稱的縮寫,為了使得數(shù)據(jù)和類別在渲染時能夠?qū)?,在定義雷達圖indicator時添加了index字段,用于遍歷接口數(shù)據(jù)得到與indicator中順序相同的數(shù)據(jù)數(shù)組

    let indecatorList = [
      {
        name: "火災情況",
        max: 10,
        index: 'hjqk',
      },
      {
        name: "交通安全",
        max: 10,
        index: 'jtaq',
      },
      {
        name: "信訪形勢",
        max: 10,
        index: 'xfxs',
      },
      {
        name: "反電詐",
        max: 10,
        index: 'fdz',
      },
      {
        name: "矛盾糾紛",
        max: 10,
        index: 'mdjf',
      },
    ];
    
  let getData = ( data ) => {
      let series = []
      indecatorList.map(( item ) => {
        series.push(data[item.index])
      })
      setOptions(series);
    };

    let setOptions = ( seriesData = [0,0,0,0,0] ) => {
      let option = {
        radar: {
        ...
          indicator: indecatorList,
        },
        ...
        series: [
        ...
          {
            type: "radar",
            data: [
              {
                value: seriesData,
              },
            ],
          },
        ],
      };
      chart.setOption(option);
    };

到此這篇關于基于vue3+antDesign2+echarts 實現(xiàn)雷達圖的文章就介紹到這了,更多相關vue3 echarts雷達圖內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!

相關文章

  • vue+element實現(xiàn)手機號驗證碼注冊的示例

    vue+element實現(xiàn)手機號驗證碼注冊的示例

    本文主要介紹了vue+element實現(xiàn)手機號驗證碼注冊的示例,文中通過示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-01-01
  • Vue中進行數(shù)據(jù)緩存的使用示例

    Vue中進行數(shù)據(jù)緩存的使用示例

    數(shù)據(jù)緩存可以提高應用程序的性能,減少網(wǎng)絡請求,提高用戶體驗,在本文中,我們介紹了Vue中如何進行數(shù)據(jù)緩存,并提供了一些示例代碼,具有一定的參考價值,感興趣的可以了解一下
    2023-09-09
  • 解決element-ui?el-drawer抽屜el-dialog彈框關閉優(yōu)化demo

    解決element-ui?el-drawer抽屜el-dialog彈框關閉優(yōu)化demo

    這篇文章主要為大家介紹了解決element-ui?el-drawer抽屜el-dialog彈框關閉優(yōu)化demo,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪<BR>
    2023-06-06
  • Vue實現(xiàn)動態(tài)樣式的多種方法匯總

    Vue實現(xiàn)動態(tài)樣式的多種方法匯總

    本文要給大家介紹Vue實現(xiàn)動態(tài)樣式的多種方法,下面給大家?guī)韼讉€案列,需要的朋友可以借鑒研究一下。
    2021-06-06
  • vue實現(xiàn)div單選多選功能

    vue實現(xiàn)div單選多選功能

    這篇文章主要為大家詳細介紹了vue實現(xiàn)div單選多選功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-07-07
  • form?表單驗證是異步問題記錄(推薦)

    form?表單驗證是異步問題記錄(推薦)

    這篇文章主要介紹了form?表單驗證是異步問題記錄,通過實例代碼介紹了Promise.all 和 Promise.allSettled 區(qū)別,需要的朋友可以參考下
    2023-01-01
  • vue elementUI實現(xiàn)拖拽流程圖效果

    vue elementUI實現(xiàn)拖拽流程圖效果

    這篇文章主要為大家詳細介紹了如何通過vue elementUI實現(xiàn)拖拽流程圖效果,不引入插件,純手寫實現(xiàn),感興趣的小伙伴可以跟隨小編一起學習一下
    2025-01-01
  • Vue中的變量賦值問題

    Vue中的變量賦值問題

    這篇文章主要介紹了Vue中的變量賦值問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-10-10
  • 使用vue項目配置多個代理的注意點

    使用vue項目配置多個代理的注意點

    這篇文章主要介紹了使用vue項目配置多個代理的注意點,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教
    2021-07-07
  • VuePress使用Algolia實現(xiàn)全文搜索

    VuePress使用Algolia實現(xiàn)全文搜索

    這篇文章主要為大家介紹了VuePress使用Algolia實現(xiàn)全文搜索示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2022-07-07

最新評論

温州市| 新干县| 正镶白旗| 克东县| 铜川市| 新沂市| 九寨沟县| 奇台县| 凉城县| 靖宇县| 汨罗市| 资源县| 中方县| 梧州市| 义马市| 宜丰县| 自贡市| 荣成市| 大洼县| 新河县| 宜良县| 隆回县| 襄汾县| 措美县| 东阿县| 高碑店市| 门源| 舞阳县| 民县| 柳河县| 庄浪县| 武汉市| 山丹县| 长岛县| 子洲县| 丰镇市| 远安县| 棋牌| 古田县| 靖远县| 克东县|