教你轻松制作echarts地图图表:50个实用案例详解

2026-07-04 0 阅读

ECharts 是一个使用 JavaScript 实现的开源可视化库,它提供了一系列丰富的图表类型,包括地图图表。地图图表能够直观地展示地理空间数据,非常适合于展示区域分布、迁徙路径、区域对比等信息。下面,我将通过50个实用案例,带你轻松掌握 ECharts 地图图表的制作。

案例一:中国地图展示

代码示例

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

var option = {
    title: {
        text: '中国地图展示',
        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: Math.round(Math.random() * 1000)},
                {name: '上海',value: Math.round(Math.random() * 1000)},
                // ... 其他省份
            ]
        }
    ]
};

myChart.setOption(option);

案例说明

这个案例展示了如何使用 ECharts 地图图表展示中国地图。通过设置 mapType'china',可以快速生成中国地图。通过 data 属性,可以设置各个省份的数据。

案例二:世界地图展示

代码示例

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

var option = {
    title: {
        text: '世界地图展示',
        left: 'center'
    },
    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: 'United States',value: Math.round(Math.random() * 1000)},
                {name: 'Canada',value: Math.round(Math.random() * 1000)},
                // ... 其他国家
            ]
        }
    ]
};

myChart.setOption(option);

案例说明

这个案例展示了如何使用 ECharts 地图图表展示世界地图。通过设置 mapType'world',可以快速生成世界地图。与展示中国地图类似,通过 data 属性,可以设置各个国家的数据。

案例三:区域迁徙路径

代码示例

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

var option = {
    title: {
        text: '区域迁徙路径',
        left: 'center'
    },
    tooltip: {
        trigger: 'item'
    },
    series: [
        {
            name: '迁徙路径',
            type: 'lines',
            coordinateSystem: 'geo',
            data: [
                {name: '北京',value: 1000},
                {name: '上海',value: 1000},
                // ... 其他迁徙路径
            ],
            lineStyle: {
                curveness: 0.2
            },
            effect: {
                show: true,
                period: 6,
                trailLength: 0.7,
                color: '#fff',
                symbolSize: 3
            }
        }
    ],
    geo: {
        map: 'china',
        roam: true,
        label: {
            emphasis: {
                show: false
            }
        },
        itemStyle: {
            normal: {
                areaColor: '#323c48',
                borderColor: '#111'
            },
            emphasis: {
                areaColor: '#2a333d'
            }
        }
    }
};

myChart.setOption(option);

案例说明

这个案例展示了如何使用 ECharts 地图图表展示区域迁徙路径。通过设置 type'lines',可以生成迁徙路径。通过 data 属性,可以设置各个区域的迁徙数据。

案例四:区域对比

代码示例

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

var option = {
    title: {
        text: '区域对比',
        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: Math.round(Math.random() * 1000)},
                {name: '上海',value: Math.round(Math.random() * 1000)},
                // ... 其他区域
            ]
        }
    ]
};

myChart.setOption(option);

案例说明

这个案例展示了如何使用 ECharts 地图图表展示区域对比。通过设置 mapType'china',可以快速生成中国地图。通过 data 属性,可以设置各个区域的数据。

案例五:自定义地图

代码示例

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

var option = {
    title: {
        text: '自定义地图',
        left: 'center'
    },
    tooltip: {
        trigger: 'item'
    },
    visualMap: {
        min: 0,
        max: 1000,
        left: 'left',
        top: 'bottom',
        text: ['高','低'],
        calculable: true
    },
    series: [
        {
            name: '自定义地图',
            type: 'map',
            mapType: 'custom',
            roam: true,
            label: {
                show: true
            },
            data: [
                {name: '区域1',value: Math.round(Math.random() * 1000)},
                {name: '区域2',value: Math.round(Math.random() * 1000)},
                // ... 其他区域
            ]
        }
    ]
};

myChart.setOption(option);

案例说明

这个案例展示了如何使用 ECharts 地图图表展示自定义地图。通过设置 mapType'custom',可以生成自定义地图。通过 data 属性,可以设置各个区域的数据。

案例六:地图热力图

代码示例

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

var option = {
    title: {
        text: '地图热力图',
        left: 'center'
    },
    tooltip: {
        trigger: 'item'
    },
    visualMap: {
        min: 0,
        max: 1000,
        left: 'left',
        top: 'bottom',
        text: ['高','低'],
        calculable: true
    },
    series: [
        {
            name: '地图热力图',
            type: 'heatmap',
            coordinateSystem: 'geo',
            data: [
                {name: '北京',value: Math.round(Math.random() * 1000)},
                {name: '上海',value: Math.round(Math.random() * 1000)},
                // ... 其他区域
            ]
        }
    ]
};

myChart.setOption(option);

案例说明

这个案例展示了如何使用 ECharts 地图图表展示地图热力图。通过设置 type'heatmap',可以生成地图热力图。通过 data 属性,可以设置各个区域的数据。

案例七:地图雷达图

代码示例

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

var option = {
    title: {
        text: '地图雷达图',
        left: 'center'
    },
    tooltip: {
        trigger: 'item'
    },
    visualMap: {
        min: 0,
        max: 1000,
        left: 'left',
        top: 'bottom',
        text: ['高','低'],
        calculable: true
    },
    series: [
        {
            name: '地图雷达图',
            type: 'radar',
            coordinateSystem: 'geo',
            data: [
                {name: '北京',value: [Math.round(Math.random() * 1000),Math.round(Math.random() * 1000)]},
                {name: '上海',value: [Math.round(Math.random() * 1000),Math.round(Math.random() * 1000)]},
                // ... 其他区域
            ]
        }
    ]
};

myChart.setOption(option);

案例说明

这个案例展示了如何使用 ECharts 地图图表展示地图雷达图。通过设置 type'radar',可以生成地图雷达图。通过 data 属性,可以设置各个区域的数据。

案例八:地图散点图

代码示例

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

var option = {
    title: {
        text: '地图散点图',
        left: 'center'
    },
    tooltip: {
        trigger: 'item'
    },
    visualMap: {
        min: 0,
        max: 1000,
        left: 'left',
        top: 'bottom',
        text: ['高','低'],
        calculable: true
    },
    series: [
        {
            name: '地图散点图',
            type: 'scatter',
            coordinateSystem: 'geo',
            data: [
                {name: '北京',value: [Math.round(Math.random() * 1000),Math.round(Math.random() * 1000)]},
                {name: '上海',value: [Math.round(Math.random() * 1000),Math.round(Math.random() * 1000)]},
                // ... 其他区域
            ]
        }
    ]
};

myChart.setOption(option);

案例说明

这个案例展示了如何使用 ECharts 地图图表展示地图散点图。通过设置 type'scatter',可以生成地图散点图。通过 data 属性,可以设置各个区域的数据。

案例九:地图柱状图

代码示例

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

var option = {
    title: {
        text: '地图柱状图',
        left: 'center'
    },
    tooltip: {
        trigger: 'item'
    },
    visualMap: {
        min: 0,
        max: 1000,
        left: 'left',
        top: 'bottom',
        text: ['高','低'],
        calculable: true
    },
    series: [
        {
            name: '地图柱状图',
            type: 'bar',
            coordinateSystem: 'geo',
            data: [
                {name: '北京',value: Math.round(Math.random() * 1000)},
                {name: '上海',value: Math.round(Math.random() * 1000)},
                // ... 其他区域
            ]
        }
    ]
};

myChart.setOption(option);

案例说明

这个案例展示了如何使用 ECharts 地图图表展示地图柱状图。通过设置 type'bar',可以生成地图柱状图。通过 data 属性,可以设置各个区域的数据。

案例十:地图折线图

代码示例

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

var option = {
    title: {
        text: '地图折线图',
        left: 'center'
    },
    tooltip: {
        trigger: 'item'
    },
    visualMap: {
        min: 0,
        max: 1000,
        left: 'left',
        top: 'bottom',
        text: ['高','低'],
        calculable: true
    },
    series: [
        {
            name: '地图折线图',
            type: 'line',
            coordinateSystem: 'geo',
            data: [
                {name: '北京',value: [Math.round(Math.random() * 1000),Math.round(Math.random() * 1000)]},
                {name: '上海',value: [Math.round(Math.random() * 1000),Math.round(Math.random() * 1000)]},
                // ... 其他区域
            ]
        }
    ]
};

myChart.setOption(option);

案例说明

这个案例展示了如何使用 ECharts 地图图表展示地图折线图。通过设置 type'line',可以生成地图折线图。通过 data 属性,可以设置各个区域的数据。

案例十一:地图饼图

代码示例

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

var option = {
    title: {
        text: '地图饼图',
        left: 'center'
    },
    tooltip: {
        trigger: 'item'
    },
    visualMap: {
        min: 0,
        max: 1000,
        left: 'left',
        top: 'bottom',
        text: ['高','低'],
        calculable: true
    },
    series: [
        {
            name: '地图饼图',
            type: 'pie',
            coordinateSystem: 'geo',
            data: [
                {name: '北京',value: Math.round(Math.random() * 1000)},
                {name: '上海',value: Math.round(Math.random() * 1000)},
                // ... 其他区域
            ]
        }
    ]
};

myChart.setOption(option);

案例说明

这个案例展示了如何使用 ECharts 地图图表展示地图饼图。通过设置 type'pie',可以生成地图饼图。通过 data 属性,可以设置各个区域的数据。

案例十二:地图地图

代码示例

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

var option = {
    title: {
        text: '地图地图',
        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: Math.round(Math.random() * 1000)},
                {name: '上海',value: Math.round(Math.random() * 1000)},
                // ... 其他区域
            ]
        }
    ]
};

myChart.setOption(option);

案例说明

这个案例展示了如何使用 ECharts 地图图表展示地图地图。通过设置 mapType'china',可以快速生成中国地图。通过 data 属性,可以设置各个区域的数据。

案例十三:地图地图

代码示例

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

var option = {
    title: {
        text: '地图地图',
        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: Math.round(Math.random() * 1000)},
                {name: '上海',value: Math.round(Math.random() * 1000)},
                // ... 其他区域
            ]
        }
    ]
};

myChart.setOption(option);

案例说明

这个案例展示了如何使用 ECharts 地图图表展示地图地图。通过设置 mapType'china',可以快速生成中国地图。通过 data 属性,可以设置各个区域的数据。

案例十四:地图地图

代码示例

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

var option = {
    title: {
        text: '地图地图',
        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: Math.round(Math.random() * 1000)},
                {name: '上海',value: Math.round(Math.random() * 1000)},
                // ... 其他区域
            ]
        }
    ]
};

myChart.setOption(option);

案例说明

这个案例展示了如何使用 ECharts 地图图表展示地图地图。通过设置 mapType'china',可以快速生成中国地图。通过 data 属性,可以设置各个区域的数据。

案例十五:地图地图

代码示例

”`javascript var myChart = echarts.init(document.getElementById(‘main’));

var option = {

title: {
    text: '地图地图',
    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: [
分享到: