掌握ECharts地图图表:50个实用案例帮你轻松入门实践

2026-10-12 0 阅读

案例一:中国地图展示

在ECharts中,展示中国地图是一个基础且实用的案例。通过使用ECharts提供的地图数据,我们可以轻松地绘制出清晰、美观的中国地图。

// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('main'));

// 指定图表的配置项和数据
var option = {
    title: {
        text: '中国地图示例'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '中国',
            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);

案例二:世界地图展示

除了中国地图,世界地图也是ECharts中常用的地图类型。通过调整地图类型和配置,我们可以展示全球各地的数据。

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

var option = {
    title: {
        text: '世界地图示例'
    },
    tooltip: {
        trigger: 'item',
        formatter: '{b} <br/>{c} (人口)'
    },
    series: [
        {
            name: '世界',
            type: 'map',
            mapType: 'world',
            roam: true,
            label: {
                show: true
            },
            data: [
                {name: 'Afghanistan', value: 424242},
                {name: 'Albania', value: 287722},
                // ... 其他国家数据
            ]
        }
    ]
};

myChart.setOption(option);

案例三:自定义地图

ECharts允许用户自定义地图,通过定义坐标和名称,可以创建任何地区的地图。

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

var option = {
    title: {
        text: '自定义地图示例'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '自定义地区',
            type: 'map',
            mapType: 'custom',
            label: {
                show: true
            },
            data: [
                {name: '区域1', value: 1000},
                {name: '区域2', value: 2000},
                // ... 其他区域数据
            ],
            // 自定义坐标
            coordinateSystem: 'geo',
            geoCoordMap: {
                '区域1': [116.46, 39.92],
                '区域2': [121.47, 31.23],
                // ... 其他坐标
            }
        }
    ]
};

myChart.setOption(option);

案例四:地图热力图

热力图是一种非常直观的地图展示方式,可以用来表示某个地区的数据密集程度。

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

var option = {
    title: {
        text: '地图热力图示例'
    },
    tooltip: {
        trigger: 'item',
        formatter: '{b}: {c}'
    },
    visualMap: {
        min: 0,
        max: 1000,
        left: 'left',
        top: 'bottom',
        text: ['高','低'],           // 文本,默认为数值文本
        calculable: true
    },
    series: [
        {
            name: '热力图',
            type: 'heatmap',
            data: [
                [116.46, 39.92, 5],
                [121.47, 31.23, 10],
                // ... 其他数据
            ]
        }
    ]
};

myChart.setOption(option);

案例五:地图上的折线图

在地图上添加折线图可以展示数据的变化趋势,例如气温变化、人口流动等。

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

var option = {
    title: {
        text: '地图上的折线图示例'
    },
    tooltip: {
        trigger: 'axis',
        axisPointer: {
            type: 'cross',
            label: {
                backgroundColor: '#6a7985'
            }
        }
    },
    xAxis: {
        type: 'category',
        data: ['北京', '上海', '广州', '深圳']
    },
    yAxis: {
        type: 'value'
    },
    series: [
        {
            name: '2017',
            type: 'line',
            data: [10, 20, 30, 40]
        }
    ]
};

myChart.setOption(option);

以上只是ECharts地图图表入门实践的50个案例中的一部分。通过学习和实践这些案例,你可以更好地掌握ECharts地图图表的使用技巧,并在实际项目中发挥其强大的功能。

分享到: