审稿人:只关注PCA的计算,不关注绘图的审美,太糟糕了!

文摘   2024-07-25 09:00   荷兰  
主成分分析(PCA)是每一个做数据分析的人都需要的关键步骤,很多时候大家最直接放在论文里的就是最后生成的PCA loadling图或者是Biplot图,我的经历是:从网上找到的代码,在计算部分还可以用,毕竟只是计算一个PCA,并不复杂。但在绘图阶段,往往字体和图片配色不能让我满意,因此我特意总结了我最喜欢的字体和配色方案,应付大部分的论文是不成问题了。数据科学的绘图讲究一个审美,优秀的配图往往可以让审稿人眼前一亮,发表的机会不就大大大大大增强了吗?
PCA的简单介绍
主成分分析(Principal Component Analysis,PCA)是一种统计技术,用于简化数据集,同时保留尽可能多的原始信息。通过将原始变量转换为一组线性不相关的主成分,PCA能够降低数据维度,帮助识别数据中的潜在结构。PCA在科研论文中的应用非常广泛,尤其是在处理高维数据时。
科研论文的常规套路
科研论文中对PCA数据分析的要求通常包括:
  1. 数据标准化:确保不同量纲的数据具有可比性。
  2. 解释方差:关注主成分解释的方差比例,以确定选取的主成分数量。
  3. 可视化:通过散点图、双图(biplot)等形式直观展示主成分和变量的关系。
  4. 结果解释:结合研究背景,对主成分的含义进行详细解释。
下面我们将使用R语言中的FactoMineRfactoextra包进行PCA的计算和绘图。我们将对绘图部分进行详细定制,包括字体、配色、标题加粗、标题居中、图例标题加粗、图例字体个性化设置,确保图形大小适合SCI论文的发表要求。

步骤1:安装和加载必要的R包

## install.packages("FactoMineR")
## install.packages("factoextra")

library(FactoMineR)
library(factoextra)

步骤2:进行PCA计算

# 以内置数据集iris为例
data(iris)
# 移除分类变量,只保留数值变量进行PCA
iris_data <- iris[, -5]
# 进行PCA计算
pca_result <- PCA(iris_data, graph = FALSE)

步骤3:PCA绘图

# 自定义绘图
p1 <- fviz_pca_biplot(pca_result,
geom.ind = "point", # 点状图
col.ind = iris$Species, # 用物种区分颜色
palette = c("#00AFBB", "#E7B800", "#FC4E07"), # 自定义配色
addEllipses = TRUE, # 添加椭圆
label = "var", # 变量标签
col.var = "black", # 变量颜色
repel = TRUE, # 避免标签重叠
title = "PCA Biplot of Iris Dataset",
title.size = 15, # 标题字体大小
title.face = "bold", # 标题加粗
title.hjust = 0.5 # 标题居中
) +
theme(plot.title = element_text(hjust = 0.5, size = 15, face = "bold"),
legend.title = element_text(size = 12, face = "bold"), # 图例标题加粗
legend.text = element_text(size = 10, face = "italic") # 图例字体个性化设置
)

p1

步骤4:调整图形大小以适合SCI论文

在R中生成图形时,可以使用ggsave函数来设置图形的尺寸,使其适合SCI的大小和分表率的要求。

# 保存图形
ggsave("PCA_Biplot_Iris.png", p1, width = 8.27, height = 11.69, units = "in", dpi = 300)

这段代码展示了如何使用FactoMineRfactoextra包进行PCA分析,并对绘图进行详细定制。生成的PCA图形不仅具有良好的视觉效果,还可以直接用于科研论文的展示,相信可以帮助到对PCA出图有需要的小伙伴!

另外:谁有更好的颜色code,欢迎评论区留言!

感谢关注,你的支持是我不懈的动力!

科研代码
专注R和Python的数据分析。
 最新文章