新手必学!轻松掌握echarts地图图表制作,实用案例一网打尽

2026-08-29 0 阅读

ECharts 是一个使用 JavaScript 实现的开源可视化库,可以用于制作各种类型的图表。其中,地图图表因其直观的地理信息展示效果而受到许多开发者的喜爱。对于新手来说,ECharts 地图图表的制作可能看似复杂,但只要掌握了正确的方法,其实可以变得非常简单。本文将带你从基础入门到实际案例,一步步轻松掌握 ECharts 地图图表的制作。

一、ECharts 地图图表基础

1.1 地图数据准备

在制作 ECharts 地图图表之前,首先需要准备地图数据。ECharts 支持多种地图数据格式,如 JSON、GeoJSON 等。通常,你可以从一些在线地图服务获取地图数据,如百度地图开放平台、高德地图开放平台等。

1.2 ECharts 地图配置项

ECharts 地图图表的配置项主要包括以下几部分:

  • 地图实例化:通过 echarts.init 方法初始化一个地图实例。
  • 地图系列:通过 series 属性添加地图系列,用于绘制地图上的各种元素,如点、线、面等。
  • 视觉映射:通过 visualMap 属性为地图上的数据设置颜色、大小等视觉映射。
  • 地理坐标系:通过 geo 属性配置地图的地理坐标系。

二、ECharts 地图图表实战

2.1 制作中国地图

以下是一个简单的中国地图图表示例代码:

var myChart = echarts.init(document.getElementById('main'));

var option = {
    geo: {
        map: 'china'
    },
    series: [
        {
            type: 'map',
            mapType: 'china',
            label: {
                show: true
            },
            data: [
                {name: '北京', value: Math.round(Math.random() * 1000)},
                {name: '上海', value: Math.round(Math.random() * 1000)}
                // ...其他省份数据
            ]
        }
    ]
};

myChart.setOption(option);

2.2 制作世界地图

以下是一个简单的世界地图图表示例代码:

var myChart = echarts.init(document.getElementById('main'));

var option = {
    geo: {
        map: 'world'
    },
    series: [
        {
            type: 'map',
            mapType: 'world',
            label: {
                show: true
            },
            data: [
                {name: 'United States', value: Math.round(Math.random() * 1000)},
                {name: 'Canada', value: Math.round(Math.random() * 1000)}
                // ...其他国家数据
            ]
        }
    ]
};

myChart.setOption(option);

三、ECharts 地图图表实用案例

3.1 制作热力图

热力图是一种将数据分布以颜色深浅进行表示的图表。以下是一个热力图示例代码:

var myChart = echarts.init(document.getElementById('main'));

var option = {
    geo: {
        map: 'world'
    },
    series: [
        {
            type: 'heatmap',
            coordinateSystem: 'geo',
            data: [
                [120.36, 31.2, 1],
                [120.29, 31.1, 1],
                // ...其他数据
            ],
            label: {
                normal: {
                    formatter: '{b}',
                    position: 'right',
                    show: true
                }
            },
            itemStyle: {
                emphasis: {
                    label: {
                        show: true
                    }
                }
            }
        }
    ]
};

myChart.setOption(option);

3.2 制作人口密度图

人口密度图用于展示不同地区的人口分布情况。以下是一个人口密度图示例代码:

var myChart = echarts.init(document.getElementById('main'));

var option = {
    geo: {
        map: 'china'
    },
    series: [
        {
            type: 'effectScatter',
            coordinateSystem: 'geo',
            data: [
                {name: '北京', value: [116.46, 39.92, 100]},
                {name: '上海', value: [121.47, 31.23, 150]},
                // ...其他城市数据
            ],
            rippleEffect: {
                brushType: 'stroke'
            },
            label: {
                normal: {
                    formatter: '{b}',
                    position: 'right',
                    show: true
                }
            },
            itemStyle: {
                normal: {
                    color: '#f4e925',
                    shadowBlur: 10,
                    shadowColor: '#333'
                }
            }
        }
    ]
};

myChart.setOption(option);

通过以上几个示例,相信你已经对 ECharts 地图图表的制作有了初步的了解。在实际应用中,你可以根据自己的需求进行扩展和优化,例如添加动画、交互等效果。希望本文能帮助你轻松掌握 ECharts 地图图表的制作技巧。

分享到: