echarts地图制作
地图初体验
-
安装
echartsnpm i echarts -S -
安装
jquerynpm i jquery -S -
引入
echarts和jquery(echarts可以改为按需引入)import * as echarts from 'echarts'; import $ from 'jquery'; -
复制官网示例代码
methods:{ makeCharts(){ var ROOT_PATH = 'https://echarts.apache.org/examples'; var chartDom = document.getElementById('main'); var myChart = echarts.init(chartDom); var option; myChart.showLoading(); $.get(ROOT_PATH + '/data/asset/geo/HK.json', function (geoJson) { myChart.hideLoading(); echarts.registerMap('HK', geoJson); myChart.setOption( (option = { title: { text: 'Population Density of Hong Kong (2011)', subtext: 'Data from Wikipedia', sublink: 'http://zh.wikipedia.org/wiki/%E9%A6%99%E6%B8%AF%E8%A1%8C%E6%94%BF%E5%8D%80%E5%8A%83#cite_note-12' }, tooltip: { trigger: 'item', formatter: '{b}<br/>{c} (p / km2)' }, toolbox: { show: true, orient: 'vertical', left: 'right', top: 'center', feature: { dataView: { readOnly: false }, restore: {}, saveAsImage: {} } }, visualMap: { min: 800, max: 50000, text: ['High', 'Low'], realtime: false, calculable: true, inRange: { color: ['lightskyblue', 'yellow', 'orangered'] } }, series: [ { name: '香港18区人口密度', type: 'map', map: 'HK', label: { show: true }, data: [ { name: '中西区', value: 20057.34 }, { name: '湾仔', value: 15477.48 }, { name: '东区', value: 31686.1 }, { name: '南区', value: 6992.6 }, { name: '油尖旺', value: 44045.49 }, { name: '深水埗', value: 40689.64 }, { name: '九龙城', value: 37659.78 }, { name: '黄大仙', value: 45180.97 }, { name: '观塘', value: 55204.26 }, { name: '葵青', value: 21900.9 }, { name: '荃湾', value: 4918.26 }, { name: '屯门', value: 5881.84 }, { name: '元朗', value: 4178.01 }, { name: '北区', value: 2227.92 }, { name: '大埔', value: 2180.98 }, { name: '沙田', value: 9172.94 }, { name: '西贡', value: 3368 }, { name: '离岛', value: 806.98 } ], // 自定义名称映射 nameMap: { 'Central and Western': '中西区', Eastern: '东区', Islands: '离岛', 'Kowloon City': '九龙城', 'Kwai Tsing': '葵青', 'Kwun Tong': '观塘', North: '北区', 'Sai Kung': '西贡', 'Sha Tin': '沙田', 'Sham Shui Po': '深水埗', Southern: '南区', 'Tai Po': '大埔', 'Tsuen Wan': '荃湾', 'Tuen Mun': '屯门', 'Wan Chai': '湾仔', 'Wong Tai Sin': '黄大仙', 'Yau Tsim Mong': '油尖旺', 'Yuen Long': '元朗' } } ] }) ); }); option && myChart.setOption(option); } } -
更改地图json引入路径,具体需要什么地图可以到相关网址获取
json的URL// 找到以下代码,更改请求路径 var ROOT_PATH = 'https://geo.datav.aliyun.com/areas_v3/bound/440000_full.json'; $.get(ROOT_PATH, function (geoJson) {…… -
最后调整地图容器的宽高,在vue挂载阶段调用函数
mounted() { this.loadingChart(); }, -
成功制作一份地图……