在 ECharts 中,调整雷达图数据标签(即每个数据点旁的文字)的样式主要通过 series.radar.label
配置项实现,该配置项提供了丰富的属性来控制文字的外观、格式和位置等。以下是详细的配置方法和示例:
一、核心配置项说明
series.radar.label
包含以下常用属性,用于调整数据标签样式:
属性 | 说明 |
| 是否显示标签(默认 |
| 文字颜色(支持色值、 |
| 文字大小(单位:px) |
| 文字粗细(如 |
| 文字字体(如 |
| 标签内容格式化(支持字符串模板或回调函数) |
| 标签与数据点的距离(单位:px,正值向外,负值向内) |
| 标签背景色(如 |
| 标签边框颜色 |
| 标签边框宽度(单位:px) |
| 标签内边距(如 |
| 富文本样式(用于自定义复杂文本样式,配合 |
二、完整示例代码
以下示例展示了如何配置雷达图数据标签的样式,包括颜色、大小、边框、格式化等效果:
三、进阶用法:动态样式与富文本
- 根据数据值动态调整样式
通过formatter
回调函数,可根据数据值设置不同样式(需配合rich
富文本):
label: {
show: true,
formatter: function(params) {
// 数据值大于80时用红色,否则用默认色
const color = params.value > 80 ? 'red' : 'default';
return `{${color}|${params.value}}`;
},
rich: {
red: { color: 'red', fontWeight: 'bold' },
default: { color: '#333' }
}
}
- 多信息组合展示
在标签中同时显示数据名称和值:
label: {
formatter: function(params) {
// params.name 是指示器名称(如“攻力”),params.value 是数值
return `${params.name}: ${params.value}`;
}
}
四、效果优化建议
- 若标签重叠,可减小
fontSize
或调整distance
距离,或通过position
回调函数分散位置(参考前文)。 - 背景色
backgroundColor
设为半透明(如rgba(255,255,255,0.7)
),可避免文字与图表重叠导致的可读性问题。 - 对于多系列雷达图,可通过
color: 'auto'
让标签颜色自动匹配对应系列的线条颜色,增强关联性。
通过上述配置,可灵活控制雷达图数据标签的样式,使其既美观又能清晰传达数据信息。