需求:
按照人口數量密集度,顏色由淺到深展示
實現:
基於現有的Vue3.0+4.5.13Cli框架,安裝Echarts
npm install echarts@4.9.0 --save
安裝成功后,就可以直接使用了
<template> <div class="about"> <div ref="chart" style="width: 1900px;height:800px;"></div> </div> </template> <script> // 導入圖表 import echarts from 'echarts' // 導入中國地圖 import 'echarts/map/js/china' import { reactive,ref,onMounted } from 'vue' export default { // 啟動函數 setup(){ const state = reactive({ chart:ref() }) const init = () => { if(state.chart){ // 圖表的初始化 let mycat = echarts.init(state.chart) const option = { title:{ text:'vue3.0引入中國地圖(人口分布數量)', x:'center', textStyle: { color:'#9c0505' } }, // 數據和類型 series: [{ type:'map', map:'china', label:{ show: true, color:'red', fontSize:10 }, // 地圖大小倍數 zoom:1.2, data:[ {name:'北京',value:40000}, {name:'山西',value:30000}, {name:'內蒙古',value:5000}, {name:'青海',value:7000}, {name:'河北',value:25000}, {name:'廣東',value:10000}, {name:'黑龍江',value:40000}, {name:'南海諸島',value:20000}, ] }], visualMap:{ min: 800, max: 50000, text: ['High', 'Low'], realtime: false, calculable: true, inRange: { color: ['lightskyblue', 'yellow', 'orangered'] } } } // 指定數據項和數據顯示 mycat.setOption(option); } } onMounted(() => { init(); }) return state } } </script>
效果
最后將代碼封裝成組件,在展示時傳入數據調用即可
作者:彼岸舞
時間:2021\06\29
內容關於:VUE
本文屬於作者原創,未經允許,禁止轉發