当前位置: 首页 > news >正文

Python matplotlib绘图 plt.barh 水平条形图调整顺序逆序排列

使用matplotlib 中的 plt.barh 绘制水平条形图时,数据的排列顺序默认由小到大排列,即数据条由短到长排列展示,如果想让数据条由长到短排列展示,可尝试以下代码。

import matplotlib.pyplot as plt
import pandas as pd
import numpy as np# 创建数据
testy = pd.DataFrame({'label':['a','b','c'],'S01':[22,13,5],'S02':[1,5,19],'S03':[14,11,0]})

输出数据: 

 

# 绘图
plt.barh(y=testy['label'],width=testy['S01'], tick_label=testy['label'], # y轴标签color='orange',height=0.5,)
plt.title('Test Data',fontsize=14)
plt.show()

  可以看到,数据条按由小到大顺序展示。想让数据条由长到短排列展示,首先将数据逆序排列,可使用 切片 .iloc[::-1]

testy_reverse = testy.iloc[::-1]

调整顺序后的数据 

# 绘图
plt.barh(y=testy_reverse['label'],width=testy_reverse['S01'],tick_label=testy_reverse['label'], # y轴标签color='orange',height=0.5,)
plt.title('Reverse Test Data ',fontsize=14)
plt.show()

注意观察,调整顺序前后,y轴的标签也随之调整了。

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • Docker 的安全优化
  • Git版本控制策略:Rebase还是Merge?详解优缺点与适用场景
  • 【 OpenHarmony 系统应用源码魔改 】-- Launcher 之「桌面布局定制」
  • 012 MPLS技术在企业网络中的应用
  • 深度学习100问42:什么是GNMT
  • 每天五分钟计算机视觉:人脸识别网络FaceNet
  • adb大全指令(持续更新)
  • python 安装
  • LabVIEW水泵机组监控系统
  • 智能体与在线实用工具:协同并进,提升生活效率
  • 获取指定类的所有成员属性上的指定注解的属性值
  • 大数据技术之HBase 快速入门(2)
  • Parallels Desktop 19发布,无需重启即可在 Mac 上运行 Windows
  • VSCode设置复制 Ctrl+D想下复制
  • 知识社区的小程序源码系统 界面支持万能DIY装修 带源代码包以及搭建部署教程
  • 分享一款快速APP功能测试工具
  • [译] React v16.8: 含有Hooks的版本
  • 【JavaScript】通过闭包创建具有私有属性的实例对象
  • Android组件 - 收藏集 - 掘金
  • classpath对获取配置文件的影响
  • ECMAScript 6 学习之路 ( 四 ) String 字符串扩展
  • ES6--对象的扩展
  • JavaScript/HTML5图表开发工具JavaScript Charts v3.19.6发布【附下载】
  • java架构面试锦集:开源框架+并发+数据结构+大企必备面试题
  • mysql_config not found
  • nginx(二):进阶配置介绍--rewrite用法,压缩,https虚拟主机等
  • 微信小程序填坑清单
  • 文本多行溢出显示...之最后一行不到行尾的解决
  • 一起来学SpringBoot | 第三篇:SpringBoot日志配置
  • ​浅谈 Linux 中的 core dump 分析方法
  • #NOIP 2014# day.1 生活大爆炸版 石头剪刀布
  • $nextTick的使用场景介绍
  • (2)(2.4) TerraRanger Tower/Tower EVO(360度)
  • (32位汇编 五)mov/add/sub/and/or/xor/not
  • (4) PIVOT 和 UPIVOT 的使用
  • (第61天)多租户架构(CDB/PDB)
  • (经验分享)作为一名普通本科计算机专业学生,我大学四年到底走了多少弯路
  • (考研湖科大教书匠计算机网络)第一章概述-第五节1:计算机网络体系结构之分层思想和举例
  • (转)Oracle存储过程编写经验和优化措施
  • ***汇编语言 实验16 编写包含多个功能子程序的中断例程
  • .net dataexcel 脚本公式 函数源码
  • .Net 中Partitioner static与dynamic的性能对比
  • .net利用SQLBulkCopy进行数据库之间的大批量数据传递
  • .NET面试题(二)
  • .Net下的签名与混淆
  • /etc/motd and /etc/issue
  • @四年级家长,这条香港优才计划+华侨生联考捷径,一定要看!
  • [20150707]外部表与rowid.txt
  • [AIGC] 深入浅出 Python中的`enumerate`函数
  • [Android实例] 保持屏幕长亮的两种方法 [转]
  • [Angularjs]asp.net mvc+angularjs+web api单页应用之CRUD操作
  • [C#]实现GRPC通讯的服务端和客户端实例
  • [Codeforces] combinatorics (R1600) Part.2
  • [CSS]CSS 字体属性
  • [HTML]Web前端开发技术29(HTML5、CSS3、JavaScript )JavaScript基础——喵喵画网页