缘由

生信之路,道阻且长,记录经验,但渡有缘人。

碎碎念

及时当勉励,岁月不饶人 ——陶渊明

原图 & 文章

Proteogenomics of Non-smoking Lung Cancer in East Asia Delineates Molecular Signatures of Pathogenesis and Progression
Chen, Yi-Ju et al.
Cell, Volume 182, Issue 1, 226 - 244.e17

功能:PCA分析

炫图

代码

代码解释:

# 加载必要的包
devtools::install_github("clauswilke/ggisoband")
library(ggplot2)
library(ggisoband)
# 示例数据:生成一个包含 PCA 坐标和分组标签的数据框
set.seed(123)
# 创建一个数据框,包含 PCA1 和 PCA2 坐标以及分组信息
data <- data.frame(
	PC1 = c(rnorm(100, mean = -50, sd = 15), rnorm(100, mean = 0, sd = 10), rnorm(100, mean = 50, sd = 15)),
	PC2 = c(rnorm(100, mean = 25, sd = 10), rnorm(100, mean = 0, sd = 20), rnorm(100, mean = -25, sd = 10)),
	Protein = factor(rep(c("Green", "Orange", "Red"), each = 100))  # 分组标签
)
# 绘制 PCA 散点图和多个椭圆
ggplot(data, aes(x = PC1, y = PC2, color = Protein)) +
	geom_density_bands(fill ="white" , color = "gray", alpha =0.5, size = 1) +
	scale_color_manual(values=c("#96cf55","#4221f7","#e5a954"))+
	scale_fill_viridis_c(guide = "legend") +
	geom_point(shape = 21, fill = "white",size=2, stroke=1.5) +
	theme(panel.grid = element_line(color = "gray70"),
		  legend.position = "none") +
	labs(x="PC1 (35.0 %)", y ="PC2 (12.9%)")

详细解释:

  1. geom_density_bands(fill ="white", color = "gray", alpha =0.5, size = 1):

    • geom_density_bands() 用于绘制 等密度带(也就是椭圆区域)。
    • fill = "white":填充颜色设置为白色。
    • color = "gray":边界颜色设置为灰色。
    • alpha = 0.5:设置透明度为 50%。
    • size = 1:设置边界线宽度。
  2. theme(panel.grid = element_line(color = "gray70"), legend.position = "none"):

    • 设置网格线的颜色为灰色。
    • 隐藏图例:legend.position = "none"。

ALL

# 加载必要的包
devtools::install_github("clauswilke/ggisoband")
library(ggplot2)
library(ggisoband)
 
 
# 示例数据:生成一个包含 PCA 坐标和分组标签的数据框
set.seed(123)
 
# 创建一个数据框,包含 PCA1 和 PCA2 坐标以及分组信息
data <- data.frame(
	PC1 = c(rnorm(100, mean = -50, sd = 15), rnorm(100, mean = 0, sd = 10), rnorm(100, mean = 50, sd = 15)),
	PC2 = c(rnorm(100, mean = 25, sd = 10), rnorm(100, mean = 0, sd = 20), rnorm(100, mean = -25, sd = 10)),
	Protein = factor(rep(c("Green", "Orange", "Red"), each = 100))  # 分组标签
)
 
# 绘制 PCA 散点图和多个椭圆
ggplot(data, aes(x = PC1, y = PC2, color = Protein)) +
	geom_density_bands(fill ="white" , color = "gray", alpha =0.5, size = 1) +
	scale_color_manual(values=c("#96cf55","#4221f7","#e5a954"))+
	scale_fill_viridis_c(guide = "legend") +
	geom_point(shape = 21, fill = "white",size=2, stroke=1.5) +
	theme(panel.grid = element_line(color = "gray70"),
		  legend.position = "none")