雷达图是一种展示多变量数据的图表,能够直观地反映出数据在各个维度上的表现。ECharts 是一个使用 JavaScript 实现的开源可视化库,可以轻松制作各种图表。本文将带你从入门到实战,一步步学会如何使用 ECharts 制作雷达图。
第一节:ECharts 雷达图简介
1.1 什么是雷达图?
雷达图,也称为蜘蛛图,是一种用来展示多变量数据的图表。它将多个变量绘制在一个坐标轴上,形成一个多边形的图形,每个顶点代表一个变量的值。
1.2 ECharts 雷达图的特点
- 多维度展示:能够同时展示多个变量的数据。
- 直观易懂:通过图形的形状和大小,可以直观地了解数据的分布情况。
- 灵活配置:ECharts 提供丰富的配置项,可以满足各种需求。
第二节:ECharts 雷达图的基本用法
2.1 准备工作
首先,确保你的项目中已经引入了 ECharts 库。可以通过以下方式引入:
<script src="https://cdn.jsdelivr.net/npm/echarts/dist/echarts.min.js"></script>
2.2 创建雷达图
以下是一个简单的雷达图示例:
<div id="main" style="width: 600px;height:400px;"></div>
<script type="text/javascript">
// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '基础雷达图'
},
tooltip: {},
legend: {
data:['预算分配(Allocated Budget)','实际花费(Actual Spending)']
},
radar: {
// 名字
name: {
textStyle: {
color: '#000'
}
},
// 特征点
indicator: [
{ name: '销售(sales)', max: 6500},
{ name: '管理(admin)', max: 16000},
{ name: '信息技术(IT)', max: 30000},
{ name: '客服(customer service)', max: 38000},
{ name: '研发(R&D)', max: 52000},
{ name: '市场(marketing)', max: 25000}
]
},
series: [{
name: '预算 vs 开销',
type: 'radar',
data : [
{
value : [4200, 3000, 20000, 35000, 5000, 18000],
name : '预算分配(Allocated Budget)'
},
{
value : [5000, 14000, 28000, 26000, 4200, 21000],
name : '实际花费(Actual Spending)'
}
]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
</script>
2.3 雷达图的配置项
ECharts 雷达图提供了丰富的配置项,以下是一些常用的配置项:
- title:图表标题。
- tooltip:鼠标悬停时显示的提示框。
- legend:图例。
- radar:雷达图的配置项,包括名字、特征点等。
- series:数据系列,包括数据值、名称等。
第三节:实战案例
3.1 案例一:制作动态雷达图
通过 ECharts 的动画功能,可以制作出动态变化的雷达图。以下是一个简单的动态雷达图示例:
<div id="main" style="width: 600px;height:400px;"></div>
<script type="text/javascript">
// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('main'));
// 动态数据
var data = [
[320, 332, 301, 334, 390],
[220, 182, 191, 234, 290],
[150, 232, 201, 154, 190],
[320, 332, 301, 334, 390]
];
// 动画配置
var animationData = {
data: data[0],
animation: true
};
// 指定图表的配置项和数据
var option = {
title: {
text: '动态雷达图'
},
tooltip: {},
legend: {
data:['预算分配(Allocated Budget)','实际花费(Actual Spending)']
},
radar: {
name: {
textStyle: {
color: '#000'
}
},
indicator: [
{ name: '销售(sales)', max: 6500},
{ name: '管理(admin)', max: 16000},
{ name: '信息技术(IT)', max: 30000},
{ name: '客服(customer service)', max: 38000},
{ name: '研发(R&D)', max: 52000},
{ name: '市场(marketing)', max: 25000}
]
},
series: [{
name: '预算 vs 开销',
type: 'radar',
data: [animationData]
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
// 动态更新数据
setInterval(function () {
animationData.data = data[Math.floor(Math.random() * data.length)];
myChart.setOption({
series: [{
data: [animationData]
}]
});
}, 1000);
</script>
3.2 案例二:制作自定义雷达图
通过 ECharts 的配置项,可以制作出具有个性化风格的雷达图。以下是一个自定义雷达图示例:
<div id="main" style="width: 600px;height:400px;"></div>
<script type="text/javascript">
// 基于准备好的dom,初始化echarts实例
var myChart = echarts.init(document.getElementById('main'));
// 指定图表的配置项和数据
var option = {
title: {
text: '自定义雷达图'
},
tooltip: {},
legend: {
data:['预算分配(Allocated Budget)','实际花费(Actual Spending)']
},
radar: {
name: {
textStyle: {
color: '#000'
}
},
indicator: [
{ name: '销售(sales)', max: 6500},
{ name: '管理(admin)', max: 16000},
{ name: '信息技术(IT)', max: 30000},
{ name: '客服(customer service)', max: 38000},
{ name: '研发(R&D)', max: 52000},
{ name: '市场(marketing)', max: 25000}
]
},
series: [{
name: '预算 vs 开销',
type: 'radar',
data: [
{
value : [4200, 3000, 20000, 35000, 5000, 18000],
name : '预算分配(Allocated Budget)'
},
{
value : [5000, 14000, 28000, 26000, 4200, 21000],
name : '实际花费(Actual Spending)'
}
],
areaStyle: {
opacity: 0.1
}
}]
};
// 使用刚指定的配置项和数据显示图表。
myChart.setOption(option);
</script>
第四节:总结
通过本文的学习,相信你已经掌握了 ECharts 雷达图的基本用法和实战技巧。ECharts 雷达图是一种非常实用的图表,可以用于展示多变量数据。在实际应用中,你可以根据自己的需求进行个性化定制,制作出具有独特风格的雷达图。