揭秘新手必学:用echarts轻松制作地图图表,5个实用案例带你快速上手

2026-11-11 0 阅读

在当今数据可视化领域,echarts是一个功能强大且易于上手的JavaScript图表库。它不仅支持丰富的图表类型,还提供了地图图表的功能,可以帮助开发者轻松地制作出美观且实用的地图数据展示。对于新手来说,以下5个实用案例将帮助你快速上手echarts地图图表的制作。

案例一:中国地图基础展示

1.1 准备工作

首先,确保你的HTML页面中引入了echarts库的JavaScript文件。

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

1.2 创建地图

接下来,你可以创建一个基本的地图图表,展示中国地图。

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

var option = {
    title: {
        text: '中国地图基础展示',
        left: 'center'
    },
    tooltip: {
        trigger: 'item'
    },
    visualMap: {
        min: 0,
        max: 100,
        left: 'left',
        top: 'bottom',
        text: ['高','低'],           // 文本,默认为数值文本
        calculable: true
    },
    series: [
        {
            name: '中国',
            type: 'map',
            mapType: 'china',
            roam: false,
            label: {
                show: true
            },
            data: [
                {name: '北京', value: Math.round(Math.random() * 1000)},
                {name: '上海', value: Math.round(Math.random() * 1000)},
                // ... 其他省份数据
            ]
        }
    ]
};

myChart.setOption(option);

1.3 分析与优化

在这个案例中,我们创建了一个简单的中国地图,每个省份的数据是随机生成的。你可以根据实际数据替换这些值。为了优化图表,可以调整visualMap的参数,以更好地展示数据的分布。

案例二:世界地图基础展示

2.1 准备工作

与案例一类似,确保你的HTML页面中引入了echarts库。

2.2 创建地图

创建一个世界地图的基本展示。

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

var option = {
    title: {
        text: '世界地图基础展示',
        left: 'center'
    },
    tooltip: {
        trigger: 'item'
    },
    visualMap: {
        min: 0,
        max: 100,
        left: 'left',
        top: 'bottom',
        text: ['高','低'],
        calculable: true
    },
    series: [
        {
            name: '世界',
            type: 'map',
            mapType: 'world',
            roam: false,
            label: {
                show: true
            },
            data: [
                {name: 'China', value: Math.round(Math.random() * 1000)},
                {name: 'USA', value: Math.round(Math.random() * 1000)},
                // ... 其他国家数据
            ]
        }
    ]
};

myChart.setOption(option);

2.3 分析与优化

在这个案例中,我们创建了一个世界地图的基础展示。与案例一类似,你可以根据实际数据替换这些值,并优化visualMap的参数。

案例三:省市区联动地图

3.1 准备工作

引入echarts库。

3.2 创建地图

创建一个省市区联动的地图图表。

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

var option = {
    title: {
        text: '省市区联动地图',
        left: 'center'
    },
    tooltip: {
        trigger: 'item'
    },
    visualMap: {
        min: 0,
        max: 100,
        left: 'left',
        top: 'bottom',
        text: ['高','低'],
        calculable: true
    },
    series: [
        {
            name: '全国',
            type: 'map',
            mapType: 'china',
            label: {
                show: true
            },
            data: [
                {name: '北京市', value: Math.round(Math.random() * 1000)},
                {name: '天津市', value: Math.round(Math.random() * 1000)},
                // ... 其他省市数据
            ]
        },
        {
            name: '北京市',
            type: 'map',
            mapType: 'china',
            mapType: 'beijing',
            label: {
                show: true
            },
            data: [
                {name: '东城区', value: Math.round(Math.random() * 1000)},
                {name: '西城区', value: Math.round(Math.random() * 1000)},
                // ... 其他区数据
            ]
        }
        // ... 其他省市区的数据
    ]
};

myChart.setOption(option);

3.3 分析与优化

在这个案例中,我们创建了一个省市区联动的地图图表。每个省市区的数据是随机生成的。你可以根据实际数据替换这些值,并优化图表的样式和参数。

案例四:地图热力图

4.1 准备工作

引入echarts库。

4.2 创建地图

创建一个地图热力图。

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

var option = {
    title: {
        text: '地图热力图',
        left: 'center'
    },
    tooltip: {
        trigger: 'item',
        formatter: '{b}: {c}'
    },
    visualMap: {
        min: 0,
        max: 100,
        left: 'left',
        top: 'bottom',
        text: ['高','低'],
        calculable: true
    },
    series: [
        {
            name: '热力图',
            type: 'heatmap',
            coordinateSystem: 'geo',
            data: [
                [116.391, 39.928, 100],
                [116.392, 39.927, 100],
                // ... 其他点数据
            ]
        }
    ]
};

myChart.setOption(option);

4.3 分析与优化

在这个案例中,我们创建了一个地图热力图。数据是随机生成的,你可以根据实际数据替换这些值。为了更好地展示热力图,可以调整visualMap的参数。

案例五:多地图组合展示

5.1 准备工作

引入echarts库。

5.2 创建地图

创建一个多地图组合展示的图表。

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

var option = {
    title: {
        text: '多地图组合展示',
        left: 'center'
    },
    tooltip: {
        trigger: 'item'
    },
    visualMap: {
        min: 0,
        max: 100,
        left: 'left',
        top: 'bottom',
        text: ['高','低'],
        calculable: true
    },
    series: [
        {
            name: '中国地图',
            type: 'map',
            mapType: 'china',
            label: {
                show: true
            },
            data: [
                {name: '北京', value: Math.round(Math.random() * 1000)},
                {name: '上海', value: Math.round(Math.random() * 1000)},
                // ... 其他省份数据
            ]
        },
        {
            name: '世界地图',
            type: 'map',
            mapType: 'world',
            label: {
                show: true
            },
            data: [
                {name: 'China', value: Math.round(Math.random() * 1000)},
                {name: 'USA', value: Math.round(Math.random() * 1000)},
                // ... 其他国家数据
            ]
        }
    ]
};

myChart.setOption(option);

5.3 分析与优化

在这个案例中,我们创建了一个多地图组合展示的图表。每个地图的数据是随机生成的。你可以根据实际数据替换这些值,并优化图表的布局和参数。

通过以上5个案例,你可以了解到echarts地图图表的基本制作方法。在实际应用中,你可以根据自己的需求调整图表的样式、参数和数据。希望这些案例能帮助你快速上手echarts地图图表的制作。

分享到: