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: []
	}
  ],
相关推荐
kyriewen12 小时前
别再 console.log 了:5 个 Chrome DevTools 调试技巧,用过就回不去了
前端·javascript·面试
IT_陈寒13 小时前
Python搞不定字符串编码?这破玩意坑我两小时!
前端·人工智能·后端
To_OC13 小时前
LC 1 两数之和:面试第一道必考题,暴力解法直接被面试官 pass
javascript·算法·leetcode
DigitalOcean15 小时前
Laravel 开发者已在 DigitalOcean 上开通超过 10 万台服务器
前端·laravel
星始流年15 小时前
从 Tool 到 Skill——基于 LangChain 的服务端Skill实现
前端·langchain·agent
李惟15 小时前
开源本地通信库,纯客户端 RPC,像聊天一样通信
前端
YAwu1115 小时前
深入解析 React 炫彩鼠标跟随标题组件:从坐标定位到动画性能
前端·react.js
GuWenyue15 小时前
排序效率低?5分钟吃透快速排序,性能飙升至O(nlogn)
前端·javascript·面试
OpenTiny社区15 小时前
🎨 看完 GenUI SDK 源码我悟了!
前端·vue.js·github
叁两15 小时前
前端转型AI Agent该如何学习?(前置篇)
前端·人工智能·node.js