R语言绘制相关性拟合图
2023-07-11 本文已影响0人
小杜的生信筆記
前言
前两天有个咨询了一下使用R语言如何绘制相关性拟合图,这个图形相关是很基础的,比如在qRT-PCR与RNA-seq之间的数据比较,在很早前面,文章中这样的图形很常见。
其实,基础图形的呈现很容易,主要是后期的图形美化。
图形绘制原理
主要使用X轴和Y轴的数据进行两两配对,所获得图形。这个配对可以组内配对(one to one),也可以是组间配对(one to more)。看到这里,我们可以看前期的教程[R语言可视化-精美图形绘制系列--组间相关性分析],[R语言可视化-精美图形绘制系列]--组内相关性分析。
绘制图形
##
##'@相关性散点图,计算R值
##'@2023.07.11
library(tidyverse)
library(ggpubr)
library(ggplot2)
##'@创建数据
data <- data.frame(
sample = paste0("sample", 1:30),
age = sample(20:90, 30, replace = T),
Time = sample(10:80, 30, replace = T)
)
head(data)
使用cor()函数计算相关
cor(data$age, data$Time, method = "pearson")
绘制图形
ggscatter(data,
x = 'age',
y = 'Time',
add = "reg.line",##拟合曲线
conf.int = TRUE,##置信区间阴影带
cor.coef = TRUE, ##系数
cor.method = "pearson",#方法
xlab = "Age", ## x轴
ylab = "Time" ## y轴
)+
theme_bw()
随后,我们也在搜索到相关的教程,也一起分析给大家。来自土壤微生物组的教程。
使用其的代码绘制:
ggplot(data, aes(x=age, y=Time))+
geom_point(data,mapping = aes(x=age, y=Time),size=2)+
geom_smooth(aes(x=age, y=Time),method = 'lm',level=0.95,se = F, size=1.6)+
stat_cor(method = "spearman",label.x.npc ="left",label.y.npc = 0.97)+#或pearson
theme_bw()
此外,在我们的数据中也可以加入,相关的分组信息,这样有利于美化图形。我们就使用教程的白杨数新观察分享的教程吧。
ggplot(data=mtcars,
mapping=aes(x=wt,y=mpg,
color=hp, #颜色代表hp取值
size=disp #散点大小代表disp取值
)
)+geom_point(
详细教程,我们自行点击链接查看。
「小杜的生信筆記」,主要发表或收录生物信息学的教程,以及基于R的分析和可视化(包括数据分析,图形绘制等);分享感兴趣的文献和学习资料!!