欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

R語言學(xué)習(xí)之火山圖的繪制詳解

 更新時間:2022年03月01日 15:14:43   作者:生信寶典  
火山圖作為散點圖的一種,將統(tǒng)計測試中的統(tǒng)計顯著性量度和變化幅度相結(jié)合,從而能夠幫助快速直觀地識別那些變化幅度較大且具有統(tǒng)計學(xué)意義的數(shù)據(jù)點。本文將為大家詳細(xì)介紹如何利用R語言繪制火山圖,需要的可以參考一下

火山圖

火山圖用于展示基因表達(dá)差異的分布,橫軸為Log2 Fold Change,越偏離中心差異倍數(shù)越大;縱軸為(-1)*Log10 P_adjust,值越大差異越顯著。一般橫軸越偏離中心的點其縱軸值也會比較大,因此呈現(xiàn)火山噴發(fā)的形狀。

一步繪制火山圖

輸入數(shù)據(jù)格式

火山圖需要的數(shù)據(jù)格式如下 (本文用到的數(shù)據(jù)文件名為volcano.txt,文末有下載鏈接,此處截取一部分作為例子,也可用來畫圖,只是數(shù)據(jù)少,效果不明顯)

  • id: 不是必須的,但一般的軟件輸出結(jié)果中都會包含,表示基因名字。
  • log2FoldChange: 差異倍數(shù)的對數(shù),一般的差異分析輸出結(jié)果中也會給出對數(shù)處理的值, 因此程序沒有提供這一步的計算操作。
  • padj: 多重假設(shè)檢驗矯正過的差異顯著性P值;一般的差異分析輸出結(jié)果為原始值,程序提供一個參數(shù)對其求取負(fù)對數(shù)。
  • significant: 可選列,標(biāo)記哪些基因是上調(diào)、下調(diào)、無差異;若無此列或未在參數(shù)中指定此列,默認(rèn)程序會根據(jù)padj列和log2FoldChange列根據(jù)給定的閾值自動計算差異基因,并作出不同顏色的標(biāo)記。
  • label: 可選列,一般用于在圖中標(biāo)記出感興趣的基因的名字。非-行的字符串都會標(biāo)記在圖上。
id	log2FoldChange	padj	significant	label
E00007	4.28238	0	EHBIO_UP	A
E00008	-1.1036	0.476466843393901	Unchanged	-
E00009	-0.274368	1	Unchanged	-
E00010	4.62347	7.37606076333335e-103	EHBIO_UP	-
E00012	0.973987	0.482982440163204	Unchanged	-
E00017	-1.30205	0.000555693857439792	Baodian_UP	B
E00024	0.617636	2.78047837287061e-13	Unchanged	-
E00033	1.48669	2.56000581595275e-60	EHBIO_UP	-
E00034	-0.783716	0.00341521725291801	Unchanged	-
E00036	2.01592	6.03136656016401e-06	EHBIO_UP	C
E00040	-1.89657	4.73663890849056e-21	Baodian_UP	-
E00041	-0.268168	0.563429434558031	Unchanged	-
E00042	0.0861048	0.367700939634328	Unchanged	-
E00043	-1.19328	1.42673872027352e-153	Baodian_UP	-
E00044	-0.887981	2.43067804654905e-26	Unchanged	-
E00047	-0.610941	5.51696648645932e-57	Unchanged	-

使用significant列繪制火山圖

# -f: 指定輸入文件,格式如上
# -x: 指定橫軸變量,值為輸入文件中與取過對數(shù)的變化倍數(shù)相關(guān)的列的名字
# -y: 指定縱軸變量,值為輸入文件中與P-value
#     (也可能是p-adj,是否取過對數(shù)都可以)相關(guān)的列的名字
# -P: 若為TRUE,則表示對<-y>指定的列進(jìn)行-log10轉(zhuǎn)換
# -L: 指定圖例的位置
# -s: 指定差異基因列
# -S: 指定差異基因列不同的標(biāo)簽出現(xiàn)的順序
sp_volcano.sh -f volcano.txt -x log2FoldChange -y padj -s significant -S "'EHBIO_UP', 'Baodian_UP', 'Unchanged'" -P TRUE -L top

這個圖看上去還可以,沒有太大的問題。但有部分點與最頂端的線重合了,這些點的pvalue為0,取負(fù)對數(shù)后為負(fù)無窮。另外在一些情況下,會存在部分基因的pvalue極小,使得整張圖呈現(xiàn)一個壓縮的趨勢,大部分點偏安于圖的下方,中間大段空白,最上面零星幾個點。為了避免這種情況,程序設(shè)置了參數(shù)-M用于設(shè)定pvalue的最大的負(fù)對數(shù),所有大于給定值的數(shù),都會視為給定值。

# -M 10: 指定P-value(也可能是p-adj);若小于10^(-10),則為10^(-10)
#        用于部分p-value存在異常值,導(dǎo)致整個圖都被壓縮在最底部
p_volcano.sh -f volcano.txt -x log2FoldChange -y padj -s significant -S "'EHBIO_UP', 'Baodian_UP', 'Unchanged'" -P TRUE -L top -M 10

注意看縱軸的變化,和最上面排成一條線的一堆點。

自動計算significant列繪制火山圖

若不存在significant列,程序會根據(jù)-F指定的參數(shù)計算并標(biāo)記差異基因。-F的默認(rèn)值為"0.05,1"(引號是必須的), 第一個數(shù)表示pvalue或padj,對應(yīng)于<-y>列;第二個數(shù)表示對數(shù)轉(zhuǎn)換的差異倍數(shù),對應(yīng)于<-x>列。

# <-F "0.05,1">, 默認(rèn)值,故命令行中未寫,引號是必須的
sp_volcano.sh -f volcano.txt -x log2FoldChange -y padj -P TRUE -L top

# -M 10: 與之前相同
sp_volcano.sh -f volcano.txt -x log2FoldChange -y padj -P TRUE -L top -M 10

火山圖中標(biāo)記基因的名字

# -l: label,在圖中標(biāo)記部分基因的名字;
# label為含有待標(biāo)記基因名字的列名,此列中非<->的非空字符都會視為基因名字
sp_volcano.sh -f volcano.txt -x log2FoldChange -y padj -P TRUE -L top -M 10 -l label

label列中非-的值都會標(biāo)記在圖上。

今天先到這,前天提到的富集分析圖,今天的火山圖都是散點圖的一種,后續(xù)介紹散點圖時再對用到的R代碼進(jìn)行解讀。需要繪圖腳本的,還是請幫助轉(zhuǎn)發(fā)下,謝謝。

數(shù)據(jù)文件鏈接 https://pan.baidu.com/s/1I3hi8Lr9IxTgNFJoN4zbag . 提取碼:1234

到此這篇關(guān)于R語言學(xué)習(xí)之火山圖的繪制詳解的文章就介紹到這了,更多相關(guān)R語言繪制火山圖內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • R語言的一個加法函數(shù)使用介紹

    R語言的一個加法函數(shù)使用介紹

    這篇文章主要介紹了R語言的一個加法函數(shù)使用介紹,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • R語言關(guān)于卡方檢驗實例詳解

    R語言關(guān)于卡方檢驗實例詳解

    在本篇文章里小編給大家整理了一篇關(guān)于R語言關(guān)于卡方檢驗實例 內(nèi)容,有興趣的朋友們可以學(xué)習(xí)參考下。
    2021-05-05
  • R語言最簡單的向量賦值方法示例

    R語言最簡單的向量賦值方法示例

    這篇文章主要給大家介紹了關(guān)于R語言最簡單的向量賦值方法的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • 在R語言中實現(xiàn)Logistic邏輯回歸的操作

    在R語言中實現(xiàn)Logistic邏輯回歸的操作

    這篇文章主要介紹了在R語言中實現(xiàn)Logistic邏輯回歸的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2021-04-04
  • R語言實現(xiàn)線性回歸的示例

    R語言實現(xiàn)線性回歸的示例

    這篇文章主要介紹了R語言實現(xiàn)線性回歸的示例,幫助大家更好的理解和學(xué)習(xí)使用R語言,感興趣的朋友可以了解下
    2021-03-03
  • R語言開發(fā)之CSV文件的讀寫操作實現(xiàn)

    R語言開發(fā)之CSV文件的讀寫操作實現(xiàn)

    這篇文章主要介紹了R語言開發(fā)之CSV文件的讀寫操作實現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03
  • R語言ggplot2拼圖包patchwork安裝使用

    R語言ggplot2拼圖包patchwork安裝使用

    這篇文章主要介紹了R語言ggplot2拼圖包patchwork安裝使用的圖文示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • R語言繪圖學(xué)習(xí)教程VennDiagram繪制venn

    R語言繪圖學(xué)習(xí)教程VennDiagram繪制venn

    這篇文章主要為大家介紹了R語言繪圖學(xué)習(xí)教程VennDiagram繪制venn的示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-06-06
  • R語言時間序列TAR閾值自回歸模型示例詳解

    R語言時間序列TAR閾值自回歸模型示例詳解

    這篇文章主要介紹了R語言時間序列TAR閾值自回歸模型,本文通過實例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2021-03-03
  • R語言導(dǎo)入導(dǎo)出數(shù)據(jù)的幾種方法匯總

    R語言導(dǎo)入導(dǎo)出數(shù)據(jù)的幾種方法匯總

    這篇文章主要給大家總結(jié)介紹了R語言導(dǎo)入導(dǎo)出數(shù)據(jù)的幾種方法,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-03-03

最新評論