2022-06-26 06:06:06 来源 : 软件开发网
(资料图)
导入模块
1.读取测试数据
2.查看数据
3.筛选差异基因
4.查看数据,发现多了type这一列
5.统计个数
6.绘火山图
7.保存图片
导入模块import numpy as npimport pandas as pd
1.读取测试数据data=pd.read_csv(r"E:\ZYH\R.project\rna-seq\lianxi1\exon_level\df.csv")
2.查看数据data.head()
3.筛选差异基因# 3.尝试写循环筛选上下调基因分类赋值给 "up" 和 "down" 和 "nosig" 加入pvalue条件###loc函数:通过行索引 "Index" 中的具体值来取行数据(如取"Index"为"A"的行)data.loc[(data.log2FoldChange>1)&(data.padj<0.05),"type"]="up"data.loc[(data.log2FoldChange<-1)&(data.padj<0.05),"type"]="down"data.loc[(abs(data.log2FoldChange)<=1)|(data.padj>=0.05),"type"]="nosig"
4.查看数据,发现多了type这一列data.head()
5.统计个数data.type.value_counts()up 123down 103Name: type, dtype: int64
6.绘火山图import seaborn as snsimport mathimport matplotlib.pyplot as pltimport matplotlib as mpl%matplotlib inline# 对padj取个-log10对数data["-logpadj"]=-data.padj.apply(math.log10)# 查看data[["log2FoldChange","padj","type","-logpadj"]].head()
# 先设置一下自己的颜色colors = ["#01c5c4","#ff414d", "#686d76"]sns.set_palette(sns.color_palette(colors))# 绘图ax=sns.scatterplot(x="log2FoldChange", y="-logpadj",data=data, hue="type",#颜色映射 edgecolor = None,#点边界颜色 s=8,#点大小 )# 标签ax.set_title("vocalno")ax.set_xlabel("log2FC")ax.set_ylabel("-log10(padj)")#移动图例位置ax.legend(loc="center right", bbox_to_anchor=(0.95,0.76), ncol=1)
7.保存图片fig = ax.get_figure()fig.savefig("./python_vocalno.pdf")
以上就是python数据可视化绘制火山图示例的详细内容,更多关于python数据可视化火山图的资料请关注软件开发网其它相关文章!