echarts数据可视化系列:中国地图绘制

绘制中国地图及相关配置

绘制地图有两种方式:

  • 百度地图API(要申请SDK)
  • 矢量地图数据(需要开发者自己获取,我把中国地图各省地图及世界地图的json数据放到百度网盘中,提取码:http
    因为后面需要用到jquery,所以我也为大家准备好了jquery文件,根地图数据放在一起
// 基于div初始化echarts实例
        let mEcharts = echarts.init(document.querySelector('div'))
        // 每个城市的空气质量
        let DataPM = [
            {name: '台湾', value: 39.4},
            {name: '河北', value: 56},
            {name: '山西', value: 79},
            {name: '内蒙古', value: 60},
            {name: '安徽', value: 78},
            {name: '澳门', value: 99.4},
            {name: '北京', value: 25.6},
            {name: '重庆', value: 54.3},
            {name: '福建', value: 5.7},
            {name: '甘肃', value: 6.9},
            {name: '广东', value: 158.4},
            {name: '广西', value: 167.9},
            {name: '贵州', value: 94.7},
            {name: '海南', value: 6.1},
            {name: '黑龙江', value: 108.3},
            {name: '河南', value: 72.5},
            {name: '湖北', value: 194},
            {name: '湖南', value: 85.6},
            {name: '江苏', value: 94.1},
            {name: '江西', value: 24.5},
            {name: '吉林', value: 98},
            {name: '辽宁', value: 175},
            {name: '宁夏', value: 15.4},
            {name: '青海', value: 78.6},
            {name: '山东', value: 38.9},
            {name: '上海', value: 54.6},
            {name: '四川', value: 24},
            {name: '天津', value: 68},
            {name: '香港', value: 174},
            {name: '新疆', value: 10.1},
            {name: '西藏', value: 2.6},
            {name: '云南', value: 6.1},
            {name: '浙江', value: 54.3},
            {name: '陕西', value: 76.2},
        ]
        // 涟漪特效的坐标
        let scatterData = [
            {value: [123.429096, 41.796767]},
            {value: [114.298572, 30.584355]}
        ]
        // 使用axios获取中国地图的json数据,获取成功之后,调用回调函数
        $.get('/json/map/china.json', function(ret) {
            // echarts全局注册中国地图
            echarts.registerMap('china', ret)
            let option = {
                geo: {
                    // 类型为地图
                    type: 'map',
                    // 地图的数据,必须和echarts全局中注册的china名称一致
                    map: 'china',
                    // 显示地图各个省份的名称
                    label: {
                        show: true
                    },
                    // 地图的缩放比例
                    zoom:1,
                    // 设置允许拖动缩放
                    roam: true,
                    // 以经纬度作为地图的中心点
                    // center: [121.509062, 25.044332]
                },
                series: [
                    {
                        // 每个省的空气质量数据
                        data: DataPM,
                        // 将空气质量的数据和geo进行关联
                        geoIndex: 0,
                        // 关联的类型
                        type: 'map'
                    },
                    {
                        // 图形类型为涟漪图
                        type: 'effectScatter',
                        // 涟漪的坐标数据
                        data: scatterData,
                        // 以geo为坐标进行显示
                        coordinateSystem: 'geo',
                        // 涟漪特效的配置
                        rippleEffect: {
                            // 特效的缩放比例
                            scale: 5
                        }
                    }
                ],
                // 
                visualMap: {
                    // 指定最小值
                    min: 0,
                    // 指定最大值
                    max: 200,
                    // 指定空气质量变化的颜色
                    inRange: {
                        color: ['white', 'red']
                    },
                    // 出现滑块,过滤空气质量的城市
                    calculable: true
                }
            }
            // 指定配置及数据到echarts中
            mEcharts.setOption(option)
        })

最终展示效果:
在这里插入图片描述

  • 13
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 5
    评论
ECharts 是百度开源的一个数据库,它支持包括百度地图在内的多种图表类型。 要在百度地图上进行可,可以使用 ECharts 中的 `map` 类型,并将 `geo.map` 属性设置为 `'china'` 或 `'world'`,以显示中国或世界地图。然后,您可以使用 ECharts数据语法来绘制地图上的各种图形,如散点图、热力图、线段图等。 以下是一个简单的示例,演示了如何使用 ECharts 在百度地图绘制一个散点图: ```html <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>ECharts 百度地图示例</title> <script src="https://cdn.jsdelivr.net/npm/echarts/dist/echarts.min.js"></script> <script src="https://cdn.jsdelivr.net/npm/echarts/dist/extension/bmap.min.js"></script> </head> <body> <div id="container" style="height: 600px;"></div> <script> // 初始 ECharts 实例 var chart = echarts.init(document.getElementById('container')); // 定义数据 var data = [ {name: '北京', value: [116.46, 39.92]}, {name: '上海', value: [121.48, 31.22]}, {name: '广州', value: [113.23, 23.16]}, {name: '深圳', value: [114.07, 22.62]}, {name: '成都', value: [104.06, 30.67]} ]; // 设置地图类型和中心点 var geoCoordMap = { '北京': [116.46, 39.92], '上海': [121.48, 31.22], '广州': [113.23, 23.16], '深圳': [114.07, 22.62], '成都': [104.06, 30.67] }; var geo = { map: 'china', center: [106.4, 38.5], zoom: 4, roam: true }; // 绘制散点图 var option = { bmap: { center: [106.4, 38.5], zoom: 4, roam: true }, series: [ { type: 'scatter', coordinateSystem: 'bmap', data: data, symbolSize: 10, label: { show: true, formatter: '{b}' }, itemStyle: { color: 'purple' } } ] }; chart.setOption(option); </script> </body> </html> ``` 在这个示例中,我们使用了 ECharts 的 `scatter` 类型来绘制散点图,将 `coordinateSystem` 属性设置为 `'bmap'`,表示使用百度地图作为坐标系。我们还定义了一个包含城市坐标的 `geoCoordMap` 对象,用于设置散点图的位置。最后,我们将 `bmap` 属性设置为地图的中心点和缩放级别,以及 `series` 属性设置为散点图的数据和样式。通过设置这些属性,我们可以在百度地图绘制一个简单的散点图。 如果您想了解更多关于 ECharts 和百度地图的内容,可以访问 ECharts 官方文档:https://echarts.apache.org/zh/index.html。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

旭陌小生

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值