日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

R语言可视化学习笔记之ggridges包绘制山峦图

發(fā)布時間:2025/3/15 编程问答 38 豆豆
生活随笔 收集整理的這篇文章主要介紹了 R语言可视化学习笔记之ggridges包绘制山峦图 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

作者:嚴(yán)濤 浙江大學(xué)作物遺傳育種在讀研究生(生物信息學(xué)方向)偽碼農(nóng),R語言愛好者,愛開源。

嚴(yán)濤老師的繪圖教程還有:

gganimate |諾獎文章里面的動圖繪制教程來了!!

ggplot2學(xué)習(xí)筆記之圖形排列

R包ggseqlogo |繪制序列分析圖

ggplot2高效實(shí)用指南 (可視化腳本、工具、套路、配色)

簡介

ggridges包主要用來繪制山巒圖。尤其是針對時間或者空間分布可視化具有十分好的效果。ggridges主要提供兩個幾何圖像函數(shù):

  • geom_ridgeline(): 主要繪制山脊線圖

  • geom_density_ridges():主要繪制密度山脊線圖

具體用法可以參考官方文檔:

https://cran.r-project.org/web/packages/ggridges/vignettes/introduction.html

geom_ridgeline()

library(ggridges) library(tidyverse) # grid.arrange來自于gridExtra包,可以同時拼圖多個ggplot2對象 library(gridExtra)my_data <- data.frame(x=1:5, y=rep(1,5), height=c(0,1,-1,3,2)) plot_base <- ggplot(my_data, aes(x, y, height=height))# 默認(rèn)負(fù)值不顯示,除非指定min_height參數(shù)grid.arrange(plot_base+geom_ridgeline(),plot_base+geom_ridgeline(min_height=-2), ncol=2)

geom_density_ridges()

geom_density_ridges()函數(shù)首先會根據(jù)數(shù)據(jù)計算密度然后繪圖,此時美學(xué)映射height沒有必要寫入函數(shù)中。下面使用lincoln_weather數(shù)據(jù)集。

# creates a vector of n equally spaced colors along the # Matplolib 'viridis' color map# also designed to be perceived by readers with the most common form of color blindness # ?scale_fill_viridis函數(shù)來源于此包, # 其參數(shù) option用于設(shè)置顏色 "magma" (or "A"), "inferno" (or "B"), "plasma" (or "C"), and "viridis" (or "D", the default option). # ?viridis可以查看其具體含義library(viridis) head(lincoln_weather[ ,1:4])## # A tibble: 6 x 4 ## ? CST ? ? ?`Max Temperature [F]` `Mean Temperature [F]` `Min Temperature ~ ## ? <chr> ? ? ? ? ? ? ? ? ? ?<int> ? ? ? ? ? ? ? ? ?<int> ? ? ? ? ? ? ?<int> ## 1 2016-1-1 ? ? ? ? ? ? ? ? ? ?37 ? ? ? ? ? ? ? ? ? ? 24 ? ? ? ? ? ? ? ? 11 ## 2 2016-1-2 ? ? ? ? ? ? ? ? ? ?41 ? ? ? ? ? ? ? ? ? ? 23 ? ? ? ? ? ? ? ? ?5 ## 3 2016-1-3 ? ? ? ? ? ? ? ? ? ?37 ? ? ? ? ? ? ? ? ? ? 23 ? ? ? ? ? ? ? ? ?8 ## 4 2016-1-4 ? ? ? ? ? ? ? ? ? ?30 ? ? ? ? ? ? ? ? ? ? 17 ? ? ? ? ? ? ? ? ?4 ## 5 2016-1-5 ? ? ? ? ? ? ? ? ? ?38 ? ? ? ? ? ? ? ? ? ? 29 ? ? ? ? ? ? ? ? 19 ## 6 2016-1-6 ? ? ? ? ? ? ? ? ? ?34 ? ? ? ? ? ? ? ? ? ? 33 ? ? ? ? ? ? ? ? 32# x后的值用 ` (反引號)括起,是因為列名字中存在空格和特殊字符,需要特殊對待 # fill = ..x.., double dots是ggplot2的一種特殊識別符,用來區(qū)分定義的和計算的美學(xué)參數(shù) # 這里指用橫軸的數(shù)據(jù)著色ggplot(lincoln_weather, aes(x=`Mean Temperature [F]`, y=`Month`, fill=..x..))+geom_density_ridges_gradient(scale=3, rel_min_height=0.01, gradient_lwd = 1.)+scale_x_continuous(expand = c(0.01, 0))+ # 擴(kuò)展下橫軸和縱軸scale_y_discrete(expand = c(0.01,0))+scale_fill_viridis(name="Temp. [F]", option = "C")+labs(title="Temperature in Lincoln NE",subtitle="Mean temperature (Fahrenheit) by month for 2016\nData:Orogin CSV from the Weather Underground ")+theme_ridges(font_size = 13, grid = FALSE)+theme(axis.title.y = element_blank())

cyclinal scales

為了使得ggridges繪制的圖形可視化效果最好,同時為了減少用戶對顏色設(shè)置的困難,作者提供了cyclinal scales用于顏色輪轉(zhuǎn)映射。

ggplot(diamonds, aes(x=price, y=cut, fill=cut))+geom_density_ridges(scale=4)+scale_fill_cyclical(values = c("blue", "green"))+theme_ridges(grid = FALSE)

默認(rèn)的,cyclinal scales為了防止誤解是不繪制圖例的,但是可以通過選項guide="legend"添加圖例。

ggplot(diamonds, aes(x=price, y=cut, fill=cut))+geom_density_ridges(scale=4)+scale_fill_cyclical(values = c("blue", "green"), guide="legend")+theme_ridges(grid = FALSE)

ggplot2一樣,圖例是可以修改的,其他參數(shù)比如大小、透明度、形狀等都是可以通過cyclinal scales修改。

ggplot(diamonds, aes(x=price, y=cut, fill=cut))+geom_density_ridges(scale=4)+scale_fill_cyclical(values = c("blue", "green"), guide="legend",labels=c("Fair"="blue", "Good"="green"),name="Fill colors")+theme_ridges(grid = FALSE)

再來2個示例

不做解釋了,如果想重現(xiàn)就把代碼拆解開,按需修改。一句句話單獨(dú)拆開運(yùn)行,理解其操作內(nèi)容。

library(dplyr) library(forcats) Catalan_elections %>%mutate(YearFct = fct_rev(as.factor(Year))) %>%ggplot(aes(y = YearFct)) +geom_density_ridges(aes(x = Percent, fill = paste(YearFct, Option)),alpha = .8, color = "white", from = 0, to = 100) +labs(x = "Vote (%)",y = "Election Year",title = "Indy vs Unionist vote in Catalan elections",subtitle = "Analysis unit: municipalities (n = 949)",caption = "Marc Belzunces (@marcbeldata) | Source: Idescat") +scale_y_discrete(expand = c(0.01, 0)) +scale_x_continuous(expand = c(0.01, 0)) +scale_fill_cyclical(breaks = c("1980 Indy", "1980 Unionist"),labels = c(`1980 Indy` = "Indy", `1980 Unionist` = "Unionist"),values = c("#ff0000", "#0000ff", "#ff8080", "#8080ff"),name = "Option", guide = "legend") +theme_ridges(grid = FALSE)

library(DAAG) # for ais dataset ais$sport <- factor(ais$sport,levels = c("B_Ball", "Field", "Gym", "Netball", "Row", "Swim", "T_400m", "T_Sprnt", "Tennis", "W_Polo"),labels = c("Basketball", "Field", "Gym", "Netball", "Row", "Swim", "Track 400m", "Track Sprint", "Tennis", "Water Polo") )ggplot(ais, aes(x=ht, y=sport, color=sex, point_color=sex, fill=sex)) +geom_density_ridges(jittered_points=TRUE, scale = .95, rel_min_height = .01,point_shape = "|", point_size = 3, size = 0.25,position = position_points_jitter(height = 0)) +scale_y_discrete(expand = c(.01, 0)) +scale_x_continuous(expand = c(0, 0), name = "height [cm]") +scale_fill_manual(values = c("#D55E0050", "#0072B250"), labels = c("female", "male")) +scale_color_manual(values = c("#D55E00", "#0072B2"), guide = "none") +scale_discrete_manual("point_color", values = c("#D55E00", "#0072B2"), guide = "none") +guides(fill = guide_legend(override.aes = list(fill = c("#D55E00A0", "#0072B2A0"),color = NA, point_color = NA))) +ggtitle("Height in Australian athletes") +theme_ridges(center = TRUE)

還有很多用法有興趣的可以查看官方文檔https://cran.r-project.org/web/packages/ggridges/vignettes/introduction.html和https://cran.r-project.org/web/packages/ggridges/vignettes/gallery.html)繼續(xù)學(xué)習(xí)。

R統(tǒng)計和作圖

  • Graphpad,經(jīng)典繪圖工具初學(xué)初探

  • 維恩(Venn)圖繪制工具大全 (在線+R包)

  • 在R中贊揚(yáng)下努力工作的你,獎勵一份CheatShet

  • 別人的電子書,你的電子書,都在bookdown

  • R語言 - 入門環(huán)境Rstudio

  • R語言 - 熱圖繪制 (heatmap)

  • R語言 - 基礎(chǔ)概念和矩陣操作

  • R語言 - 熱圖簡化

  • R語言 - 熱圖美化

  • R語言 - 線圖繪制

  • R語言 - 線圖一步法

  • R語言 - 箱線圖(小提琴圖、抖動圖、區(qū)域散點(diǎn)圖)

  • R語言 - 箱線圖一步法

  • R語言 - 火山圖

  • R語言 - 富集分析泡泡圖

  • R語言 - 散點(diǎn)圖繪制

  • R語言 - 韋恩圖

  • R語言 - 柱狀圖

  • R語言 - 圖形設(shè)置中英字體

  • R語言 - 非參數(shù)法生存分析

  • R語言 - 繪制seq logo圖

  • WGCNA分析,簡單全面的最新教程

  • psych +igraph:共表達(dá)網(wǎng)絡(luò)構(gòu)建

  • 一文學(xué)會網(wǎng)絡(luò)分析——Co-occurrence網(wǎng)絡(luò)圖在R中的實(shí)現(xiàn)

  • 一文看懂PCA主成分分析

  • 富集分析DotPlot,可以服

  • 基因共表達(dá)聚類分析和可視化

  • R中1010個熱圖繪制方法

  • 還在用PCA降維?快學(xué)學(xué)大牛最愛的t-SNE算法吧, 附Python/R代碼

  • 一個函數(shù)抓取代謝組學(xué)權(quán)威數(shù)據(jù)庫HMDB的所有表格數(shù)據(jù)

  • 文章用圖的修改和排版

  • network3D:?交互式桑基圖

  • network3D 交互式網(wǎng)絡(luò)生成

  • Seq logo 在線繪制工具——Weblogo

  • 生物AI插圖素材獲取和拼裝指導(dǎo)

  • ggplot2高效實(shí)用指南 (可視化腳本、工具、套路、配色)

  • 圖像處理R包magick學(xué)習(xí)筆記

  • SOM基因表達(dá)聚類分析初探

  • 利用gganimate可視化全球范圍R-Ladies(R社區(qū)性別多樣性組織)發(fā)展情況

  • 一分鐘繪制磷脂雙分子層:AI零基礎(chǔ)入門和基本圖形繪制

  • AI科研繪圖(二):模式圖的基本畫法

  • 你知道R中的賦值符號箭頭(<-)和等號(=)的區(qū)別嗎?

  • R語言可視化學(xué)習(xí)筆記之ggridges包

  • 利用ComplexHeatmap繪制熱圖(一)

  • ggplot2學(xué)習(xí)筆記之圖形排列

  • R包reshape2,輕松實(shí)現(xiàn)長、寬數(shù)據(jù)表格轉(zhuǎn)換

  • 用R在地圖上繪制網(wǎng)絡(luò)圖的三種方法

  • PCA主成分分析實(shí)戰(zhàn)和可視化 附R代碼和測試數(shù)據(jù)

  • iTOL快速繪制顏值最高的進(jìn)化樹!

  • 12個ggplot2擴(kuò)展包幫你實(shí)現(xiàn)更強(qiáng)大的可視化

  • 編程模板-R語言腳本寫作:最簡單的統(tǒng)計與繪圖,包安裝、命令行參數(shù)解析、文件讀取、表格和矢量圖輸出

  • R語言統(tǒng)計入門課程推薦——生物科學(xué)中的數(shù)據(jù)分析Data Analysis for the Life Sciences

  • 數(shù)據(jù)可視化基本套路總結(jié)

  • 你知道R中的賦值符號箭頭<-和等號=的區(qū)別嗎?

  • 使用dplyr進(jìn)行數(shù)據(jù)操作30例

  • 交集intersect、并集union、找不同setdiff

  • R包reshape2,輕松實(shí)現(xiàn)長、寬數(shù)據(jù)表格轉(zhuǎn)換

  • 1數(shù)據(jù)類型(向量、數(shù)組、矩陣、 列表和數(shù)據(jù)框)

  • 2讀寫數(shù)據(jù)所需的主要函數(shù)、與外部環(huán)境交互

  • 3數(shù)據(jù)篩選——提取對象的子集

  • 4向量、矩陣的數(shù)學(xué)運(yùn)算

  • 5控制結(jié)構(gòu)

  • 6函數(shù)及作用域

  • 7認(rèn)識循環(huán)函數(shù)lapply和sapply

  • 8分解數(shù)據(jù)框split和查看對象str

  • 9模擬—隨機(jī)數(shù)、抽樣、線性模型

  • 1初識ggplot2繪制幾何對象

  • 2圖層的使用—基礎(chǔ)、加標(biāo)簽、注釋

  • 3工具箱—誤差線、加權(quán)數(shù)、展示數(shù)據(jù)分布

  • 4語法基礎(chǔ)

  • 5通過圖層構(gòu)建圖像

  • 6標(biāo)度、軸和圖例

  • 7定位-分面和坐標(biāo)系

  • 8主題設(shè)置、存儲導(dǎo)出

  • 9繪圖需要的數(shù)據(jù)整理技術(shù)

  • 創(chuàng)建屬于自己的調(diào)色板

  • 28個實(shí)用繪圖包,總有幾個適合你

  • 熱圖繪制

  • R做線性回歸

  • 繪圖相關(guān)系數(shù)矩陣corrplot

  • 相關(guān)矩陣可視化ggcorrplot

  • 繪制交互式圖形recharts

  • 交互式可視化CanvasXpress

  • 聚類分析factoextra

  • LDA分析、作圖及添加置信-ggord

  • 解決散點(diǎn)圖樣品標(biāo)簽重疊ggrepel

  • 添加P值或顯著性標(biāo)記ggpubr

  • Alpha多樣性稀釋曲線rarefraction curve

  • 堆疊柱狀圖各成分連線畫法:突出組間變化

  • 沖擊圖展示組間時間序列變化ggalluvial

  • 桑基圖riverplot

  • 微生物環(huán)境因子分析ggvegan

  • 五彩進(jìn)化樹與熱圖更配ggtree

  • 多元回歸樹分析mvpart

  • 隨機(jī)森林randomForest?分類Classification?回歸Regression

  • 加權(quán)基因共表達(dá)網(wǎng)絡(luò)分析WGCNA

  • circlize包繪制circos-plot

  • R語言搭建炫酷的線上博客系統(tǒng)

  • 28個實(shí)用繪圖包,總有幾個適合你

  • 熱圖繪制

  • R做線性回歸

  • 繪圖相關(guān)系數(shù)矩陣corrplot

  • 相關(guān)矩陣可視化ggcorrplot

  • 繪制交互式圖形recharts

  • 交互式可視化CanvasXpress

  • 聚類分析factoextra

  • LDA分析、作圖及添加置信-ggord

  • 解決散點(diǎn)圖樣品標(biāo)簽重疊ggrepel

  • 添加P值或顯著性標(biāo)記ggpubr

  • Alpha多樣性稀釋曲線rarefraction curve

  • 堆疊柱狀圖各成分連線畫法:突出組間變化

  • 沖擊圖展示組間時間序列變化ggalluvial

  • 桑基圖riverplot

  • 微生物環(huán)境因子分析ggvegan

  • 五彩進(jìn)化樹與熱圖更配ggtree

  • 多元回歸樹分析mvpart

  • 隨機(jī)森林randomForest?分類Classification?回歸Regression

  • 加權(quán)基因共表達(dá)網(wǎng)絡(luò)分析WGCNA

  • circlize包繪制circos-plot

  • R語言搭建炫酷的線上博客系統(tǒng)

  • 維恩(Venn)圖繪制工具大全 (在線+R包)

  • R包c(diǎn)irclize:柱狀圖用膩了?試試好看的弦狀圖

  • 獲取pheatmap聚類后和標(biāo)準(zhǔn)化后的結(jié)果

  • 增強(qiáng)火山圖,要不要試一下?

  • 一個震撼的交互型3D可視化R包 - 可直接轉(zhuǎn)ggplot2圖為3D

  • 贈你一只金色的眼 - 富集分析和表達(dá)數(shù)據(jù)可視化

  • 是Excel的圖,不!是R的圖

  • 道友,來Rstudio里面看動畫了

  • 用了這么多年的PCA可視化竟然是錯的!!!

  • R語言可視化學(xué)習(xí)筆記之ggridges包

  • 萬能轉(zhuǎn)換:R圖和統(tǒng)計表轉(zhuǎn)成發(fā)表級的Word、PPT、Excel、HTML、Latex、矢量圖等


  • 那天空飄過的梅花月餅,是今年中秋最好的禮物

高顏值免費(fèi)在線繪圖

往期精品

畫圖三字經(jīng)?生信視頻?生信系列教程?

心得體會?TCGA數(shù)據(jù)庫?Linux?Python?

高通量分析?免費(fèi)在線畫圖?測序歷史?超級增強(qiáng)子

生信學(xué)習(xí)視頻?PPT?EXCEL?文章寫作?ggplot2

海哥組學(xué)?可視化套路?基因組瀏覽器

色彩搭配?圖形排版?互作網(wǎng)絡(luò)

自學(xué)生信?2019影響因子?GSEA?單細(xì)胞?

后臺回復(fù)“生信寶典福利第一波”獲取教程合集

總結(jié)

以上是生活随笔為你收集整理的R语言可视化学习笔记之ggridges包绘制山峦图的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。