新手必看!用ECharts轻松绘制地图图表,20个实用案例教程解析

2026-09-16 0 阅读

1. 简介

ECharts是一个使用JavaScript编写的开源可视化库,它支持多种图表类型,包括地图图表。地图图表是一种非常有用的工具,可以帮助我们直观地展示地理位置数据。对于新手来说,学习如何使用ECharts绘制地图图表是一个很好的起点。本文将为你提供20个实用的案例教程,帮助你快速上手。

2. ECharts地图图表基本用法

2.1 引入ECharts库

首先,你需要在你的HTML文件中引入ECharts库。可以通过CDN或者本地文件的方式引入。

<script src="https://cdn.jsdelivr.net/npm/echarts@5.0.0/dist/echarts.min.js"></script>

2.2 准备地图数据

ECharts提供了丰富的地图数据,你可以通过在线平台获取或自行准备。以下是一个示例:

var geoCoordMap = {
  '海门': [121.15, 31.88],
  '临海': [121.13, 28.67]
  // 更多城市数据...
};

2.3 初始化图表

创建一个图表实例并指定图表的配置项和数据。

var myChart = echarts.init(document.getElementById('main'));
var option = {
  // 图表配置项...
};
myChart.setOption(option);

3. 实用案例教程解析

3.1 中国地图

案例说明

绘制中国地图,并添加不同省份的名称和数据。

示例代码

option = {
  title: {
    text: '中国地图'
  },
  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: false
    },
    data: [{
      name: '北京',
      value: Math.round(Math.random() * 1000)
    }, {
      name: '广东',
      value: Math.round(Math.random() * 1000)
    }]
  }]
};

3.2 热力地图

案例说明

绘制一个全球城市热力地图。

示例代码

option = {
  title: {
    text: '全球城市热力地图'
  },
  tooltip: {
    trigger: 'item',
    formatter: function(params){
      return params.name + ':' + params.value;
    }
  },
  visualMap: {
    min: 0,
    max: 1000,
    left: 'left',
    top: 'bottom',
    text: ['高','低'],
    calculable: true
  },
  series: [{
    name: '人口数量',
    type: 'heatmap',
    coordinateSystem: 'geo',
    data: [
      {name: '北京', value: [116.46, 39.92, 500]},
      {name: '上海', value: [121.48, 31.22, 300]},
      // 更多数据...
    ]
  }]
};

3.3 3D地图

案例说明

绘制一个3D地球地图。

示例代码

option = {
  title: {
    text: '3D地球地图'
  },
  tooltip: {
    trigger: 'item',
    formatter: function(params){
      return params.name;
    }
  },
  visualMap: {
    min: -1,
    max: 1,
    left: 'left',
    top: 'bottom',
    text: ['高','低'],
    calculable: true
  },
  series: [{
    name: '数据',
    type: 'map',
    mapType: 'world',
    roam: true,
    label: {
      show: false,
      formatter: '{b}'
    },
    data: [
      {name: '阿富汗', value: 1},
      {name: '阿拉伯联合酋长国', value: -1},
      // 更多数据...
    ]
  }]
};

3.4 互动地图

案例说明

创建一个可交互的地图,用户可以通过鼠标点击和拖动查看不同的区域。

示例代码

option = {
  title: {
    text: '互动地图'
  },
  tooltip: {
    trigger: 'item'
  },
  visualMap: {
    min: 0,
    max: 1000,
    left: 'left',
    top: 'bottom',
    text: ['高','低'],
    calculable: true
  },
  series: [{
    name: '数据',
    type: 'map',
    mapType: 'world',
    roam: true,
    label: {
      show: true
    },
    data: [
      {name: '中国', value: Math.round(Math.random() * 1000)}
      // 更多数据...
    ]
  }]
};

4. 总结

以上是20个实用的ECharts地图图表案例教程,通过这些案例,你可以了解到ECharts地图图表的基本用法和各种高级功能。希望这些教程能够帮助你快速上手ECharts地图图表绘制,为你的项目添加丰富的地图可视化效果。

分享到: