新手必看!用ECharts轻松制作地图图表:实战案例解析与技巧分享

2026-07-04 0 阅读

在数据可视化领域,地图图表因其直观性和易于理解的特性而备受青睐。ECharts 是一个使用 JavaScript 实现的开源可视化库,它提供了丰富的图表类型,包括地图图表。对于新手来说,使用 ECharts 制作地图图表可能有些挑战,但不用担心,本文将带你一步步掌握制作地图图表的技巧,并通过实战案例进行解析。

了解地图图表的基本概念

地图图表是一种将数据点或区域以地图形式展示的图表。在 ECharts 中,地图图表可以通过添加 echarts.Map 类型来实现。

地图数据结构

在 ECharts 中,地图数据通常以 JSON 格式提供。一个典型的地图数据结构如下:

{
  "features": [
    {
      "properties": {
        "name": "北京"
      },
      "geometry": {
        "coordinates": [116.46, 39.92]
      }
    },
    {
      "properties": {
        "name": "上海"
      },
      "geometry": {
        "coordinates": [121.47, 31.23]
      }
    }
  ]
}

这里,features 数组包含了地图上的所有区域,每个区域由 propertiesgeometry 两个部分组成。properties 包含了区域的属性,如名称;geometry 包含了区域的地理坐标。

ECharts 地图图表的基本使用

1. 引入 ECharts 和地图数据

首先,你需要在 HTML 文件中引入 ECharts 库和地图数据。

<!DOCTYPE html>
<html style="height: 100%">
<head>
    <meta charset="utf-8">
</head>
<body style="height: 100%; margin: 0">
    <div id="container" style="height: 100%"></div>
    <script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.3.2/echarts.min.js"></script>
    <script src="https://cdn.bootcdn.net/ajax/libs/echarts/map/js/china.js"></script>
</body>
</html>

在上面的代码中,我们引入了 ECharts 库和 china.js 地图数据文件。

2. 初始化 ECharts 实例

接下来,在 JavaScript 中初始化 ECharts 实例,并设置地图图表的配置项。

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

var option = {
    series: [{
        type: 'map',
        mapType: 'china',
        label: {
            show: true
        },
        data: [{
            name: '北京',
            value: 100
        }]
    }]
};

myChart.setOption(option);

在上面的代码中,我们设置了地图类型为 china,并添加了一个数据点,表示北京的值为 100。

实战案例解析

案例:展示中国各省市的疫情数据

下面是一个展示中国各省市区疫情数据的地图图表案例。

var option = {
    title: {
        text: '中国各省市疫情数据',
        subtext: '数据来源:国家卫生健康委员会',
        left: 'center'
    },
    tooltip: {
        trigger: 'item'
    },
    visualMap: {
        min: 0,
        max: 1000,
        left: 'left',
        top: 'bottom',
        text: ['高','低'],           // 文本,默认为数值文本
        calculable: true
    },
    series: [{
        name: '疫情数据',
        type: 'map',
        mapType: 'china',
        roam: true,
        label: {
            show: true
        },
        data: [
            {name: '北京', value: 10},
            {name: '上海', value: 20},
            // ... 其他省市数据
        ]
    }]
};

在上面的代码中,我们使用了 visualMap 组件来设置数据的范围,并通过 series 数组中的 data 属性添加了各省市区的数据。

技巧分享

  1. 优化地图加载速度:对于包含大量区域的地图,可以尝试使用地图切片来提高加载速度。

  2. 自定义地图样式:ECharts 允许你自定义地图的样式,包括颜色、阴影等。

  3. 交互式地图:通过配置 roamzoom 属性,可以实现地图的缩放和拖动功能。

  4. 数据动态更新:可以使用 setOption 方法动态更新地图上的数据。

通过本文的介绍和实战案例,相信你已经掌握了使用 ECharts 制作地图图表的基本技巧。现在,你可以尝试自己制作一个地图图表,展示你感兴趣的数据。祝你成功!

分享到: