新手必看!轻松掌握echarts地图图表制作技巧,30个实战案例解析

2026-10-29 0 阅读

地图图表作为一种直观的数据展示方式,在数据分析、市场调研等领域有着广泛的应用。ECharts 是一款功能强大的 JavaScript 图表库,它提供了丰富的地图图表制作功能。对于新手来说,掌握 ECharts 地图图表的制作技巧不仅能够提升工作效率,还能让数据展示更加生动有趣。本文将为你带来 30 个实战案例解析,帮助你轻松掌握 ECharts 地图图表制作技巧。

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

首先,让我们从最基础的中国地图展示开始。通过 ECharts,你可以轻松绘制出包含省份边界的地图,并展示相应的数据。

// 引入 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: {
        trigger: 'item'
    },
    series: [
        {
            name: '中国',
            type: 'map',
            mapType: 'china',
            roam: false,
            label: {
                show: true
            },
            data: [
                // 这里可以添加省份的数据
            ]
        }
    ]
};

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

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

世界地图的展示与国内地图类似,只需更换地图类型即可。

// 引入世界地图数据
require('echarts/map/js/world');

// 其余配置与案例一类似,只需将 mapType 替换为 'world' 即可

案例三:省份点击事件

为地图添加点击事件,可以在点击不同的省份时执行特定的操作。

myChart.on('click', function (params) {
    if (params.componentType === 'series') {
        console.log('点击了:', params.name);
        // 这里可以添加点击事件的处理逻辑
    }
});

案例四:动态数据更新

在地图上展示动态数据,如实时疫情数据、经济指标等。

// 假设有一个动态数据数组
var dynamicData = [
    // 数据格式与 mapType 对应的省份数据格式一致
];

// 使用 setInterval 方法定时更新数据
setInterval(function () {
    // 更新数据
    option.series[0].data = dynamicData;
    myChart.setOption(option);
}, 1000);

案例五:地图交互效果

为地图添加交互效果,如放大缩小、拖动地图等。

option.series[0].roam = true; // 启用地图的缩放和拖动功能

案例六:自定义地图样式

通过自定义地图样式,你可以让地图更加符合你的需求。

option.series[0].itemStyle = {
    normal: {
        areaColor: '#323c48', // 地图颜色
        borderColor: '#111' // 省份边框颜色
    },
    emphasis: {
        areaColor: '#2a333d' // 鼠标悬停时的颜色
    }
};

案例七:多地图叠加

在一个图表中展示多个地图,如中国地图和世界地图。

option.series = [
    {
        name: '中国',
        type: 'map',
        mapType: 'china',
        // ...
    },
    {
        name: '世界',
        type: 'map',
        mapType: 'world',
        // ...
    }
];

案例八:地图上的文本标注

在地图上添加文本标注,用于突出显示特定的信息。

option.series[0].markPoint = {
    symbol: 'pin',
    symbolSize: 50,
    data: [
        // 标注点的数据,包括经纬度和文本内容
    ]
};

案例九:地图上的线

在地图上绘制线条,如航线、边界线等。

option.series[0].lines = {
    // 线的数据,包括起点和终点坐标
};

案例十:地图上的散点

在地图上展示散点数据,如城市分布、人口密度等。

option.series[0].markPoint = {
    symbol: 'circle',
    symbolSize: 10,
    data: [
        // 散点数据,包括经纬度和值
    ]
};

案例十一:地图上的柱状图

在地图上展示柱状图,如城市GDP、人口数量等。

option.series[0].type = 'bar';
option.series[0].data = [
    // 柱状图数据,包括省份名称和值
];

案例十二:地图上的饼图

在地图上展示饼图,如省份人口占比、城市类型分布等。

option.series[0].type = 'pie';
option.series[0].radius = ['30%', '70%']; // 内外半径比例
option.series[0].data = [
    // 饼图数据,包括省份名称和值
];

案例十三:地图上的雷达图

在地图上展示雷达图,如省份的经济发展水平、资源分布等。

option.series[0].type = 'radar';
option.series[0].data = [
    // 雷达图数据,包括省份名称和指标值
];

案例十四:地图上的折线图

在地图上展示折线图,如城市温度变化、经济趋势等。

option.series[0].type = 'line';
option.series[0].data = [
    // 折线图数据,包括时间和值
];

案例十五:地图上的散点图

在地图上展示散点图,如城市坐标分布、气象数据等。

option.series[0].type = 'scatter';
option.series[0].data = [
    // 散点图数据,包括经纬度和值
];

案例十六:地图上的地图

在一个地图上展示另一个地图,如展示中国地图中的某个省份的地图。

option.series[0].type = 'map';
option.series[0].mapType = 'province';
option.series[0].data = [
    // 省份数据,包括名称和值
];

案例十七:地图上的热力图

在地图上展示热力图,如城市人口密度、交通流量等。

option.series[0].type = 'heatmap';
option.series[0].data = [
    // 热力图数据,包括坐标和值
];

案例十八:地图上的树状图

在地图上展示树状图,如行政区划结构、企业分布等。

option.series[0].type = 'tree';
option.series[0].data = [
    // 树状图数据,包括节点信息和层级关系
];

案例十九:地图上的力导向图

在地图上展示力导向图,如城市之间的关系、网络结构等。

option.series[0].type = 'force';
option.series[0].data = [
    // 力导向图数据,包括节点和边的信息
];

案例二十:地图上的词云图

在地图上展示词云图,如城市特色标签、产品类别等。

option.series[0].type = 'wordCloud';
option.series[0].data = [
    // 词云图数据,包括词语和值
];

案例二十一:地图上的环形图

在地图上展示环形图,如省份GDP排名、人口数量排名等。

option.series[0].type = 'ring';
option.series[0].data = [
    // 环形图数据,包括省份名称和值
];

案例二十二:地图上的漏斗图

在地图上展示漏斗图,如企业规模分布、产品销量分布等。

option.series[0].type = 'funnel';
option.series[0].data = [
    // 漏斗图数据,包括阶段和值
];

案例二十三:地图上的仪表盘

在地图上展示仪表盘,如城市空气质量指数、交通拥堵指数等。

option.series[0].type = 'gauge';
option.series[0].data = [
    // 仪表盘数据,包括值和标题
];

案例二十四:地图上的地图

在地图上展示地图,如展示中国地图中的某个省份的地图。

option.series[0].type = 'map';
option.series[0].mapType = 'province';
option.series[0].data = [
    // 省份数据,包括名称和值
];

案例二十五:地图上的热力图

在地图上展示热力图,如城市人口密度、交通流量等。

option.series[0].type = 'heatmap';
option.series[0].data = [
    // 热力图数据,包括坐标和值
];

案例二十六:地图上的树状图

在地图上展示树状图,如行政区划结构、企业分布等。

option.series[0].type = 'tree';
option.series[0].data = [
    // 树状图数据,包括节点信息和层级关系
];

案例二十七:地图上的力导向图

在地图上展示力导向图,如城市之间的关系、网络结构等。

option.series[0].type = 'force';
option.series[0].data = [
    // 力导向图数据,包括节点和边的信息
];

案例二十八:地图上的词云图

在地图上展示词云图,如城市特色标签、产品类别等。

option.series[0].type = 'wordCloud';
option.series[0].data = [
    // 词云图数据,包括词语和值
];

案例二十九:地图上的环形图

在地图上展示环形图,如省份GDP排名、人口数量排名等。

option.series[0].type = 'ring';
option.series[0].data = [
    // 环形图数据,包括省份名称和值
];

案例三十:地图上的漏斗图

在地图上展示漏斗图,如企业规模分布、产品销量分布等。

option.series[0].type = 'funnel';
option.series[0].data = [
    // 漏斗图数据,包括阶段和值
];

通过以上 30 个实战案例,相信你已经对 ECharts 地图图表的制作技巧有了更深入的了解。在实际应用中,你可以根据自己的需求选择合适的图表类型和数据展示方式,让数据可视化更加生动、直观。记住,多加练习和实践,你会越来越熟练地使用 ECharts 制作出令人惊叹的地图图表!

分享到: