使用plink assoc输出绘制曼哈顿图和QQ图。

qqman的Python项目详细描述


Python的qqman

Install with pypi or anaconda

如果您想查看源代码或有任何问题,请在我的github存储库中留言。
这个库的灵感来自r-qqman(参见here)。
它还包含/将包含python用户的其他方法。


目录

  1. Introduction
    1.1条。Installation
    1.2条。Requirements
    1.3条。Features
  2. Manhattan Plot
    2.1条。Parameters
    2.2条。Examples
  3. QQ Plot
    3.1条。Parameters
    3.2条。Examples

1. Introduction

1.1. Installation

使用pip

$ pip install qqman

1.2. Requirements

  • matplotlib库
  • 熊猫
  • numpy公司

pip

^{pr2}$

阿南科达

$ conda install -c anaconda numpy
$ conda install -y -c anaconda pandas
$ conda install -y -c conda-forge matplotlib

1.3. Features

  1. Manhattan Plot
  2. QQ Plot

2. Manhattan Plot

从PLINK(assoc输出或包含[染色体/基对/p值]作为列的任何assoc格式的数据绘制曼哈顿图。在

2.1. Parameters

^{} : string or pandas.DataFrame - Input file path and name of the Plink assoc output.
- Pandas DataFrame with columns [chromosome/basepair/p-value]
^{} : string
( optional )
Output path and file name of the plot. (ie. out="./Manhattan.png")
^{} : Colormap
( optional : default=Greys_r )
A Colormap instance or registered colormap name. matplotlib.cm.get_cmap()
^{} : int or list
( optional : default=2 )
int : Number of colors to use
list : Specific colors to use in colormap
^{} : bool
( optional )
If true, the plot will be shown on your screen. (This option doesn't work in CUI environment.)
^{} : float
( optional : default=10)
A size of gaps between the group of scatter markers of each chromosome in Manhattan plot
^{} : subplot
( optional )
If given, this subplot is used to plot in instead of a new figure being created.
^{} : string
( optional )
A title of the plot.
^{} : int
( optional )
A size of the title of the plot.
^{} : int
( optional )
A size of x and y labels of the plot.
^{} : int
( optional )
A size of xtick labels.
^{} : int
( optional )
A size of ytick labels.
^{} : float
( optional )
A rotation degree of xtick labels.
^{} : float
( optional )
A rotation degree of ytick labels.
^{} : string
( optional : default="CHR" )
A string denoting the column name for the chromosome. Defaults to PLINK’s "CHR" Said column must be numeric.
If you have X, Y, or MT chromosomes, be sure to renumber these 23, 24, 25, etc.
^{} : string
( optional : default="BP" )
A string denoting the column name for the chromosomal position. Defaults to PLINK’s "BP" Said column must be numeric.
^{} : string
( optional : default="P" )
A string denoting the column name for the p-value. Defaults to PLINK’s "P" Said column must be numeric.
^{} : string
( optional : default="SNP" )
A string denoting the column name for the SNP name (rs number). Defaults to PLINK’s "SNP" Said column should be a character
^{} : string
( optional : default=-log_10(1e-5) )
Where to draw a "suggestive" line. Set to False to disable.
^{} : string
( optional : default=-log_10(5e-8) )
Where to draw a "genome-wide sigificant" line. Set to False to disable.

2.2. Examples

2.2.1。简单

fromqqmanimportqqmanif__name__=="__main__":qqman.manhattan("../../temp.assoc",out="./Manhattan.png")
Simple Manhattan Plot

2.2.2条。使用子批次

fromqqmanimportqqmanimportpandasaspdimportmatplotlib.pyplotaspltif__name__=="__main__":df_assoc=pd.read_csv("../../temp.assoc",header=0,delim_whitespace=True)figure,axes=plt.subplots(nrows=2,ncols=2,figsize=(20,20))qqman.manhattan("../../temp.assoc",ax=axes[0,0],title="Wider gap 100",gap=100)qqman.manhattan("../../temp.assoc",ax=axes[0,1],title="No lines",suggestiveline=False,genomewideline=False)qqman.manhattan("../../temp.assoc",ax=axes[1,0],title="Different colormap",cmap=plt.get_cmap("jet"),cmap_var=10)qqman.manhattan(df_assoc,ax=axes[1,1],title="From DataFrame with xtick rotation",xrotation=45)figure.tight_layout()plt.savefig("./manhattan.png",format="png")plt.clf()plt.close()
Simple Manhattan Plot

3. QQ Plot

从GWAS的p值绘制分位数-分位数图。在

3.1. Parameters

^{tb2}$

3.2. Examples

3.2.1。简单

fromqqmanimportqqmanif__name__=="__main__":qqman.qqplot("../../temp.assoc",out="./QQplot.png")
Simple Manhattan Plot

3.2.2。使用子批次

fromqqmanimportqqmanimportpandasaspdimportmatplotlib.pyplotaspltif__name__=="__main__":df_assoc=pd.read_csv("../../temp.assoc",header=0,delim_whitespace=True)p_vals=list(df_assoc['P'])figure,axes=plt.subplots(nrows=2,ncols=2,figsize=(20,20))qqman.qqplot("../../temp.assoc",ax=axes[0,0],title="From file")qqman.qqplot(p_vals,ax=axes[0,1],title="From list")qqman.qqplot(df_assoc.P,ax=axes[1,0],title="From Series")qqman.qqplot(df_assoc,ax=axes[1,1],title="From DataFrame")figure.tight_layout()plt.savefig("./SubQQplot.png",format="png")plt.clf()plt.close()
Simple Manhattan Plot

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java委托对象产生重复代码:(继承与委托)   javalstm与密集层预处理   java是否与RAM容量相关的Selenium Webdriver性能?   java Swing JFrame GUI窗口在运行时为空   RubyonRails Neo4j错误,因为新的Java版本   java通过API导出联系人   java奇怪的Swing编译器时间可访问性错误   用java将数据写入文件   java如何从json响应中读取不区分大小写的键名   java将数据从一个片段传递到另一个片段   java在不同IDE中的Junit测试结果不同   xml Java DocumentBuilderFactory。parse();返回空文档   java如何将代码转换为CompletableFuture?   xml转换上的java堆栈溢出异常   java使用Mule ESB解析MySQL存储过程结果集   提高java方法性能   java处理器被重复调用   java尽可能使用bean配置从不同的类向主类添加函数   java Kotlin JaCoCo IllegalClassFormatException。请提供原始的非仪器类