数据格式如下

这里选择fold值最大的前20个作图进行展示 代码如下

import seaborn as sns

import pandas as pd

import numpy as np

import matplotlib.pyplot as plt

infpkm="gene_diff2019102206.xls"

genename="Aoc1"

picpathname="Aoc1.test"

df = pd.read_csv(infpkm,header=0,sep="\t")

#根据绝对值大小从大到小进行排序

df = df.reindex(df['log2FoldChange'].abs().sort_values(ascending=False).index)

#取前20行

df = df.iloc[:20,:]

#获取最大的fold绝对值作为x轴的上下限

txlim = np.abs(df.loc[:,'log2FoldChange'].tolist()[0])

#获取作图的两列

pre_draw=df[['Datebase_type','log2FoldChange']]

#选择绝对值大于0.58496的数据

pre_draw = pre_draw[np.abs(pre_draw['log2FoldChange'])>0.58496]

#将所有绝对值大于3的整数设置3,绝对值大于3的负数,设置为-3

#df[np.abs(df)>3] = np.sign(df)*3

logfold = [float(n) for n in pre_draw['log2FoldChange'].tolist()]

ngroup = [str(n) for n in pre_draw['Datebase_type'].tolist()]

ax = sns.barplot(x=logfold, y=ngroup, color='blue', orient='h')

ax.set_title('20 Top FoldChange of Gene '+str(genename)+' expression in different dataset', fontsize=15)

ax.set_ylabel('Datebase name', fontsize=15)

ax.set_xlabel('Log2(Fold change)', fontsize=15)

ax.set_xlim([-txlim-0.25, txlim+0.25])

plt.savefig(picpathname+'.png', format='png', dpi=50, bbox_inches='tight')

plt.savefig(picpathname+'.pdf', format='pdf', dpi=100, bbox_inches='tight')

图片效果如下:

python横向条形图_seaborn做横向条形图相关推荐

  1. Python使用matplotlib可视化发散型条形图、发散条形图(Diverging Bars)是一种可以同时处理负值和正值的条形图、并按照大小排序区分数据(Diverging Bars)

    Python使用matplotlib可视化发散型条形图.发散条形图(Diverging Bars)是一种可以同时处理负值和正值的条形图.并按照大小排序区分数据(Diverging Bars) 目录

  2. Python把matplotlib绘制的水平条形图(horizontal bar)转化为竖直的柱状图(vertical bar)实战

    Python把matplotlib绘制的水平条形图(horizontal bar)转化为竖直的柱状图(vertical bar)实战 目录

  3. Python中matplotlib默认绘制的条形图比较胖?如何设置成体型匀称的条形图,达到最佳的可视化效果。

    Python中matplotlib默认绘制的条形图比较胖?如何设置成体型匀称的条形图,达到最佳的可视化效果. #默认情形下的条形图 n_bars = len(x_labels)xval = np.ar ...

  4. python生成条形图-Python处理JSON数据并生成条形图

    一.JSON 数据准备 首先准备一份 JSON 数据,这份数据共有 3560 条内容,每条内容结构如下: 本示例主要是以 tz(timezone 时区) 这一字段的值,分析这份数据里时区的分布情况. ...

  5. 【疫情动态条形图】用Python开发全球疫情排名动态条形图bar_chart_race

    一.开发背景 你好,我是 @马哥python说 . 这是我用Python开发的全球疫情动态条形图,演示效果: [python可视化]用Python开发全球疫情动态条形图 ​ 二.讲解代码 2.1 获取 ...

  6. chatgpt赋能python:Python如何将两张图片横向拼在一起

    Python如何将两张图片横向拼在一起 在网页设计中,有时候需要将两张图片横向拼在一起来达到更好的展示效果.本文将介绍如何使用Python实现这一功能. 前置知识 在使用Python进行图像处理之前, ...

  7. python 条形图与线图的图例_【Python可视化2】Seaborn之条形图与点线图

    原标题:[Python可视化2]Seaborn之条形图与点线图 Seaborn是基于matplotlib的Python可视化库.它提供了一个高级界面来绘制有吸引力的统计图形.Seaborn其实是在ma ...

  8. python数据可视化的特点_python的数据分析到底是啥?python数据可视化怎么做?

    python是个啥?它一个强大的编程语言.数据分析是个啥?它一目了然,就是将数据进行分析,看看能得出什么结论.那python的数据分析到底是啥?其实就是通过这个语言将数据分析做出来,更加便捷化,更加速 ...

  9. 转载:python能用来做什么?

    python能用来做什么?这3大主要用途你一定要知道!(实用) 导读:如果你想学Python,或者你刚开始学习Python,那么你可能会问:"我能用Python做什么?" 这个问题 ...

最新文章

  1. c面试题总结(含答案)
  2. Spark(6)——Spark与scala交互
  3. K-th Closest Distance HDU - 6621(第k小绝对值+主席树+二分)
  4. 打算年后跳槽的注意了... 这个岗位,人才缺口30万 薪资水涨船高
  5. 阿里云数据库RDS MySQL 物理全备文件数据恢复至自建数据库Mysql 5.7中
  6. PyTorch:模型训练-模型参数parameters
  7. 统计通话次数和时间的软件_通话时间统计手机下载-通话时间统计手机版下载v2.3-西西软件下载...
  8. PhotoShop中批量导出图片
  9. PDF转图片怎么转?分享PDF在线转换图片的方法
  10. 苹果手机为什么Apple ID会被停用
  11. 关于sqlldr官方教材上的几个例子ulcase study1-9
  12. HDU - 4081 Qin Shi Huang's National Road System(次小生成树)
  13. vue怎么把api 挂载到全局_深入理解Vue官方文档梳理之全局API
  14. 计算机网络基础——应用层(上云必看)
  15. matlab地球绕太阳,matlab 怎么做地球绕太阳转 同时 月球绕地球转 动态的 可以做成圆周运动 二维的 一分钟左右...
  16. C语言课设-药品管理系统(含代码)
  17. AD7760转换原理及采集程序设计 (24位Σ-Δ型ADC)
  18. Linux screenshot
  19. PyMongo 常见问题
  20. 企业电子招投标采购系统源码——功能模块功能描述+数字化采购管理 采购招投标

热门文章

  1. 物流团队怎么做阿米巴电商?
  2. 线性代数学习之向量的高级话题
  3. 【环境配置】使用 docker 制作一个ubuntu16.04 + ROS + pytorch-gpu 的镜像
  4. C语言输出杨辉三角前n行(低时间复杂度)
  5. MyBatisPlu自动生成代码简介(一)
  6. 中国最早的计算机主机有多大,我国第一台计算机哪一年研制成功
  7. 让文理科生流泪的综合题是什么?
  8. 【ROS】RViz使用详解
  9. 2022最新最全MyBatis(简单全面,一发入魂,内容超详细)
  10. 百度云网盘链接用aria2下载