Omicsmaster
点击蓝字 关注我们
深度定制 让研究突破预期
前面,在如何进行主成分分析并绘制PCA组合图?、DeepSeek+Rstudio进行主成分分析(PCA)?" data-itemshowtype="0" linktype="text" data-linktype="2">如何使用DeepSeek+Rstudio进行主成分分析(PCA)?、使用DeepSeek进行PCA、PLS-DA和OPLS-DA分析等文章为大家介绍了如何使用DeepSeek进行PCA,那么,如何使用DeepSeek绘制下图这般漂亮的PCA质心散点图?
接下来,继续以一份具体的数据为例,看下如何使用DeepSeek + Rstudio绘制漂亮的PCA质心散点图吧!
1.绘图数据的准备
数据的整理比较简单,如下图,PC1列对应横坐标,PC2列对应纵坐标,Diagnosis列对应分组颜色,然后另存为CSV格式,如下图。注意,这里的范例数据不具有现实意义,仅供绘图使用。
2.使用DeepSeek进行绘图
首先,打开DeepSeek上传范例数据。将示例数据文件直接复制粘贴到对话框中即可上传文件,当然也可点击“曲别针”上传附件。
尝试输入分析绘图指令:
基于附件文件中的数据,使用 ggolot2 包绘制质心散点图,PC1列对应横坐标,PC2列对应纵坐标,Diagnosis列对应分组颜色;配色方案为:#e26fffbb,#8e9cffbb,散点与质心(centroids)的连线颜色与分组颜色一致;要求代码步骤分明,避免函数嵌套
DeepSeek经过7秒的深度思考,很快给出了分析绘图代码。注意,我们可以仔细阅读一下DeepSeek的整个思考过程,可检查数据是否导入正确,同时也可以确保DeepSeek正确理解我们的意图。
具体的质心散点图绘图代码,如下图,代码块下方为简单的代码说明。
点击以上代码块右上角的“复制”按钮,将DeepSeek生成的R代码复制粘贴到Rstudio的脚本编辑器中运行,如下图,注意在读入本地数据前,将测试数据文件所在文件夹设置为“工作目录”。
3.代码测试与分析绘图
逐行运行代码,验证分析代码是否正确,初始得到的绘图效果如下。
当然我们也可尝试将theme_minimal() 替换为theme_bw(),通过调整theme() 函数的panel.grid = element_blank() 参数,隐藏掉网格线,并适当调整散点大小和质心散点的描边颜色,绘图效果如下:
同样,我们也可以尝试更改配色方案,试试其他的样式,如下图。
最终得到的结果如下图:
DeepSeek给出的代码如下:
# 加载必要的包
library(ggplot2)
library(dplyr)
# 1. 读取数据
data <- read.csv("PCA_data.csv", header = TRUE, stringsAsFactors = TRUE)
# 2. 计算每个组的质心(centroids)
centroids <- data %>%
group_by(Diagnosis) %>%
summarise(PC1_mean = mean(PC1),
PC2_mean = mean(PC2))
# 3. 将质心数据合并回原数据集
data_with_centroids <- merge(data, centroids, by = "Diagnosis")
# 4. 定义颜色映射
colors <- c("Malignant" = "#e26fffbb",
"Benign" = "#8e9cffbb")
colors <- c("Malignant" = "#FF9999",
"Benign" = "#99CC00")
# 5. 创建基础散点图
p <- ggplot(data_with_centroids, aes(x = PC1, y = PC2))
# 6. 添加散点
p <- p + geom_point(aes(color = Diagnosis), shape = 19, size = 2.5,alpha = 0.8)
# 7. 添加散点到质心的连线
p <- p + geom_segment(aes(x = PC1, y = PC2,
xend = PC1_mean, yend = PC2_mean,
color = Diagnosis),linewidth = 1,
alpha = 0.4)
# 8. 添加质心点
p <- p + geom_point(data = centroids,
aes(x = PC1_mean, y = PC2_mean, fill = Diagnosis),
shape = 21, size = 2, color = "white", stroke = 0.5)
# 9. 设置颜色
p <- p + scale_color_manual(values = colors) +
scale_fill_manual(values = colors)
# 10. 添加标题和主题
p <- p + labs(title = "PCA Scatter Plot with Centroids",
x = "PC1",
y = "PC2") +
theme_minimal() +
theme(legend.position = "right")
# 修改主题
p <- p + labs(title = "PCA Scatter Plot with Centroids",
x = "PC1",
y = "PC2") +
theme_bw() +
theme(panel.grid = element_blank(),
legend.position = "right")
# 11. 显示图形
print(p)
# 可选:保存图形
# ggsave("pca_centroids_plot.png", p, width = 10, height = 8, dpi = 300)
好啦,本次的质心散点图绘制教程就分享到这里啦!
奥智团队始终坚守 “让每一分科研投入都物超所值” 的核心服务理念,从项目初期需求沟通到实验执行、数据分析,再到最终文章撰写与投稿,全程提供无障碍对接。针对不同领域、不同阶段的科研探索,奥智生物提供完善的定制化组学科研服务体系,涵盖单细胞组学、空间组学、转录组学、微生物组学、蛋白代谢组学等研究方向。欢迎有项目意向的老师联系我们,奥智生物将为您提供深度定制化的解决方案。
长按识别下方二维码咨询:
*未经许可,不得以任何方式复制或抄袭本篇文章之部分或全部内容。版权所有,侵权必究。
Omicsmaster
让每一分科研投入
都物超所值

