避免进坑,亲测4.9版本正常,5.0版本不支持因为官方移除了地图数据和map文件夹,
安装echarts
npm install [email protected]
在main.js写入
import echarts from 'echarts'
import 'echarts/map/js/china'
Vue.prototype.$echarts = echarts
map地图组件
<template>
<div class="chinaecharts">
<div id="mapChart" ref="mapChart" ></div>
</div>
</template>
<script>
export default {
name: 'ChinaEcharts',
methods: {
mapFn(){
// 基于准备好的dom,初始化echarts实例
// var mapChart = this.$echarts.init(this.$refs.mapChart);
var mapChart = this.$echarts.init(document.getElementById('mapChart'));
mapChart.setOption({
backgroundColor: '', //背景颜色
title: {
text: '你好啊中国',
subtext: '我来自中国',
color: '#fff',
fontSize:'14px',
// sublink: 'http://www.pm25.in',
x:'left',
},
//是视觉映射组件,用于进行『视觉编码』,也就是将数据映射到视觉元素(视觉通道)。
visualMap: {
orient: 'horizontal',
text:['低','高'],
min: 0, //最小值
max: 600, //最大值
calculable: false, //是否显示拖拽用的手柄(手柄能拖拽调整选中范围)。
inRange: {
color: ['#0F9D90', '#39B1A6', '#95DCD7', '#AEE7E4', '#D7FBFA'] //颜色
},
textStyle: {
color: '#000'
},
},
// 提示框,鼠标移入
tooltip:{
show:true, //鼠标移入是否触发数据
trigger: 'item', //出发方式
formatter:'{b}-销售数量:{c}'
},
//配置地图的数据,并且显示
series:[
{
name:'地图',
type: 'map', //地图种类
map: 'china', //地图类型。
data:[
{
name: '北京',value: Math.round(Math.random()*500)},
{
name: '天津',value: Math.round(Math.random()*500)},
{
name: '上海',value: Math.round(Math.random()*500)},
{
name: '重庆',value: Math.round(Math.random()*500)},
{
name: '河北',value: Math.round(Math.random()*500)},
{
name: '河南',value: Math.round(Math.random()*500)},
{
name: '云南',value: Math.round(Math.random()*500)},
{
name: '辽宁',value: Math.round(Math.random()*500)},
{
name: '黑龙江',value: Math.round(Math.random()*500)},
{
name: '湖南',value: Math.round(Math.random()*500)},
{
name: '安徽',value: Math.round(Math.random()*500)},
{
name: '山东',value: Math.round(Math.random()*500)},
{
name: '新疆',value: Math.round(Math.random()*500)},
{
name: '江苏',value: Math.round(Math.random()*500)},
{
name: '浙江',value: Math.round(Math.random()*500)},
{
name: '江西',value: Math.round(Math.random()*500)},
{
name: '湖北',value: Math.round(Math.random()*500)},
{
name: '广西',value: Math.round(Math.random()*500)},
{
name: '甘肃',value: Math.round(Math.random()*500)},
{
name: '山西',value: Math.round(Math.random()*500)},
{
name: '内蒙古',value: Math.round(Math.random()*500)},
{
name: '陕西',value: Math.round(Math.random()*500)},
{
name: '吉林',value: Math.round(Math.random()*500)},
{
name: '福建',value: Math.round(Math.random()*500)},
{
name: '贵州',value: Math.round(Math.random()*500)},
{
name: '广东',value: Math.round(Math.random()*500)},
{
name: '青海',value: Math.round(Math.random()*500)},
{
name: '西藏',value: Math.round(Math.random()*500)},
{
name: '四川',value: Math.round(Math.random()*500)},
{
name: '宁夏',value: Math.round(Math.random()*500)},
{
name: '海南',value: Math.round(Math.random()*500)},
{
name: '台湾',value: Math.round(Math.random()*500)},
{
name: '香港',value: Math.round(Math.random()*500)},
{
name: '澳门',value: Math.round(Math.random()*500)},
{
name: '南海诸岛',value: Math.round(Math.random()*500)}
],
itemStyle: {
//地图区域的多边形 图形样式。
emphasis:{
//高亮状态下的样试
label:{
show:true,
}
}
},
zoom:1,//放大比例
label: {
//图形上的文本标签,可用于说明图形的一些数据信息
show:true,
},
},
{
type:'scatter',
showEffectOn: 'render',//配置什么时候显示特效
coordinateSystem:'geo',//该系列使用的坐标系
symbolSize:10,//标记的大小
data:[
{
name: '宜昌', value: [111.3,30.7,130]},
],
zlevel:99999
},
],
}),
window.addEventListener('resize', () => {
// 自动渲染echarts
mapChart.resize();
})
}
},
mounted () {
this.mapFn();
}
}
</script>
<style scoped>
.chinaecharts {
width: 100%;
height: 100%;
}
#mapChart {
width: 100%;
height: 100%;
}
</style>
然后按组件引入即可使用 效果如下
echarts配置:(https://echarts.apache.org/zh/api.html#echarts)