echarts 画中国地图

数据可视化平台,中国各省数据和坐标

阿里云可视化

效果

在这里插入图片描述

使用echart画中国地图,步骤如下

1.安装依赖

npm i echarts@4

  1. 创建一个js文件
    当你可以访问https请求的时候则使用,如下代码
import axios from "axios";
export default axios.get("https://geo.datav.aliyun.com/areas_v3/bound/100000_full.json")

如果无法请求https接口,则直接导入
在这里插入图片描述

3。配置option配置项并初始化元素

<template>
  <div class="echarts_map">
    <div style="width:100%;height:1000px" ref="chartsDOM"></div>
  </div>
</template>

<script>
import * as echarts from 'echarts';
import list from "@/api/index";
export default {
    data() {
        return {
            data: [
                { name: '北京市', value: 88 },
                { name: '天津市', value: 88 },
                { name: '上海市', value: 66 },
                { name: '重庆市', value: 42 },
                { name: '河北省', value: 99 },
                { name: '河南省', value: 52 },
                { name: '云南省', value: 33 },
                { name: '辽宁省', value: 22 },
                { name: '黑龙江省', value: 22 },
                { name: '湖南省', value: 22 },
                { name: '安徽省', value: 22 },
                { name: '山东省', value: 22 },
                { name: '新疆维吾尔自治区', value: 22 },
                { name: '江苏省', value: 22 },
                { name: '浙江省', value: 22 },
                { name: '江西省', value: 15 },
                { name: '湖北省', value: 33 },
                { name: '广西壮族自治区', value: 22 },
                { name: '甘肃省', value: 88 },
                { name: '山西省', value: 16 },
                { name: '内蒙古', value: 56 },
                { name: '陕西省', value: 33 },
                { name: '吉林省', value: 99 },
                { name: '福建省', value: 28 },
                { name: '贵州省', value: 25 },
                { name: '广东省', value: 33 },
                { name: '青海省', value: 88 },
                { name: '西藏自治区', value: 25 },
                { name: '内蒙古自治区', value: 1 },
                { name: '四川省', value: 45 },
                { name: '宁夏回族自治区', value: 36 },
                { name: '海南省', value: 22 },
                { name: '台湾省', value: 22 },
                { name: '香港特别行政区', value: 22 },
                { name: '澳门特别行政区', value: 22 }
            ]
        }
    },
    mounted() {
        // 初始化统计图对象
        var myChart = echarts.init(this.$refs["chartsDOM"]);
        // 显示 loading 动画
        myChart.showLoading();
        // 再得到数据的基础上,进行地图绘制

        // 得到结果后,关闭动画
        myChart.hideLoading();
        // 注册地图(数据放在axios返回对象的data中哦)
        echarts.registerMap('China', list[0]);
        var option = {
            title: {
                show: true,
                text: '港澳通行证 1000人',
                bottom: '10px',
                left: '10%',
                textStyle: {
                    color: '#1D2129',
                    fontSize: '14px'
                }
            },
            tooltip: {
				trigger: 'item',
				formatter: '{b}<br/>{c} 人'
			},visualMap: {
				min: 0,
				max: 100,
				// text: ['100', '0'],
				realtime: false,
				calculable: true,
				inRange: {
					color: ['#A4C8FF', '#71A9FF']
				}
			},
			geo: {
				map: 'china',
				roam: false,
				label: {
					emphasis: {
						show: true
					}
				},
				// 当前视角的缩放比例/中心  用于隐藏底部的南沙群岛地区 
				center: [105, 30],
				zoom: 1.2,
				aspectScale: 1
			},
            series: [
                {
                    name: '中国地图',
                    type: 'map',
                    map: 'China',// 这个是上面注册时的名字哦,registerMap('这个名字保持一致')
                    label: {
                        show: true,
                        normal: {
                            show: true, //显示省份标签
                            textStyle: {
                                color: "blue"
                            } //省份标签字体颜色
                        },
                        emphasis: { //对应的鼠标悬浮效果
                            show: false,
                            textStyle: {
                                color: "#800080"
                            }
                        }
                    },
                    aspectScale: 0.75,
                    zoom: 1.2,
                    itemStyle: {
                        normal: {
                            borderWidth: .5, //区域边框宽度
                            borderColor: '#009fe8', //区域边框颜色
                            areaColor: "#ffefd5", //区域颜色
                        },
                        emphasis: {
                            borderWidth: .5,
                            borderColor: '#4b0082',
                            areaColor: "#ffdead",
                        }
                    },
                    data: this.data
                },
            ],
            
        };
        myChart.setOption(option);
    },
    methods: {
        init() {

        }
    }
}
</script>

<style lang="less" scoped>
@import url(./index.less);
</style>
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
使用ECharts 5可以很方便地地图。下面是使用ECharts 5地图的基本步骤: 1.引入ECharts 5的JS文件和地图数据 需要在HTML页面中引入ECharts 5的JS文件和地图数据,可以从ECharts官网下载。 2.创建一个HTML元素来展示地图 在HTML页面中创建一个元素,用于展示地图。例如: ``` <div id="map" style="width: 800px;height:600px;"></div> ``` 3.初始化地图 在JS文件中,使用以下代码初始化地图: ``` var myChart = echarts.init(document.getElementById('map')); ``` 4.配置地图 使用ECharts的option配置项来配置地图。其中,需要设置地图类型、地图数据、地图的样式和数据等。例如: ``` option = { tooltip: { trigger: 'item', formatter: '{b}' }, series: [{ type: 'map', mapType: 'china', label: { show: true }, data: [{ name: '北京', value: Math.round(Math.random() * 1000) }, { name: '天津', value: Math.round(Math.random() * 1000) }, { name: '上海', value: Math.round(Math.random() * 1000) }] }] }; ``` 上面的代码中,我们使用了中国地图(mapType: 'china')并设置了三个数据点(北京、天津、上海)。数据点的值是随机生成的。 5.渲染地图 使用以下代码将地图渲染到页面上: ``` myChart.setOption(option); ``` 完整的代码如下: ``` <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>用ECharts地图</title> <script src="https://cdn.jsdelivr.net/npm/echarts@5.1.2/dist/echarts.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/echarts-gl/dist/echarts-gl.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/echarts-stat/dist/ecStat.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/echarts/dist/extension/dataTool.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/echarts/map/js/china.js"></script> </head> <body> <div id="map" style="width: 800px;height:600px;"></div> <script> var myChart = echarts.init(document.getElementById('map')); option = { tooltip: { trigger: 'item', formatter: '{b}' }, series: [{ type: 'map', mapType: 'china', label: { show: true }, data: [{ name: '北京', value: Math.round(Math.random() * 1000) }, { name: '天津', value: Math.round(Math.random() * 1000) }, { name: '上海', value: Math.round(Math.random() * 1000) }] }] }; myChart.setOption(option); </script> </body> </html> ``` 运行代码后,就可以看到生成的地图了。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值