echarts横向柱状图 label的formatter如何自定义样式
时间: 2025-01-03 16:35:35 浏览: 8
### ECharts 横向柱状图 Label Formatter 自定义样式方法
在ECharts中,`label`用于设置图表上数据项标签的内容和样式。对于横向柱状图而言,通过配置`series.label.formatter`可以实现对标签样式的自定义。
#### 使用 `formatter` 函数定制标签文本
当需要更复杂的逻辑来决定每个条目的显示文字时,可采用函数形式指定`formatter`属性。此函数接收参数对象作为输入,该对象包含了当前数据项的信息,如名称、数值等,并返回希望呈现的文字字符串[^1]。
```javascript
option = {
xAxis: {
type: 'value'
},
yAxis: {
type: 'category',
data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri']
},
series: [{
name: '销量',
type: 'bar',
label: {
show: true,
position: 'right',
formatter: function (params) {
return "销售额:" + params.value.toFixed(2); // 定制化输出格式
}
},
data: [120, 200, 150, 80, 70],
}]
};
```
上述代码片段展示了如何利用JavaScript中的箭头表达式创建一个简单的`formatter`回调函数,它会将原始的数据值转换成带有单位前缀的形式并保留两位小数点后的精度[^2]。
#### 设置富文本样式增强视觉效果
除了基本的文本处理外,还可以借助HTML标签进一步美化标签外观。这允许添加颜色变化、字体加粗等功能,从而让信息传达更加直观有效。
```javascript
label: {
show: true,
rich: {
a: {
color: '#ff0000',
fontSize: 16,
fontWeight: 'bold'
},
b: {
color: '#0000ff',
align: 'center'
}
},
formatter: '{a|{c}}\n{b|({d})}' // c代表dataIndex对应的真实值;d则是百分比或其他辅助说明
}
```
这段脚本里引入了名为`rich`的对象结构,其中定义了几种不同的风格类别(比如这里的`a`和`b`),之后再由`formatter`串接这些预设好的模板变量完成最终渲染。
阅读全文