R语言绘图 | 差异散点图(类似火山图)绘制教程

文摘   2024-11-20 11:00   云南  

一边学习,一边总结,一边分享!

由于微信改版,一直有同学反映。存在长时间接收不到公众号的推文。那么请跟随以下步骤,将小杜的生信筆記设置为星标,不错过每一条推文教程。

欢迎关注《小杜的生信笔记》!!

如何加入社群

小杜的生信笔记仅有微信社群

1. 微信群:付费社群。添加小杜好友,加友请知:加友须知!!,加入社群请查看小杜的生信笔记付费加友入群声明

入群声明

2. 小杜个人微信:若你有好的教程或想法,可添加小杜个人微信。值得注意的是,小杜个人微信并不支持免费咨询长时间咨询,但支持小问题2-3个免费咨询。

小杜微信:

知识星球:

Bioinfo Notes学习交流群② 成立啦

基于长期积累和各位大佬、同学的支持,我们Bioinfo Notes学习交流群①已经满员,群②已成立,详情可看新的征程,学习永远不晚!Bioinfo Notes生信交流群②成立!

本期教程

注意

我们的教程只是给与一种图形的绘制方法,所用数据均为事例数据,不具有任何意义。此外,大家可以结合自己的数据进行绘制,不局限一种数据。

Code

  1. 导入所需的R包
# 加载必要包
library(ggplot2)
library(dplyr)
library(gridExtra)
  1. 导入数据
data

注意:事例数据在《R语言绘图专栏》可获得,或在社群中可获得。

关于《R语言绘图专栏》,此专栏基于R语言绘制图形。每个图形我们会提供对应的R代码数据文本文档。此系列将会是一个长期更新的系列。注意:若是你加入我们社群,则直接在社群中获得。

  1. 绘图
p1_scatter_plot <- ggplot(data, aes(x = theta_ratio, y = FST, color = group)) +
geom_point(alpha = 0.5, size = 0.7) +
scale_color_manual(values = c("Whole genome" = "gray",
"Selected (domestic pigs)" = "blue",
"Selected (wild boars)" = "green")) +
geom_hline(yintercept = 0.361, linetype = "dashed", color = "black") +
geom_vline(xintercept = c(0.57, 1.1), linetype = "dashed", color = "black") +
theme_minimal() +
theme(legend.position = "top") +
labs(x = expression(theta[pi] ~ "ratio (" ~ theta[pi] * ", domestic /" ~ theta[pi] * ", Tibetan)"),
y = expression(F[ST]),
color = "Regions")
p2_bar_plot <- ggplot(bar_data, aes(x = FST, y = frequency, fill = group)) +
geom_bar(stat = "identity", color = "black", alpha = 0.8) +
geom_line(aes(y = cumulative / max(cumulative) * max(frequency), group = 1), color = "black", size = 1) +
scale_fill_manual(values = c("High FST" = "orange", "Low FST" = "gray")) +
theme_minimal() +
labs(x = expression(F[ST]), y = "Frequency (%)") +
theme(legend.position = "none") +
scale_y_continuous(sec.axis = sec_axis(~ . * max(bar_data$cumulative) / max(bar_data$frequency),
name = "Cumulative (%)"))
  1. 合图
p <- grid.arrange(scatter_plot, bar_plot, ncol = 2, widths = c(1.2, 1))
p

R版本

> sessionInfo()
R version 4.4.0 (2024-04-24 ucrt)
Platform: x86_64-w64-mingw32/x64
Running under: Windows 11 x64 (build 22631)

Matrix products: default


locale:
[1] LC_COLLATE=Chinese (Simplified)_China.utf8
[2] LC_CTYPE=Chinese (Simplified)_China.utf8
[3] LC_MONETARY=Chinese (Simplified)_China.utf8
[4] LC_NUMERIC=C
[5] LC_TIME=Chinese (Simplified)_China.utf8

time zone: Asia/Shanghai
tzcode source: internal

attached base packages:
[1] grid stats graphics grDevices utils
[6] datasets methods base

other attached packages:
[1] gridExtra_2.3 dplyr_1.1.4 ggplot2_3.5.1

loaded via a namespace (and not attached):
[1] crayon_1.5.3 vctrs_0.6.5 cli_3.6.3
[4] rlang_1.1.4 generics_0.1.3 textshaping_0.4.0
[7] glue_1.6.2 labeling_0.4.3 colorspace_2.1-1
[10] ragg_1.3.2 scales_1.3.0 fansi_1.0.6
[13] munsell_0.5.1 tibble_3.2.1 lifecycle_1.0.4
[16] compiler_4.4.0 pkgconfig_2.0.3 rstudioapi_0.16.0
[19] systemfonts_1.1.0 farver_2.1.2 R6_2.5.1
[22] tidyselect_1.2.1 utf8_1.2.4 pillar_1.9.0
[25] magrittr_2.0.3 tools_4.4.0 withr_3.0.1
[28] gtable_0.3.5

若我们的教程对你有所帮助,请点赞+收藏+转发,大家的支持是我们更新的动力!!

往期部分文章

1. 最全WGCNA教程(替换数据即可出全部结果与图形)

推荐大家购买最新的教程,若是已经购买以前WGNCA教程的同学,可以在对应教程留言,即可获得最新的教程。(注:此教程也仅基于自己理解,不仅局限于此,难免有不恰当地方,请结合自己需求,进行改动。)


2. 精美图形绘制教程

3. 转录组分析教程

4. 转录组下游分析

小杜的生信筆記 ,主要发表或收录生物信息学教程,以及基于R分析和可视化(包括数据分析,图形绘制等);分享感兴趣的文献和学习资料!!

小杜的生信筆記
小杜的生信筆記,生信小白,初来乍到请多指教。 主要学习分享,转录组数据分析,基于R语言数据分析和绘制图片等,以及相关文献的分享。
 最新文章