ECharts 是一款使用 JavaScript 实现的开源可视化库,它提供了丰富的图表类型,包括但不限于折线图、柱状图、饼图等。随着技术的发展,ECharts 也推出了 3D 图表功能,让数据可视化更加生动和震撼。本文将带你从基础到进阶,轻松掌握 ECharts 3D 图表的制作技巧。
一、ECharts 3D 图表简介
ECharts 3D 图表是基于 ECharts 2D 图表扩展而来,通过三维空间坐标的引入,使得图表更加立体和直观。ECharts 3D 图表支持多种类型,如 3D 柱状图、3D 饼图、3D 地图等。
二、ECharts 3D 图表制作基础
1. 准备工作
首先,确保你的网页中引入了 ECharts 库。可以通过以下代码实现:
<script src="https://cdn.bootcdn.net/ajax/libs/echarts/5.3.2/echarts.min.js"></script>
2. 创建基本 3D 图表
以下是一个简单的 3D 柱状图示例:
var myChart = echarts.init(document.getElementById('main'));
var option = {
tooltip: {},
xAxis3D: {
type: 'category',
data: ['A', 'B', 'C', 'D']
},
yAxis3D: {
type: 'value'
},
zAxis3D: {
type: 'value'
},
series: [{
type: 'bar',
data: [[0, 10, 10], [1, 20, 20], [2, 30, 30], [3, 40, 40]],
shading: 'lambert',
label: {
show: true,
position: 'middle',
textStyle: {
color: '#fff',
fontSize: 16
}
}
}]
};
myChart.setOption(option);
3. 调整图表样式
ECharts 提供了丰富的配置项,可以调整图表的样式。以下是一些常用的配置项:
color: 设置图表的颜色。label: 设置图表的标签样式。shading: 设置图表的阴影效果。light: 设置图表的光照效果。
三、ECharts 3D 图表进阶技巧
1. 3D 地图
ECharts 3D 地图可以展示全球或特定区域的地理信息。以下是一个简单的 3D 地图示例:
var myChart = echarts.init(document.getElementById('main'));
var option = {
tooltip: {},
visualMap: {
min: 0,
max: 100,
left: 'left',
top: 'bottom',
text: ['高', '低'], // 文本,默认为数值文本
calculable: true
},
geo3D: {
map: 'world',
roam: true,
label: {
show: true,
color: '#fff',
fontSize: 16
},
itemStyle: {
color: '#fff',
borderColor: '#000'
}
},
series: [{
type: 'effectScatter3D',
coordinateSystem: 'geo3D',
data: [
{name: 'New York', value: [74.005974, 40.712776, 100]},
{name: 'Los Angeles', value: [118.243684, 34.052235, 100]},
// ... 其他数据
],
symbolSize: function (data) {
return data.value[2] / 10;
},
label: {
show: true,
formatter: '{b}'
},
itemStyle: {
color: '#f4e925',
shadowBlur: 10,
shadowColor: 'rgba(120, 36, 50, 0.5)'
}
}]
};
myChart.setOption(option);
2. 3D 饼图
ECharts 3D 饼图可以展示数据的占比情况。以下是一个简单的 3D 饼图示例:
var myChart = echarts.init(document.getElementById('main'));
var option = {
tooltip: {
trigger: 'item',
formatter: '{a} <br/>{b}: {c} ({d}%)'
},
legend: {
orient: 'vertical',
left: 'left',
data: ['A', 'B', 'C', 'D']
},
series: [{
name: '访问来源',
type: 'pie',
radius: '55%',
center: ['50%', '60%'],
roseType: 'radius',
data: [
{value: 10, name: 'A'},
{value: 20, name: 'B'},
{value: 30, name: 'C'},
{value: 40, name: 'D'}
],
itemStyle: {
emphasis: {
shadowBlur: 10,
shadowOffsetX: 0,
shadowColor: 'rgba(0, 0, 0, 0.5)'
}
}
}]
};
myChart.setOption(option);
四、总结
通过本文的学习,相信你已经掌握了 ECharts 3D 图表制作的基础和进阶技巧。在实际应用中,可以根据需求调整图表样式和配置项,打造出具有震撼视觉效果的 3D 图表。希望本文能对你有所帮助!
