R繪圖:一文了解ggplot2顏色的設置

2021-02-21 生信小課堂
R繪圖往期回顧:

ggplot2繪圖學習 兩個連續性變量

ggplot2繪圖學習:單變量+繪圖背景

R繪圖:ggeconodist,基於ggplot2的另類箱圖

R語言學習系列之「多變的熱圖」

螞蟻金服在線可視化引擎 G2

R繪圖:無與倫比的華麗風行(桑基圖)

R繪圖:相關性分析與作圖(單基因相關性)

R繪圖:相關性分析與作圖R繪圖

ggsci: 高大上的論文配色,一文解決配色問題

R繪圖 ggpubr: 為學術而生

TCGA數據分析系列之火山圖

R繪圖 雷達圖-單基因泛癌差異表達的另類展現形式

在我們平常的繪圖中,顏色不僅影響圖形得美感,也可以作為一個變量,從而使圖形反應更多維度得信息。

我們可以用顏色來表示分組,比如,不同組的散點用不同顏色,多條曲線用不同顏色;可以用顏色表示數值,用顏色深淺表示絕對值大小;可以用顏色來突出某些要強調的圖形元素

將變量值映射為顏色,可以分為如下四種情況1 無序的分類變量;2 有序的分類變量,僅有大小次序,沒有正反;3 有序的分類變量,有正有反;4 連續數值變量。

在R語言中,我們可以使用RColorBrewer::display.brewer.all()來查看調色板,在ggplot2 中用 scale_color_brewer(palette) 和 scale_fill_brewer(palette)選擇 RColorBrewer 中的調色盤。

RColorBrewer::display.brewer.all()

離散型變量manual 直接指定分組使用的顏色

hue 通過改變色相(hue)飽和度(chroma)亮度(luminosity)來調整顏色

brewer 使用ColorBrewer的顏色

grey 使用不同程度的灰色


color 和 fill 可更改的顏色參數,一般柱狀圖,fill是柱子的填充顏色,這時就使用scale_fill系列函數來更改顏色。點圖使用color分組,則使用scale_color_系列函數來更改顏色。

library(ggplot2)b <- ggplot(mpg, aes(fl))+ geom_bar(aes(fill = fl))b 

scale_fill_brewer函數調用調色板中的配色方案

b + scale_fill_brewer(palette = "Set1")

也可以使用scale_fill_manual函數自定義顏色

b + scale_fill_manual(values=c(c = "red", d = "blue", e = "green" , p = "orange", r = "yellow"))

單一顏色

b+ scale_fill_brewer(palette = "Blues")


也可以用scale_fill_grey()函數使用灰度,通過start end 兩個參數指定,0為黑,1為白,都在0-1範圍內

b + scale_fill_grey(start=1, end=0)

 

連續型變量

gradient 創建漸變色

distiller 使用ColorBrewer的顏色

identity 使用color變量對應的顏色,對離散型和連續型都有效

scale_color_gradient   雙色漸變(低-高)

scale_color_gradient2 發散顏色漸變(低-中-高)

scale_color_gradientn 創建n色漸變

雙色漸變

aaa=mpgaaa$cty<- aaa$cty-20f <- ggplot(aaa, aes(cty, hwy))+ geom_point(aes(color=cty))f + scale_colour_gradient(low = "green", high = "red")

低-中-高三色漸變

f + scale_color_gradient2(low = "green", mid = "black", high =  "red")

n色漸變

f + scale_color_gradientn(colours =rainbow(10))

scale_color_distiller函數可以將ColorBrewer的顏色運用在連續變量上

f + scale_color_distiller(palette = "Set1")

公眾號「生信小課堂」

TCGA數據分析大全


                                                                                                                                                                   

相關焦點

  • 一文讀懂ggplot2數據可視化
    ggplot2的命令是一種用R實現的繪圖語言ggplot2的代碼相對容易理解,設定各種參數較為方便,圖形也十分美觀,能用相對簡單的代碼在圖形中呈現出非常豐富的信息。不過,ggplot2的語法與傳統R函數的調用方式有很大差別,所以不少人反映學起來有些困難。在ggplot2出現以前,R繪圖都是調用函數,再通過改變函數的參數實現的。
  • R繪圖之ggplot2-散點圖(一)
    上次我們簡單的介紹了ggplot2的做圖基礎,並介紹了如何調整參數,設置分組並添加線性擬合,那麼今天大家跟著圖圖一起來系統的學習一下散點圖的製作
  • 整理了一些自己可能會用到的R包~20210125更新
    更新於2021年1月25號gtable生信菜鳥團 公眾號分享的文章 R包:gtable包用於處理ggplot2圖像ggrgl畫三維圖 在 微生物生信 看到的推文 ggrgl:用ggplot做3D圖表rayshader公眾號有人留言說這個包做ppt很好用,我查了一下,大體看了一眼幫助文檔
  • python數據可視化(一)seaborn介紹及繪圖風格設置
    seaborn整體布局及風格設置seaborn調色板及顏色設置seaborn單變量分析繪圖(直方圖、條形圖)seaborn回歸分析繪圖seaborn繪製散點圖(分布散點圖、分簇散點圖)seaborn繪製盒圖、小提琴圖seaborn繪製熱度圖seaborn多圖繪製及facetgrid使用方法對於seaborn庫的內容,拆分比較細,這樣做的目的是一是想每篇文章具有一定的針對性,而是想看每篇文章的時間不要太長
  • 跟著Nature Methods學畫圖:R語言ggplot2畫氣泡圖(dotplot)展示基因表達量
    今天的推文繼續重複論文中的原圖在簡書 土豆學生信 分享的內容看到這篇論文 簡書的連結是 https
  • ggplot2版聚類物種豐度堆疊圖
    今天更新基於ggplot2系統的教程。加載依賴關係這裡的ggtree需要使用19年7月以後的版本,因為這以後的版本才支持將聚類結果轉化為樹結構。如果你的Bioconductor版本較舊,可能一直會安裝舊版ggtree。
  • 【繪圖】散點圖+線性回歸,你一定用得到!
    我們此次的繪圖也是用到ggplot2中的函數。其中,散點圖通過goem_point()函數進行繪製,線性模型通過geom_smooth()進行繪製,通過如下代碼進行繪製,還是比較簡單的。在ggplot2的上述代碼中,我們先通過ggplot()函數指定數據層,用geom_point()添加散點圖,然後通過geom_smooth()添加線性模型,中間通過「+」進行連接,就像圖層一層層疊加是一個道理。
  • 【ggplot2】- 設置坐標軸
    scale_x_discrete 可以設置離散型(discrete)數據, 中間的 x 表示處理x軸,如果是 fill 則可以修改填充顏色, color 修改邊框顏色, shape 修改形狀……設置坐標軸的標籤
  • python的繪圖利器--海龜繪圖turtle
    這個語句是個固定格式,有這句話畫完圖,繪圖窗口還保留,如果沒有這句話,繪圖窗口就直接關閉了,所以初期都加上就好了。下面,我們就進入正題:公共設置公共設置的第一條import turtleimport是導入,turtle是海龜繪圖庫,所以這句話就是導入海龜會圖庫的意思,記住就可以了。
  • 一文講透
    在Python的圖表繪製中,圖例和標題是兩個重要的組件,尤其在繪圖區域出現多個圖形時,如果這些圖形不添加說明,那麼對於圖表受眾人員來說,就會很難識別出這些圖形中的主要內容,因此這就顯示出了圖例的重要性,因為圖例可以標記每個圖形所代表的內容;同樣,如果想讓受眾人員搞清楚繪圖區域中的內容所代表的意思
  • 基於Python的圖表繪圖系統matplotlib,「餅圖「「你真了解嗎?
    ,explode=[0.03,0.03,0.03] #設置餅圖各個扇區之間的間隙 ,colors=['r','g','b']) #設置餅圖各個扇區的顏色plt.title('第1小學各學科成績佔比',fontsize=12);每行代碼的含義都以備註的方式解釋明白了,以上只是常用的參數,當然還有一些不常用的參數並沒有全都一一試驗,給有好奇心的小可愛可以自行探索哈。
  • R:STRINGdb包用於string蛋白互作分析
    然後plot_network繪圖即可。使用igraph和ggraph可視化蛋白互作網絡圖先使用igraph創建網絡數據,並進行必要的處理,然後轉到ggraph繪圖。># ggraph是基於ggplot2的包,語法和常規ggplot2類似ggraph(net,layout = "kk")+  geom_edge_fan(aes(edge_width=width), color = "lightblue", show.legend = F)+  geom_node_point(aes(size=size), color="orange",
  • R包ggrepel解決散點圖樣品標籤重疊,方便篩選樣品
    ggplot2的輔助包ggrepel就是專門處理遮蓋問題的專家。有了人類可讀的可視化結果,在我們下遊分析、樣品篩選、異常樣品鑑定更加方便高效。")或者安裝最新的開發版本:install.packages("devtools", repo="http://cran.us.r-project.org")library(devtools)devtools::install_github("slowkow/ggrepel")geom_text()添加樣品標籤我們先看看geom_text
  • r 秩和檢驗 - CSDN
    在這裡,我們將使用ggpubr R包進行基於ggplot2的簡單數據可視化從GitHub上的安裝最新版本的ggpubr如下(推薦):# 安裝if(!require(devtools)) install.packages("devtools")devtools::install_github("kassambara/ggpubr")install.packages("ggpubr")# 分組繪圖library("ggpubr")ggboxplot
  • 一文學會網絡分析——Co-occurrence網絡圖在R中的實現
    (occor.r,mode="undirected",weighted=TRUE,diag=FALSE)igraph# NOTE:可以設置weighted=NULL,但是此時要注意此函數只能識別相互作用矩陣內正整數,所以應用前請確保矩陣正確。
  • R語言中使用par函數在同一繪圖區中繪製多幅圖
    par函數概述在R繪圖時,有時我們想在一個繪圖區中同時繪製多幅圖。在R語言中可以有多個函數來實現此要求。這裡先介紹一下繪圖參數par函數的使用。R中的par()函數可以將繪圖區分割成規則的幾個部分。par設定的繪圖參數直至退出前都會有效,即使是在某個函數中使用par()設定的參數,也會影響全局的效果,所以如果在繪圖中需要恢復到初始狀態,可以設置臨時變量保存初始環境。在準備恢復時再使用par(臨時變量)的形式恢復到初始狀態。
  • R語言繪圖|折線圖畫法,如何畫出你滿意的圖?
    >再畫折線圖:# 繪製折線圖plot(t1$age, t1$circumference, xlab="Age (days)", ylab="Circumference (mm)", main="Orange Tree 1 Growth", type="b")可以發現,繪製折線圖使用的仍是plot()函數,其代碼只比散點圖的多了一個用來設置圖形外觀的命令
  • R繪圖應用實例:單因素方差分析ANOVA及繪圖
    計算結果錄入Excel,如下:圖片.png(一):數據準備summarySE 函數提供了標準差、標準誤以及95%的置信區間library(Rmisc)data_long_count <- summarySE(data_long, measurevar="value", groupvars= "variable")data_long_count(四):繪圖