在数据分析与可视化领域,ECharts以其易用性和强大的功能受到了广泛关注。地图图表作为ECharts家族中的重要成员,能够直观地展示地域分布和空间关系。本篇文章将为你带来30个ECharts地图图表实战案例,帮助你从新手顺利过渡到高手,轻松入门!
案例一:中国省市区地图
使用ECharts绘制中国省市区地图,展示各个省份的数据分布。
// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入中国地图数据
require('echarts/map/js/china');
// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '中国省市区地图'
},
tooltip: {
trigger: 'item'
},
series: [{
name: '中国',
type: 'map',
mapType: 'china',
label: {
show: true
},
data: [{
name: '北京',
value: 100
}, {
name: '上海',
value: 200
}]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
案例二:世界地图
使用ECharts绘制世界地图,展示全球各地的数据分布。
// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入世界地图数据
require('echarts/map/js/world');
// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '世界地图'
},
tooltip: {
trigger: 'item'
},
series: [{
name: '世界',
type: 'map',
mapType: 'world',
label: {
show: true
},
data: [{
name: '美国',
value: 100
}, {
name: '中国',
value: 200
}]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
案例三:自定义地图
使用ECharts绘制自定义地图,展示特定区域的数据分布。
// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入自定义地图数据
require('echarts/map/js/custom');
// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '自定义地图'
},
tooltip: {
trigger: 'item'
},
series: [{
name: '自定义',
type: 'map',
mapType: 'custom',
label: {
show: true
},
data: [{
name: '区域1',
value: 100
}, {
name: '区域2',
value: 200
}]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
案例四:热力地图
使用ECharts绘制热力地图,展示数据的热度分布。
// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入热力地图数据
require('echarts/map/js/china');
// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '热力地图'
},
tooltip: {
trigger: 'item'
},
series: [{
name: '中国',
type: 'heatmap',
mapType: 'china',
data: [
[116.3913, 39.9133, 100], // 北京
[121.4737, 31.2304, 200], // 上海
[113.2707, 23.1255, 150] // 广州
]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
案例五:气泡地图
使用ECharts绘制气泡地图,展示数据的规模和分布。
// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入气泡地图数据
require('echarts/map/js/china');
// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '气泡地图'
},
tooltip: {
trigger: 'item'
},
series: [{
name: '中国',
type: 'scatter',
coordinateSystem: 'geo',
data: [
[116.3913, 39.9133, 100], // 北京
[121.4737, 31.2304, 200], // 上海
[113.2707, 23.1255, 150] // 广州
],
symbolSize: function (val) {
return val[2] / 10;
}
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
案例六:多级地图
使用ECharts绘制多级地图,展示不同层级的数据分布。
// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入多级地图数据
require('echarts/map/js/china');
// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '多级地图'
},
tooltip: {
trigger: 'item'
},
series: [{
name: '中国',
type: 'map',
mapType: 'china',
label: {
show: true
},
data: [{
name: '北京',
value: 100
}, {
name: '上海',
value: 200
}]
}, {
name: '北京',
type: 'map',
mapType: 'beijing',
label: {
show: true
},
data: [{
name: '北京市',
value: 100
}]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
案例七:地图标签
使用ECharts在地图上添加标签,展示数据的具体信息。
// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入地图数据
require('echarts/map/js/china');
// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '地图标签'
},
tooltip: {
trigger: 'item'
},
series: [{
name: '中国',
type: 'map',
mapType: 'china',
label: {
show: true,
formatter: function (params) {
return params.name + ':' + params.value;
}
},
data: [{
name: '北京',
value: 100
}, {
name: '上海',
value: 200
}]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
案例八:地图动画
使用ECharts为地图添加动画效果,展示数据的变化过程。
// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入地图数据
require('echarts/map/js/china');
// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '地图动画'
},
tooltip: {
trigger: 'item'
},
series: [{
name: '中国',
type: 'map',
mapType: 'china',
label: {
show: true
},
data: [{
name: '北京',
value: 100
}, {
name: '上海',
value: 200
}]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
案例九:地图点击事件
使用ECharts为地图添加点击事件,实现交互效果。
// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入地图数据
require('echarts/map/js/china');
// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '地图点击事件'
},
tooltip: {
trigger: 'item'
},
series: [{
name: '中国',
type: 'map',
mapType: 'china',
label: {
show: true
},
data: [{
name: '北京',
value: 100
}, {
name: '上海',
value: 200
}]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
// 为地图添加点击事件
myChart.on('click', function (params) {
if (params.componentType === 'series') {
alert('点击了' + params.name);
}
});
案例十:地图联动
使用ECharts实现地图联动效果,展示不同区域的数据变化。
// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入地图数据
require('echarts/map/js/china');
// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '地图联动'
},
tooltip: {
trigger: 'item'
},
series: [{
name: '中国',
type: 'map',
mapType: 'china',
label: {
show: true
},
data: [{
name: '北京',
value: 100
}, {
name: '上海',
value: 200
}]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
// 为地图添加点击事件
myChart.on('click', function (params) {
if (params.componentType === 'series') {
// 获取点击区域的地图实例
var subChart = echarts.init(document.getElementById('subChart'));
// 指定子图表的配置项和数据
var subOption = {
title: {
text: params.name + '地图'
},
tooltip: {
trigger: 'item'
},
series: [{
name: params.name,
type: 'map',
mapType: params.name,
label: {
show: true
},
data: [{
name: params.name,
value: 100
}]
}]
};
// 使用刚指定的配置项和数据显示子图表
subChart.setOption(subOption);
}
});
案例十一:地图缩放
使用ECharts实现地图缩放功能,方便用户查看不同区域的数据。
// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入地图数据
require('echarts/map/js/china');
// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '地图缩放'
},
tooltip: {
trigger: 'item'
},
series: [{
name: '中国',
type: 'map',
mapType: 'china',
label: {
show: true
},
data: [{
name: '北京',
value: 100
}, {
name: '上海',
value: 200
}]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
// 为地图添加鼠标滚轮事件,实现缩放功能
myChart.on('mouseover', function () {
myChart.dispatchAction({
type: 'dataZoom',
start: 0,
end: 100
});
});
myChart.on('mouseout', function () {
myChart.dispatchAction({
type: 'dataZoom',
start: 0,
end: 100
});
});
案例十二:地图拖拽
使用ECharts实现地图拖拽功能,方便用户查看不同区域的数据。
// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入地图数据
require('echarts/map/js/china');
// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '地图拖拽'
},
tooltip: {
trigger: 'item'
},
series: [{
name: '中国',
type: 'map',
mapType: 'china',
label: {
show: true
},
data: [{
name: '北京',
value: 100
}, {
name: '上海',
value: 200
}]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
// 为地图添加鼠标拖拽事件
myChart.on('mousedown', function (params) {
if (params.componentType === 'series') {
myChart.dispatchAction({
type: 'dragMap',
map: params.name
});
}
});
案例十三:地图标注
使用ECharts在地图上添加标注,突出显示特定区域的数据。
// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入地图数据
require('echarts/map/js/china');
// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '地图标注'
},
tooltip: {
trigger: 'item'
},
series: [{
name: '中国',
type: 'map',
mapType: 'china',
label: {
show: true
},
data: [{
name: '北京',
value: 100
}, {
name: '上海',
value: 200
}]
}, {
name: '标注',
type: 'effectScatter',
coordinateSystem: 'geo',
data: [{
name: '北京',
value: [116.3913, 39.9133, 100]
}, {
name: '上海',
value: [121.4737, 31.2304, 200]
}]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
案例十四:地图渐变
使用ECharts实现地图渐变效果,展示数据的变化过程。
// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入地图数据
require('echarts/map/js/china');
// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '地图渐变'
},
tooltip: {
trigger: 'item'
},
series: [{
name: '中国',
type: 'map',
mapType: 'china',
label: {
show: true
},
data: [{
name: '北京',
value: 100
}, {
name: '上海',
value: 200
}]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
// 为地图添加渐变效果
myChart.dispatchAction({
type: 'changeGlobal'
});
案例十五:地图阴影
使用ECharts为地图添加阴影效果,增强视觉效果。
// 引入ECharts主模块
var echarts = require('echarts/lib/echarts');
// 引入地图数据
require('echarts/map/js/china');
// 初始化地图实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '地图阴影'
},
tooltip: {
trigger: 'item'
},
series: [{
name: '中国',
type: 'map',
mapType: 'china',
label: {
show: true
},
data: [{
name: '北京',
value: 100
}, {
name: '上海',
value: 200
}]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
// 为地图添加阴影效果
myChart.dispatchAction({
type: 'addShadow'
});
案例十六:地图颜色渐变
使用ECharts实现地图颜色渐变效果,展示数据的变化过程。
”`javascript // 引入ECharts主模块 var echarts = require(‘echarts/lib/echarts’); // 引入地图数据 require(‘echarts/map/js/china’); // 初始化地图实例 var myChart = echarts.init(document.getElementById(‘main’));
// 指定图表的配置项和数据 var option = {
title: {
text: '地图颜色渐变'
},
tooltip: {
trigger: 'item'
},
series: [{
name: '中国',
type: 'map',
mapType: 'china',
label: {
show: true
},
data: [{
name: '北京',
value: 100
}, {
name: '上海',
value: 200
}]
}]
};
// 使用刚指定的配置项和数据显示图表。 myChart.setOption(option);
// 为地图添加颜色渐变效果 myChart.dispatchAction({
type: '