python横向条形图_seaborn做横向条形图
数据格式如下
这里选择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做横向条形图相关推荐
- Python使用matplotlib可视化发散型条形图、发散条形图(Diverging Bars)是一种可以同时处理负值和正值的条形图、并按照大小排序区分数据(Diverging Bars)
Python使用matplotlib可视化发散型条形图.发散条形图(Diverging Bars)是一种可以同时处理负值和正值的条形图.并按照大小排序区分数据(Diverging Bars) 目录
- Python把matplotlib绘制的水平条形图(horizontal bar)转化为竖直的柱状图(vertical bar)实战
Python把matplotlib绘制的水平条形图(horizontal bar)转化为竖直的柱状图(vertical bar)实战 目录
- Python中matplotlib默认绘制的条形图比较胖?如何设置成体型匀称的条形图,达到最佳的可视化效果。
Python中matplotlib默认绘制的条形图比较胖?如何设置成体型匀称的条形图,达到最佳的可视化效果. #默认情形下的条形图 n_bars = len(x_labels)xval = np.ar ...
- python生成条形图-Python处理JSON数据并生成条形图
一.JSON 数据准备 首先准备一份 JSON 数据,这份数据共有 3560 条内容,每条内容结构如下: 本示例主要是以 tz(timezone 时区) 这一字段的值,分析这份数据里时区的分布情况. ...
- 【疫情动态条形图】用Python开发全球疫情排名动态条形图bar_chart_race
一.开发背景 你好,我是 @马哥python说 . 这是我用Python开发的全球疫情动态条形图,演示效果: [python可视化]用Python开发全球疫情动态条形图 二.讲解代码 2.1 获取 ...
- chatgpt赋能python:Python如何将两张图片横向拼在一起
Python如何将两张图片横向拼在一起 在网页设计中,有时候需要将两张图片横向拼在一起来达到更好的展示效果.本文将介绍如何使用Python实现这一功能. 前置知识 在使用Python进行图像处理之前, ...
- python 条形图与线图的图例_【Python可视化2】Seaborn之条形图与点线图
原标题:[Python可视化2]Seaborn之条形图与点线图 Seaborn是基于matplotlib的Python可视化库.它提供了一个高级界面来绘制有吸引力的统计图形.Seaborn其实是在ma ...
- python数据可视化的特点_python的数据分析到底是啥?python数据可视化怎么做?
python是个啥?它一个强大的编程语言.数据分析是个啥?它一目了然,就是将数据进行分析,看看能得出什么结论.那python的数据分析到底是啥?其实就是通过这个语言将数据分析做出来,更加便捷化,更加速 ...
- 转载:python能用来做什么?
python能用来做什么?这3大主要用途你一定要知道!(实用) 导读:如果你想学Python,或者你刚开始学习Python,那么你可能会问:"我能用Python做什么?" 这个问题 ...
最新文章
- c面试题总结(含答案)
- Spark(6)——Spark与scala交互
- K-th Closest Distance HDU - 6621(第k小绝对值+主席树+二分)
- 打算年后跳槽的注意了... 这个岗位,人才缺口30万 薪资水涨船高
- 阿里云数据库RDS MySQL 物理全备文件数据恢复至自建数据库Mysql 5.7中
- PyTorch:模型训练-模型参数parameters
- 统计通话次数和时间的软件_通话时间统计手机下载-通话时间统计手机版下载v2.3-西西软件下载...
- PhotoShop中批量导出图片
- PDF转图片怎么转?分享PDF在线转换图片的方法
- 苹果手机为什么Apple ID会被停用
- 关于sqlldr官方教材上的几个例子ulcase study1-9
- HDU - 4081 Qin Shi Huang's National Road System(次小生成树)
- vue怎么把api 挂载到全局_深入理解Vue官方文档梳理之全局API
- 计算机网络基础——应用层(上云必看)
- matlab地球绕太阳,matlab 怎么做地球绕太阳转 同时 月球绕地球转 动态的 可以做成圆周运动 二维的 一分钟左右...
- C语言课设-药品管理系统(含代码)
- AD7760转换原理及采集程序设计 (24位Σ-Δ型ADC)
- Linux screenshot
- PyMongo 常见问题
- 企业电子招投标采购系统源码——功能模块功能描述+数字化采购管理 采购招投标