教你用 ECharts 快速制作地图图表:10个实用案例,轻松上手!

2026-07-27 0 阅读

引言

地图图表是一种非常直观的数据展示方式,它能够将地理信息与数据统计完美结合。ECharts 是一款功能强大的 JavaScript 库,它提供了丰富的图表类型,包括地图图表。本篇文章将为你介绍如何使用 ECharts 快速制作地图图表,并提供10个实用案例,帮助你轻松上手。

案例一:中国省市区地图

步骤

  1. 准备地图数据:可以从 ECharts 官网下载中国省市区地图数据。
  2. 引入 ECharts 库:在 HTML 文件中引入 ECharts 库。
  3. 初始化地图实例:在 JavaScript 中创建 ECharts 实例,并设置地图类型为 'chinaMap'
  4. 配置地图选项:设置地图的参数,如标题、图例、数据等。

代码示例

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

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

// 指定图表的配置项和数据
var option = {
    title: {
        text: '中国省市区地图'
    },
    tooltip: {},
    legend: {
        orient: 'vertical',
        left: 'left',
        data:['销量']
    },
    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);

案例二:世界地图

步骤

  1. 准备世界地图数据:可以从 ECharts 官网下载世界地图数据。
  2. 引入 ECharts 库和世界地图数据。
  3. 初始化地图实例,并设置地图类型为 'worldMap'
  4. 配置地图选项,设置标题、图例、数据等。

代码示例

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

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

// 指定图表的配置项和数据
var option = {
    title: {
        text: '世界地图'
    },
    tooltip: {},
    legend: {
        orient: 'vertical',
        left: 'left',
        data:['销量']
    },
    series: [
        {
            name: '销量',
            type: 'map',
            mapType: 'world',
            label: {
                show: true
            },
            data: [
                {name: 'Afghanistan', value: Math.round(Math.random() * 1000)},
                {name: 'Angola', value: Math.round(Math.random() * 1000)},
                // ... 其他国家数据
            ]
        }
    ]
};

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

案例三:自定义地图

步骤

  1. 准备自定义地图数据:可以根据实际需求创建地图数据。
  2. 引入 ECharts 库和自定义地图数据。
  3. 初始化地图实例,并设置地图类型为 'custom'
  4. 配置地图选项,设置标题、图例、数据等。

代码示例

// 引入 ECharts 主模块
var echarts = require('echarts/lib/echarts');
// 引入自定义地图数据
require('echarts/map/js/customMap');

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

// 指定图表的配置项和数据
var option = {
    title: {
        text: '自定义地图'
    },
    tooltip: {},
    legend: {
        orient: 'vertical',
        left: 'left',
        data:['销量']
    },
    series: [
        {
            name: '销量',
            type: 'map',
            mapType: 'custom',
            label: {
                show: true
            },
            data: [
                {name: '区域1', value: Math.round(Math.random() * 1000)},
                {name: '区域2', value: Math.round(Math.random() * 1000)},
                // ... 其他区域数据
            ]
        }
    ]
};

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

案例四:地图热力图

步骤

  1. 准备热力图数据:可以根据实际需求创建热力图数据。
  2. 引入 ECharts 库和热力图数据。
  3. 初始化地图实例,并设置地图类型为 'heatmap'
  4. 配置地图选项,设置标题、图例、数据等。

代码示例

// 引入 ECharts 主模块
var echarts = require('echarts/lib/echarts');
// 引入热力图数据
require('echarts/map/js/heatmap');

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

// 指定图表的配置项和数据
var option = {
    title: {
        text: '地图热力图'
    },
    tooltip: {},
    legend: {
        orient: 'vertical',
        left: 'left',
        data:['销量']
    },
    series: [
        {
            name: '销量',
            type: 'heatmap',
            coordinateSystem: 'geo',
            data: [
                {name: '区域1', value: Math.round(Math.random() * 1000)},
                {name: '区域2', value: Math.round(Math.random() * 1000)},
                // ... 其他区域数据
            ]
        }
    ]
};

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

案例五:地图气泡图

步骤

  1. 准备气泡图数据:可以根据实际需求创建气泡图数据。
  2. 引入 ECharts 库和气泡图数据。
  3. 初始化地图实例,并设置地图类型为 'bubble'
  4. 配置地图选项,设置标题、图例、数据等。

代码示例

// 引入 ECharts 主模块
var echarts = require('echarts/lib/echarts');
// 引入气泡图数据
require('echarts/map/js/bubble');

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

// 指定图表的配置项和数据
var option = {
    title: {
        text: '地图气泡图'
    },
    tooltip: {},
    legend: {
        orient: 'vertical',
        left: 'left',
        data:['销量']
    },
    series: [
        {
            name: '销量',
            type: 'bubble',
            coordinateSystem: 'geo',
            data: [
                {name: '区域1', value: Math.round(Math.random() * 1000)},
                {name: '区域2', value: Math.round(Math.random() * 1000)},
                // ... 其他区域数据
            ]
        }
    ]
};

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

案例六:地图散点图

步骤

  1. 准备散点图数据:可以根据实际需求创建散点图数据。
  2. 引入 ECharts 库和散点图数据。
  3. 初始化地图实例,并设置地图类型为 'scatter'
  4. 配置地图选项,设置标题、图例、数据等。

代码示例

// 引入 ECharts 主模块
var echarts = require('echarts/lib/echarts');
// 引入散点图数据
require('echarts/map/js/scatter');

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

// 指定图表的配置项和数据
var option = {
    title: {
        text: '地图散点图'
    },
    tooltip: {},
    legend: {
        orient: 'vertical',
        left: 'left',
        data:['销量']
    },
    series: [
        {
            name: '销量',
            type: 'scatter',
            coordinateSystem: 'geo',
            data: [
                {name: '区域1', value: Math.round(Math.random() * 1000)},
                {name: '区域2', value: Math.round(Math.random() * 1000)},
                // ... 其他区域数据
            ]
        }
    ]
};

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

案例七:地图多边形图

步骤

  1. 准备多边形图数据:可以根据实际需求创建多边形图数据。
  2. 引入 ECharts 库和多边形图数据。
  3. 初始化地图实例,并设置地图类型为 'polygon'
  4. 配置地图选项,设置标题、图例、数据等。

代码示例

// 引入 ECharts 主模块
var echarts = require('echarts/lib/echarts');
// 引入多边形图数据
require('echarts/map/js/polygon');

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

// 指定图表的配置项和数据
var option = {
    title: {
        text: '地图多边形图'
    },
    tooltip: {},
    legend: {
        orient: 'vertical',
        left: 'left',
        data:['销量']
    },
    series: [
        {
            name: '销量',
            type: 'polygon',
            coordinateSystem: 'geo',
            data: [
                {name: '区域1', value: Math.round(Math.random() * 1000)},
                {name: '区域2', value: Math.round(Math.random() * 1000)},
                // ... 其他区域数据
            ]
        }
    ]
};

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

案例八:地图折线图

步骤

  1. 准备折线图数据:可以根据实际需求创建折线图数据。
  2. 引入 ECharts 库和折线图数据。
  3. 初始化地图实例,并设置地图类型为 'line'
  4. 配置地图选项,设置标题、图例、数据等。

代码示例

// 引入 ECharts 主模块
var echarts = require('echarts/lib/echarts');
// 引入折线图数据
require('echarts/map/js/line');

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

// 指定图表的配置项和数据
var option = {
    title: {
        text: '地图折线图'
    },
    tooltip: {},
    legend: {
        orient: 'vertical',
        left: 'left',
        data:['销量']
    },
    series: [
        {
            name: '销量',
            type: 'line',
            coordinateSystem: 'geo',
            data: [
                {name: '区域1', value: Math.round(Math.random() * 1000)},
                {name: '区域2', value: Math.round(Math.random() * 1000)},
                // ... 其他区域数据
            ]
        }
    ]
};

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

案例九:地图柱状图

步骤

  1. 准备柱状图数据:可以根据实际需求创建柱状图数据。
  2. 引入 ECharts 库和柱状图数据。
  3. 初始化地图实例,并设置地图类型为 'bar'
  4. 配置地图选项,设置标题、图例、数据等。

代码示例

// 引入 ECharts 主模块
var echarts = require('echarts/lib/echarts');
// 引入柱状图数据
require('echarts/map/js/bar');

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

// 指定图表的配置项和数据
var option = {
    title: {
        text: '地图柱状图'
    },
    tooltip: {},
    legend: {
        orient: 'vertical',
        left: 'left',
        data:['销量']
    },
    series: [
        {
            name: '销量',
            type: 'bar',
            coordinateSystem: 'geo',
            data: [
                {name: '区域1', value: Math.round(Math.random() * 1000)},
                {name: '区域2', value: Math.round(Math.random() * 1000)},
                // ... 其他区域数据
            ]
        }
    ]
};

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

案例十:地图雷达图

步骤

  1. 准备雷达图数据:可以根据实际需求创建雷达图数据。
  2. 引入 ECharts 库和雷达图数据。
  3. 初始化地图实例,并设置地图类型为 'radar'
  4. 配置地图选项,设置标题、图例、数据等。

代码示例

// 引入 ECharts 主模块
var echarts = require('echarts/lib/echarts');
// 引入雷达图数据
require('echarts/map/js/radar');

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

// 指定图表的配置项和数据
var option = {
    title: {
        text: '地图雷达图'
    },
    tooltip: {},
    legend: {
        orient: 'vertical',
        left: 'left',
        data:['销量']
    },
    series: [
        {
            name: '销量',
            type: 'radar',
            coordinateSystem: 'geo',
            data: [
                {name: '区域1', value: Math.round(Math.random() * 1000)},
                {name: '区域2', value: Math.round(Math.random() * 1000)},
                // ... 其他区域数据
            ]
        }
    ]
};

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

总结

通过以上10个案例,相信你已经掌握了如何使用 ECharts 快速制作地图图表。在实际应用中,可以根据需求选择合适的地图类型和数据,并通过 ECharts 提供的丰富配置项来优化图表效果。祝你制作出令人惊叹的地图图表!

分享到: