IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> JavaScript知识库 -> ECharts 条形图上方标题、侧方图片 -> 正文阅读

[JavaScript知识库]ECharts 条形图上方标题、侧方图片

问题:在ECharts 条形图中名称显示在条形图上方,尾部显示数量,头部显示图片
思路:做成一个双条形图,另一个条形图所有值设为0,将尾部显示的数据替换为另一个条形图需要显示的文本或图片
效果图:
在这里插入图片描述

话不多说,直接上代码:
先上全部代码,复制粘贴直接可以用:

let i = 4;
let name = ["公司类型一", "公司类型二", "公司类型三", "公司类型四",];
let option = {
		yAxis: [{
		     type: "category",
		     color: "#59588D",
		     data: [1, 2, 3, 4],
		     axisLabel: {
		         show: true,
		         margin: 10,
		         color: "#fff",
		         textStyle: {
		             fontSize: 12
		         },
		         formatter: _ => {
		             return '{i| }'
		         },
		         rich: {
		             i:{
		                 height: 30,
		                 width: 30,
		                 backgroundColor: {
		                     image: require('../img/pg.png')
		                 }
					}
				}
		     },
		     axisLine: {
		         show: false,
		     },
		     axisTick: {
		         show: false
		     },
		     splitLine: {
		         show: false
		     }
		 }],
		 xAxis: [{
		     axisLabel: {
		         color: "#fff",
		         show: false,
		         textStyle: {
		             fontSize: 12
		         }
		     },
		     axisLine: {
		         show: false,
		     },
		     axisTick: {
		         show: false
		     },
		     splitLine: {
		         show: false
		     }
		 }],
		 series: [{
		     type: "bar",
		     barWidth: 0,
		     barGap: 10,
		     data: [0, 0, 0, 0],
		     label: {
		         show: true,
		         position: [0, -15],
		         textStyle: {
		             color: "#fff"
		         },
		         formatter: _ => {
		             i--;
		             return name[i];
		         }
		     },
		 },
		     {
		         type: "bar",
		         data: [1, 2, 3, 4],
		         label: {
		             show: true,
		             position: 'right',
		             textStyle: {
		                 color: "#fff"
		             }
		         },
		         barGap: 10,
		         itemStyle: {
		             normal: {
		                 color: "#38A0FF",
		                 barBorderRadius: [30, 30, 30, 30],
		             }
		         }
		     }]
		}
  • 这一段代码是将条形图左侧标题设为图片
formatter: _ => { return '{i| }'},
     rich: {
           i:{
               height: 30,
               width: 30,
               backgroundColor: {
                   image: require('../img/pg.png')
               }
			}
		}
  • 作为工具的另一个条形图,所有值都设为零,这样他就没有长度,然后将他的label显示在后方,以为没有数据所以它显示在起始位置,当然位置要微调一下
let i = 4;
let name = ["公司类型一", "公司类型二", "公司类型三", "公司类型四",];

{
   type: "bar",
   barWidth: 0,
   barGap: 10,
   data: [0, 0, 0, 0],
   label: {
       show: true,
       position: [0, -15],
       textStyle: {
           color: "#fff"
       },
       formatter: _ => {
           i--;
           return name[i];
       }
   },
}

注意:
① 一定要设置barGap属性,不然会导致两个条形图的间距拉的太远,看起来有点异常
②这个办法会在legend,tooltip中出现另一个数据都为0的工具条形图,所以这两个属性要么不用,要么就自己formatter处理一下

以上就是我所遇到的问题及解决办法,不喜勿喷,谢谢

  JavaScript知识库 最新文章
ES6的相关知识点
react 函数式组件 & react其他一些总结
Vue基础超详细
前端JS也可以连点成线(Vue中运用 AntVG6)
Vue事件处理的基本使用
Vue后台项目的记录 (一)
前后端分离vue跨域,devServer配置proxy代理
TypeScript
初识vuex
vue项目安装包指令收集
上一篇文章      下一篇文章      查看所有文章
加:2022-03-04 15:27:10  更:2022-03-04 15:27:28 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/24 9:05:23-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码