新手必看!轻松上手echarts地图图表,5个实用案例教学,快速提升可视化技能

2026-11-15 0 阅读

ECharts 是一款功能强大的 JavaScript 图表库,它可以帮助开发者轻松制作各种图表,其中地图图表以其直观、生动的表现方式受到了许多用户的喜爱。对于新手来说,ECharts 地图图表可能看起来有些复杂,但只要掌握了正确的入门方法,你会发现它其实非常易于上手。下面,我将通过 5 个实用案例教学,帮助新手快速提升 ECharts 地图图表的可视化技能。

案例一:中国地图数据展示

目标:展示中国各省份的某个指标(如人口、GDP)分布。

步骤:

  1. 准备数据:获取中国各省份的指标数据,通常可以通过国家统计局网站或其他官方渠道获取。
  2. 引入 ECharts 地图组件:在 HTML 文件中引入 ECharts 地图组件的 JS 文件和 CSS 文件。
  3. 初始化地图:使用 ECharts 的 echarts.init 方法初始化地图。
  4. 配置地图参数:设置地图的参数,包括地图类型、边界、数据等。
  5. 绘制图表:使用 setOption 方法将数据传递给地图,完成图表绘制。

代码示例:

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

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

// 指定图表的配置项和数据
var option = {
    title: {
        text: '中国各省份人口分布'
    },
    tooltip: {},
    visualMap: {
        min: 0,
        max: 10000,
        left: 'left',
        top: 'bottom',
        text: ['高', '低'], // 文本,默认为数值文本
        calculable: true
    },
    series: [
        {
            name: '人口',
            type: 'map',
            mapType: 'china',
            roam: false,
            label: {
                normal: {
                    show: true
                },
                emphasis: {
                    show: true
                }
            },
            data: [
                // ... 省份人口数据
            ]
        }
    ]
};

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

案例二:世界地图数据展示

目标:展示世界各国家的某个指标(如 GDP、人口)分布。

步骤:

  1. 准备数据:获取世界各国数据,可以通过联合国、世界银行等官方渠道获取。
  2. 引入世界地图数据:在 ECharts 地图组件中,世界地图数据通常以 world 为名称。
  3. 其他步骤与案例一类似。

代码示例:

// 引入 ECharts 主模块
var echarts = require('echarts/lib/echarts');
// 引入世界地图数据
require('echarts/map/js/world');

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

// 指定图表的配置项和数据
var option = {
    // ... 与案例一类似
    series: [
        {
            name: 'GDP',
            type: 'map',
            mapType: 'world',
            roam: false,
            label: {
                normal: {
                    show: true
                },
                emphasis: {
                    show: true
                }
            },
            data: [
                // ... 国家 GDP 数据
            ]
        }
    ]
};

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

案例三:区域地图数据展示

目标:展示某个特定区域的地图数据,如某个城市的街道分布。

步骤:

  1. 准备数据:获取该区域的地图数据,通常可以通过地图 API 获取。
  2. 引入区域地图数据:在 ECharts 地图组件中,区域地图数据通常以区域名称为名称。
  3. 其他步骤与案例一类似。

代码示例:

// 引入 ECharts 主模块
var echarts = require('echarts/lib/echarts');
// 引入区域地图数据
require('echarts/map/js/regionMapName');

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

// 指定图表的配置项和数据
var option = {
    // ... 与案例一类似
    series: [
        {
            name: '街道分布',
            type: 'map',
            mapType: 'regionMapName',
            roam: false,
            label: {
                normal: {
                    show: true
                },
                emphasis: {
                    show: true
                }
            },
            data: [
                // ... 街道数据
            ]
        }
    ]
};

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

案例四:动态地图数据展示

目标:展示地图数据的变化趋势,如某个指标的年度变化。

步骤:

  1. 准备数据:获取该指标的年度数据。
  2. 使用 ECharts 的 setOption 方法动态更新数据。

代码示例:

// 引入 ECharts 主模块
var echarts = require('echarts/lib/echarts');
// 引入世界地图数据
require('echarts/map/js/world');

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

// 指定图表的配置项和数据
var option = {
    // ... 与案例一类似
    series: [
        {
            name: 'GDP',
            type: 'map',
            mapType: 'world',
            roam: false,
            label: {
                normal: {
                    show: true
                },
                emphasis: {
                    show: true
                }
            },
            data: [
                // ... 国家 GDP 数据
            ]
        }
    ]
};

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

// 动态更新数据
function updateData(year) {
    // ... 根据年份获取数据
    myChart.setOption({
        series: [
            {
                data: ...
            }
        ]
    });
}

案例五:交互式地图数据展示

目标:展示交互式地图,如点击某个国家或地区,显示详细信息。

步骤:

  1. 准备数据:获取国家或地区的详细信息。
  2. 配置 ECharts 地图参数,使其支持点击事件。
  3. 在点击事件中,获取点击的国家或地区信息,并显示详细信息。

代码示例:

// 引入 ECharts 主模块
var echarts = require('echarts/lib/echarts');
// 引入世界地图数据
require('echarts/map/js/world');

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

// 指定图表的配置项和数据
var option = {
    // ... 与案例一类似
    series: [
        {
            name: 'GDP',
            type: 'map',
            mapType: 'world',
            roam: false,
            label: {
                normal: {
                    show: true
                },
                emphasis: {
                    show: true
                }
            },
            data: [
                // ... 国家 GDP 数据
            ]
        }
    ]
};

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

// 添加点击事件
myChart.on('click', function (params) {
    // 获取点击的国家或地区信息
    var name = params.name;
    // 显示详细信息
    alert('国家:' + name + '\nGDP:' + params.value);
});

通过以上 5 个案例,相信新手读者已经对 ECharts 地图图表有了初步的认识。在实际应用中,可以根据自己的需求进行修改和扩展,发挥 ECharts 地图图表的强大功能。祝大家在可视化领域取得更大的成就!

分享到: