python数据可视化绘制火山图示例

目录

导入模块

1.读取测试数据

2.查看数据

3.筛选差异基因

4.查看数据,发现多了type这一列

5.统计个数

6.绘火山图

7.保存图片

导入模块 import numpy as np import 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 123 down 103 Name: type, dtype: int64 6.绘火山图 import seaborn as sns import math import matplotlib.pyplot as plt import 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数据可视化火山图的资料请关注易知道(ezd.cc)其它相关文章!

推荐阅读