大数跨境
0
0

如何使用DeepSeek绘制漂亮的PCA散点图?

如何使用DeepSeek绘制漂亮的PCA散点图? 奥智生物
2025-12-13
0
导读:轻轻松松,美图get!
line-height: 1.75;visibility: visible;" data-pm-slice="0 0 []" mpa-from-tpl="t">

Omicsmaster

点击蓝字 关注我们









url(from=appmsg");background-size: 100% 100% !important;background-position: 50% 50% !important;">

深度定制 让研究突破预期


前面,在如何进行主成分分析并绘制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.代码测试与分析绘图

fba338b.png" class="rich_pages wxw-img" data-ratio="0.7" data-w="20" style="display: block;" src="https://cdn.10100.com/content/20251217/cc2a6676-b4cb-4036-9d7a-ec304fba338b.png">

逐行运行代码,验证分析代码是否正确,初始得到的绘图效果如下。



当然我们也可尝试将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



让每一分科研投入

都物超所值

#PCA图#散点图#R语言#生信分析#科研绘图#DeepSeek

【声明】内容源于网络
0
0
奥智生物
广州奥智生物科技有限公司官方账号,旨在分享前沿组学技术、实用生信技巧、数据挖掘思路,一起在科研路上打怪升级啊!
内容 68
粉丝 0
奥智生物 广州奥智生物科技有限公司官方账号,旨在分享前沿组学技术、实用生信技巧、数据挖掘思路,一起在科研路上打怪升级啊!
总阅读18
粉丝0
内容68