轻松上手ECharts地图图表:10个实用案例教你绘制中国地图、世界地图及更多复杂场景

2026-09-06 0 阅读

ECharts 是一个使用 JavaScript 实现的开源可视化库,它提供了丰富的图表类型,包括地图图表。地图图表在数据可视化中非常有用,可以直观地展示地理分布和数据。本文将为你提供10个实用案例,帮助你轻松上手ECharts地图图表,包括中国地图、世界地图以及更多复杂场景的绘制。

1. 中国地图绘制

中国地图是地图图表中最常见的类型之一。以下是一个简单的中国地图绘制案例:

// 引入 ECharts 主模块
var echarts = require('echarts/lib/echarts');
// 引入中国地图数据
require('echarts/map/js/china');

// 初始化echarts实例
var myChart = echarts.init(document.getElementById('main'));

// 指定图表的配置项和数据
var option = {
    title: {
        text: '中国地图示例',
        left: 'center'
    },
    tooltip: {
        trigger: 'item'
    },
    visualMap: {
        min: 0,
        max: 1000,
        left: 'left',
        top: 'bottom',
        text: ['高','低'],           // 文本,默认为数值文本
        calculable: true
    },
    series: [
        {
            name: '中国',
            type: 'map',
            mapType: 'china',
            roam: false,
            label: {
                show: true
            },
            data: [
                {name: '北京', value: Math.round(Math.random() * 1000)},
                {name: '上海', value: Math.round(Math.random() * 1000)},
                // ... 其他省份数据
            ]
        }
    ]
};

// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);

2. 世界地图绘制

世界地图绘制与中国地图类似,只需将 mapType 属性设置为 'world' 即可:

// 引入世界地图数据
require('echarts/map/js/world');

// ... 其他代码与上述中国地图绘制案例相同,只需将 mapType 设置为 'world'

3. 地图缩放与平移

ECharts 地图图表支持缩放和平移功能。以下是一个示例:

// ... 其他代码与上述中国地图绘制案例相同

// 添加缩放和平移控件
myChart.setOption({
    toolbox: {
        show: true,
        feature: {
            dataZoom: {
                show: true
            },
            dataView: {show: true},
            restore: {show: true},
            saveAsImage: {show: true}
        }
    }
});

4. 地图热点标记

在地图上添加热点标记,可以突出显示特定区域的数据。以下是一个示例:

// ... 其他代码与上述中国地图绘制案例相同

// 添加热点标记
series: [
    {
        // ... 其他系列配置
        markPoint: {
            symbol: 'pin',
            symbolSize: 50,
            data: [
                {name: '北京', value: Math.round(Math.random() * 1000)},
                // ... 其他热点标记数据
            ]
        }
    }
]

5. 地图多层级效果

ECharts 地图图表支持多层级效果,可以在地图上展示不同级别的数据。以下是一个示例:

// ... 其他代码与上述中国地图绘制案例相同

// 添加多层级效果
series: [
    {
        // ... 其他系列配置
        levels: [
            {itemStyle: {areaColor: '#f4e925'}},
            {itemStyle: {areaColor: '#f27a1c'}}
        ]
    }
]

6. 地图自定义样式

ECharts 地图图表支持自定义样式,可以调整地图的颜色、字体等属性。以下是一个示例:

// ... 其他代码与上述中国地图绘制案例相同

// 添加自定义样式
series: [
    {
        // ... 其他系列配置
        itemStyle: {
            normal: {
                label: {
                    show: true,
                    textStyle: {
                        color: '#000'
                    }
                },
                areaColor: '#f4e925',
                borderColor: '#f4e925'
            },
            emphasis: {
                label: {
                    textStyle: {
                        color: '#fff'
                    }
                },
                areaColor: '#f27a1c',
                borderColor: '#f27a1c'
            }
        }
    }
]

7. 地图与折线图结合

在地图上绘制折线图,可以展示数据随地理位置的变化趋势。以下是一个示例:

// ... 其他代码与上述中国地图绘制案例相同

// 添加折线图
series: [
    {
        // ... 其他系列配置
        type: 'line',
        data: [
            {name: '北京', value: [120, 30]},
            {name: '上海', value: [130, 40]},
            // ... 其他折线图数据
        ]
    }
]

8. 地图与散点图结合

在地图上绘制散点图,可以展示数据在地理位置上的分布情况。以下是一个示例:

// ... 其他代码与上述中国地图绘制案例相同

// 添加散点图
series: [
    {
        // ... 其他系列配置
        type: 'scatter',
        data: [
            {name: '北京', value: [120, 30]},
            {name: '上海', value: [130, 40]},
            // ... 其他散点图数据
        ]
    }
]

9. 地图与柱状图结合

在地图上绘制柱状图,可以展示数据在地理位置上的高度或数量。以下是一个示例:

// ... 其他代码与上述中国地图绘制案例相同

// 添加柱状图
series: [
    {
        // ... 其他系列配置
        type: 'bar',
        data: [
            {name: '北京', value: 100},
            {name: '上海', value: 150},
            // ... 其他柱状图数据
        ]
    }
]

10. 地图与饼图结合

在地图上绘制饼图,可以展示数据在地理位置上的占比情况。以下是一个示例:

// ... 其他代码与上述中国地图绘制案例相同

// 添加饼图
series: [
    {
        // ... 其他系列配置
        type: 'pie',
        data: [
            {name: '北京', value: 100},
            {name: '上海', value: 150},
            // ... 其他饼图数据
        ]
    }
]

通过以上10个实用案例,相信你已经掌握了ECharts地图图表的绘制方法。在实际应用中,你可以根据自己的需求调整地图样式、数据、图表类型等属性,以展示更加丰富的数据信息。祝你学习愉快!

分享到: