Echarts横向柱形图

项目原型图如下:

实际上就是设置两个y轴,第一个显示底色柱子,另一个只显示真实数据的柱子,在这里只显示y轴,x轴不显示..

复制代码
this.middleLeftOption = {
        tooltip: {
          trigger: 'axis',
          axisPointer: {}
        },
        legend: {
          data: ['回退次数'],
          y: 'bottom'
        },
        grid: {
          left: '3%',
          right: '4%',
          bottom: '10%',
          top: '2%',
          containLabel: true //可容纳
        },
        xAxis: {
          show: false   //设置不显示x轴
        },
        yAxis: [
          {
            type: 'category',
            data: ydata,   //我这里的数据是请求回来的一个数组  
            inverse: true,
            axisLine: {
              show: false
            },
            axisTick: {
              show: false
            },
            // 设置左边y轴上的文字颜色
            axisLabel: {
              color: 'black'
            }
          },
          {
            type: 'category',
            data: xdata,   //请求回来的数据
            inverse: true,  // 将数据显示方式倒转
            axisLine: {
              show: false
            },
            axisTick: {
              show: false
            },
            // 设置右边y轴上文字的颜色与字号
            axisLabel: {
              textStyle: {
                fontSize: 12,
                color: 'black'
              }
            }
          }
        ],
        series: [
          {
            type: 'bar',
            yAxisIndex: 1,
            data: [20, 20, 20, 20, 20, 20, 20, 20, 20, 20], //下面的柱子数据
            barWidth: 15, //柱子的宽度
            barCategoryGap: 50,
            // 设置柱子的位置,可以在柱子上显示的内容,我这里是不需要显示的
            //label:{
              // show:true,
               //position:"inside",
               // {c} 表示数值,{a}表示serie名,{b}表示系列名
              // formatter:"{c}%"
            },
            itemStyle: {
              // 设置第二个y轴柱子的颜色
              color: '#f2f2f2',
              // 设置第二个y轴柱子有无边框 可设置颜色
               border: 'none',
              // borderColor: '#00c1de',
              // 设置第二个y轴柱子边框为圆角
              barBorderRadius: 15
            }
          },
          {
            name: '回退次数',
            type: 'bar',
            color: '#facd91',
            data: xdata,
            barWidth: 15,   //竹子的宽度
            itemStyle: {
              // 设置第二个y轴柱子无颜色
              color: '#facd91',
              // 设置第二个y轴柱子无边框
              border: 'none',
              // 设置第二个y轴柱子边框为圆角
              barBorderRadius: 15
            }
          }
        ]
      }

我的最终效果如下:

相关推荐
DEMO派几秒前
Web 视频录制方案解析,轻松实现录屏!
前端·javascript·音视频
1024小神9 分钟前
css主题theme变量切换实现原理学习记录
前端·css·学习
wuhen_n10 分钟前
TypeScript工作流深度解析:从.ts到.js发生了什么?
前端·javascript·typescript
小二·25 分钟前
Python Web 开发进阶实战:时空数据引擎 —— 在 Flask + Vue 中构建实时地理围栏与轨迹分析系统
前端·python·flask
Hao_Harrision27 分钟前
50天50个小项目 (React19 + Tailwindcss V4) ✨ | TodoList(代办事项组件)
前端·typescript·react·tailwindcss·vite7
小二·27 分钟前
Python Web 开发进阶实战:可验证网络 —— 在 Flask + Vue 中实现去中心化身份(DID)与零知识证明(ZKP)认证
前端·网络·python
运筹vivo@31 分钟前
攻防世界:Web_php_include
前端·web安全·php
Highcharts.js35 分钟前
2026年Highcharts迎来系列更新| V12.5 正式发布
javascript·信息可视化·highcharts·12.5·升级发布
weixin_4624462338 分钟前
用 Python Tornado + Vue3 + ECharts 搭建 Docker 实时监控 WebSocket 仪表盘
python·echarts·tornado
夏之小星星44 分钟前
el-table实现跨页全选
javascript·vue.js