echarts x轴下增加一组数据的实现方法(附在 x 轴增加图标的方法)

实现效果:

实现要点

主要是通过配置 xAxis 数组来实现,有几组数据增加几个数据即可。如果有特殊样式,可以通过 rich f富文本来实现。比如我这个需求中的箭头图标,是引入了一张图片实现的。

代码落地

这里 我只截取了一部分关键代码:

复制代码
xAxis: [
	{
	  type: 'category',
	  axisLabel: {
		interval:0,
		align: 'center',
	  },
	  axisTick:{
	  	show: false
	  },
	  axisLine:{
	  	show: false
	  },
	  data: []
	},
	{
	  type: 'category',
	  position: 'bottom',
	  offset: 18,
	  axisTick:{
	  	show: false
	  },
	  axisLine:{
	  	show: false
	  },
	  axisLabel: {
	  	interval:0,
	  	align: 'center',
	  	formatter: function (value, index) {
			// 根据业务场景判断显示哪种图标
			if(value > 0){
			 // 图标显示
				return Math.abs(value) + ' ' + "{up|}"
			}else if(value < 0){
			  // 图标显示
				return Math.abs(value) + ' ' + "{down|}"
			} else {
				return value
			}
	  	},
	  	// 这里实现了在 x 轴增加图片背景
	  	rich: {
	  		value: {
	  			lineHeight: 20,
	  			align: 'center'
	  		},
	  		down: {
	  			height: 8,
				width: 10,
	  			align: 'center',
	  			backgroundColor: {
	  			  image: '/static/down.png'  // 这里是重点
	  			},
	  		},
	  		up: {
	  		  height: 8,
	  		  width: 10,
	  		  align: 'center',
	  		  backgroundColor: {
				image: '/static/up.png'
	  		  },
	  		}
	  	}
	  },
	  data: []
	}
  ],
相关推荐
蜡台2 小时前
Vue 中多项目的组件共用方案
前端·javascript·vue.js·git
笨笨狗吞噬者2 小时前
【uniapp】微信小程序实现自定义 tabBar
前端·微信小程序·uni-app
angerdream3 小时前
最新版vue3+TypeScript开发入门到实战教程之路由详解二
javascript·vue.js
恋猫de小郭3 小时前
React Native 鸿蒙 2026 路线发布,为什么它的适配成本那么高?
android·前端·react native
呆头鸭L3 小时前
Electron进程通信
前端·javascript·electron·前端框架·vue
splage3 小时前
spring-boot-starter和spring-boot-starter-web的关联
前端
张元清3 小时前
使用 Hooks 构建无障碍 React 组件
前端·javascript·面试
Mahut4 小时前
从零构建神经影像可视化库:neuroviz 的架构设计与实现
前端·javascript·github
慧一居士4 小时前
VueUse 功能介绍使用场景及完整使用示例
前端·vue.js
奇怪的猫4 小时前
浏览器窗口最小化的时候,setInterval 执行变慢,解决方案
前端·javascript