基于echarts实现排名样式 — vue技术交流群(864583465)
1、代码示例
option = {
xAxis: {
show: false,
},
grid: {
left: 100
},
yAxis: {
type: 'category',
data: ['第一排名', '第二排名', '第三排名', '第四排名', '第五排名', '第六排名', '第七排名'],
axisLine: {
show: false
},
offset: 90,
inverse: true,
axisTick: {
show: false
},
width: 50,
axisLabel: {
show: true,
formatter: (value, index) => {
let rankNo = 'noraml'
switch (index) {
case 0: rankNo ='no1';break;
case 1: rankNo ='no2';break;
case 2: rankNo ='no3';break;
}
return `{${rankNo}|${index+1}} {labelName|${value}}`
},
align: 'left',
rich: {
no1: {
backgroundColor: '#ff0000',
color: '#fff',
padding: [2, 5, 2, 5],
},
no2: {
backgroundColor: '#ff8510',
color: 'yellow',
padding: [2, 5, 2, 5],
},
no3: {
backgroundColor: 'green',
color: '#fff',
padding: [2, 5, 2, 5],
},
labelName: {
fontWeight: 'bold',
textAlign: 'left',
width: '90px',
overflow: 'break'
},
noraml: {
backgroundColor: '#ccc',
color: '#fff',
width: '40px',
padding: [2, 5, 2, 5]
}
}
}
},
series: [
{
data: [120, 200, 150, 80, 70, 110, 130],
type: 'bar',
label: {
show: true,
position: 'right'
},
color: '#009982',
barWidth: '30px'
}
]
};
2、代码效果图