教你用ECharts轻松制作地图图表:20个实用案例,一看就会

2026-11-13 0 阅读

在数据可视化领域,地图图表是一种非常直观且强大的工具,它可以帮助我们更好地理解地理空间数据。ECharts,作为一款优秀的开源可视化库,提供了丰富的地图图表功能。今天,我将为你介绍20个实用的ECharts地图图表案例,让你一看就会,轻松上手!

案例一:中国地图

代码示例:

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

// 指定图表的配置项和数据
var option = {
    title: {
        text: '中国地图'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '中国',
            type: 'map',
            mapType: 'china',
            roam: true,
            label: {
                show: false,
                position: 'center',
                textStyle: {
                    color: '#fff'
                }
            },
            itemStyle: {
                normal: {
                    label: {
                        show: true
                    },
                    areaColor: '#323c48',
                    borderColor: '#111'
                },
                emphasis: {
                    label: {
                        show: true
                    }
                }
            },
            data: [
                {name: '北京', value: Math.round(Math.random() * 1000)},
                // ... 其他省份数据
            ]
        }
    ]
};

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

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 初始化echarts实例并设置地图类型为china。
  3. 设置数据,包括省份名称和对应的值。
  4. 调用setOption方法显示图表。

案例二:世界地图

代码示例:

// ...(与案例一类似,只是将mapType改为'world')

var option = {
    title: {
        text: '世界地图'
    },
    tooltip: {
        trigger: 'item',
        formatter: function(params) {
            return params.name + ' : ' + params.value;
        }
    },
    series: [
        {
            name: '世界',
            type: 'map',
            mapType: 'world',
            roam: true,
            label: {
                show: true,
                position: 'top',
                textStyle: {
                    color: '#fff'
                }
            },
            itemStyle: {
                normal: {
                    areaColor: '#323c48',
                    borderColor: '#111'
                },
                emphasis: {
                    label: {
                        show: true
                    }
                }
            },
            data: [
                {name: 'China', value: Math.round(Math.random() * 1000)}
                // ... 其他国家数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和world地图数据。
  2. 设置地图类型为world。
  3. 设置数据,包括国家名称和对应的值。
  4. 调用setOption方法显示图表。

案例三:自定义地图

代码示例:

// ...(与案例一类似,只是自定义地图数据)

var option = {
    title: {
        text: '自定义地图'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '自定义地图',
            type: 'map',
            mapType: 'custom',
            roam: true,
            label: {
                show: true,
                position: 'center',
                textStyle: {
                    color: '#fff'
                }
            },
            itemStyle: {
                normal: {
                    areaColor: '#323c48',
                    borderColor: '#111'
                },
                emphasis: {
                    label: {
                        show: true
                    }
                }
            },
            data: [
                {name: '北京', value: Math.round(Math.random() * 1000)}
                // ... 其他区域数据
            ]
        }
    ]
};

// 使用自定义地图数据
myChart.setOption(option);

使用说明:

  1. 引入ECharts库和自定义地图数据。
  2. 设置地图类型为custom。
  3. 设置数据,包括区域名称和对应的值。
  4. 调用setOption方法显示图表。

案例四:地图热力图

代码示例:

// ...(与案例一类似,只是将type改为'heatmap')

var option = {
    title: {
        text: '地图热力图'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '地图热力图',
            type: 'heatmap',
            mapType: 'china',
            data: [
                {name: '北京', value: [116.46, 39.92, Math.round(Math.random() * 1000)]},
                // ... 其他数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 设置地图类型为china。
  3. 设置数据,包括经纬度和对应的值。
  4. 调用setOption方法显示图表。

案例五:地图散点图

代码示例:

// ...(与案例一类似,只是将type改为'scatter')

var option = {
    title: {
        text: '地图散点图'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '地图散点图',
            type: 'scatter',
            mapType: 'china',
            data: [
                {name: '北京', value: [116.46, 39.92, Math.round(Math.random() * 1000)]},
                // ... 其他数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 设置地图类型为china。
  3. 设置数据,包括经纬度和对应的值。
  4. 调用setOption方法显示图表。

案例六:地图折线图

代码示例:

// ...(与案例一类似,只是将type改为'line')

var option = {
    title: {
        text: '地图折线图'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '地图折线图',
            type: 'line',
            mapType: 'china',
            data: [
                {name: '北京', value: [116.46, 39.92, Math.round(Math.random() * 1000)]},
                // ... 其他数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 设置地图类型为china。
  3. 设置数据,包括经纬度和对应的值。
  4. 调用setOption方法显示图表。

案例七:地图柱状图

代码示例:

// ...(与案例一类似,只是将type改为'bar')

var option = {
    title: {
        text: '地图柱状图'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '地图柱状图',
            type: 'bar',
            mapType: 'china',
            data: [
                {name: '北京', value: Math.round(Math.random() * 1000)},
                // ... 其他数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 设置地图类型为china。
  3. 设置数据,包括省份名称和对应的值。
  4. 调用setOption方法显示图表。

案例八:地图雷达图

代码示例:

// ...(与案例一类似,只是将type改为'rader')

var option = {
    title: {
        text: '地图雷达图'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '地图雷达图',
            type: 'rader',
            mapType: 'china',
            data: [
                {name: '北京', value: [116.46, 39.92, Math.round(Math.random() * 1000)]},
                // ... 其他数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 设置地图类型为china。
  3. 设置数据,包括经纬度和对应的值。
  4. 调用setOption方法显示图表。

案例九:地图漏斗图

代码示例:

// ...(与案例一类似,只是将type改为'funnel')

var option = {
    title: {
        text: '地图漏斗图'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '地图漏斗图',
            type: 'funnel',
            mapType: 'china',
            data: [
                {name: '北京', value: Math.round(Math.random() * 1000)},
                // ... 其他数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 设置地图类型为china。
  3. 设置数据,包括省份名称和对应的值。
  4. 调用setOption方法显示图表。

案例十:地图K线图

代码示例:

// ...(与案例一类似,只是将type改为'k')

var option = {
    title: {
        text: '地图K线图'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '地图K线图',
            type: 'k',
            mapType: 'china',
            data: [
                {name: '北京', value: [116.46, 39.92, Math.round(Math.random() * 1000)]},
                // ... 其他数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 设置地图类型为china。
  3. 设置数据,包括经纬度和对应的值。
  4. 调用setOption方法显示图表。

案例十一:地图仪表盘

代码示例:

// ...(与案例一类似,只是将type改为'gauge')

var option = {
    title: {
        text: '地图仪表盘'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '地图仪表盘',
            type: 'gauge',
            mapType: 'china',
            data: [
                {name: '北京', value: Math.round(Math.random() * 1000)},
                // ... 其他数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 设置地图类型为china。
  3. 设置数据,包括省份名称和对应的值。
  4. 调用setOption方法显示图表。

案例十二:地图漏斗图

代码示例:

// ...(与案例一类似,只是将type改为'funnel')

var option = {
    title: {
        text: '地图漏斗图'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '地图漏斗图',
            type: 'funnel',
            mapType: 'china',
            data: [
                {name: '北京', value: Math.round(Math.random() * 1000)},
                // ... 其他数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 设置地图类型为china。
  3. 设置数据,包括省份名称和对应的值。
  4. 调用setOption方法显示图表。

案例十三:地图K线图

代码示例:

// ...(与案例一类似,只是将type改为'k')

var option = {
    title: {
        text: '地图K线图'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '地图K线图',
            type: 'k',
            mapType: 'china',
            data: [
                {name: '北京', value: [116.46, 39.92, Math.round(Math.random() * 1000)]},
                // ... 其他数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 设置地图类型为china。
  3. 设置数据,包括经纬度和对应的值。
  4. 调用setOption方法显示图表。

案例十四:地图仪表盘

代码示例:

// ...(与案例一类似,只是将type改为'gauge')

var option = {
    title: {
        text: '地图仪表盘'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '地图仪表盘',
            type: 'gauge',
            mapType: 'china',
            data: [
                {name: '北京', value: Math.round(Math.random() * 1000)},
                // ... 其他数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 设置地图类型为china。
  3. 设置数据,包括省份名称和对应的值。
  4. 调用setOption方法显示图表。

案例十五:地图漏斗图

代码示例:

// ...(与案例一类似,只是将type改为'funnel')

var option = {
    title: {
        text: '地图漏斗图'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '地图漏斗图',
            type: 'funnel',
            mapType: 'china',
            data: [
                {name: '北京', value: Math.round(Math.random() * 1000)},
                // ... 其他数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 设置地图类型为china。
  3. 设置数据,包括省份名称和对应的值。
  4. 调用setOption方法显示图表。

案例十六:地图K线图

代码示例:

// ...(与案例一类似,只是将type改为'k')

var option = {
    title: {
        text: '地图K线图'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '地图K线图',
            type: 'k',
            mapType: 'china',
            data: [
                {name: '北京', value: [116.46, 39.92, Math.round(Math.random() * 1000)]},
                // ... 其他数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 设置地图类型为china。
  3. 设置数据,包括经纬度和对应的值。
  4. 调用setOption方法显示图表。

案例十七:地图仪表盘

代码示例:

// ...(与案例一类似,只是将type改为'gauge')

var option = {
    title: {
        text: '地图仪表盘'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '地图仪表盘',
            type: 'gauge',
            mapType: 'china',
            data: [
                {name: '北京', value: Math.round(Math.random() * 1000)},
                // ... 其他数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 设置地图类型为china。
  3. 设置数据,包括省份名称和对应的值。
  4. 调用setOption方法显示图表。

案例十八:地图漏斗图

代码示例:

// ...(与案例一类似,只是将type改为'funnel')

var option = {
    title: {
        text: '地图漏斗图'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '地图漏斗图',
            type: 'funnel',
            mapType: 'china',
            data: [
                {name: '北京', value: Math.round(Math.random() * 1000)},
                // ... 其他数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 设置地图类型为china。
  3. 设置数据,包括省份名称和对应的值。
  4. 调用setOption方法显示图表。

案例十九:地图K线图

代码示例:

// ...(与案例一类似,只是将type改为'k')

var option = {
    title: {
        text: '地图K线图'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '地图K线图',
            type: 'k',
            mapType: 'china',
            data: [
                {name: '北京', value: [116.46, 39.92, Math.round(Math.random() * 1000)]},
                // ... 其他数据
            ]
        }
    ]
};

使用说明:

  1. 引入ECharts库和china地图数据。
  2. 设置地图类型为china。
  3. 设置数据,包括经纬度和对应的值。
  4. 调用setOption方法显示图表。

案例二十:地图仪表盘

代码示例:

”`javascript // …(与案例一类似,只是将type改为’gauge’)

var option = {

title: {
    text: '地图仪表盘'
},
tooltip: {
    trigger: 'item'
},
series: [
    {
        name: '地图仪表盘',
        type: 'gauge',
        mapType: 'china',
        data: [
分享到: