You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用ggplot绘制PCR结果的双标图?含mtcars示例

用ggplot绘制PCR双标图(带响应变量气泡与变量向量)

问题解决思路

你提到的ggplot_pca()并非ggplot2或主流可视化包的内置函数,所以会出现未识别的错误。正确的做法是先用prcomp()完成PCA分析,再借助ggfortify包的autoplot()函数对接ggplot2,实现带气泡大小和变量向量的双标图。

完整代码示例(基于mtcars数据集)

# 加载所需包
library(ggplot2)
library(ggfortify)

# 提取PCA输入变量(cyl、hp、wt、qsec),mpg作为响应变量
pca_vars <- mtcars[, c("cyl", "hp", "wt", "qsec")]
# 执行PCA分析(标准化数据,避免变量尺度影响)
pca_out <- prcomp(pca_vars, scale. = TRUE)

# 绘制双标图
autoplot(pca_out,
         data = mtcars,
         colour = "darkblue",  # 气泡基础颜色
         size = mtcars$mpg,    # 气泡大小绑定响应变量mpg
         loadings = TRUE,      # 显示变量向量
         loadings.colour = "darkred", # 向量颜色
         loadings.label = TRUE,       # 显示变量名称标签
         loadings.label.size = 4,     # 标签字号
         xlab = "主成分1 (PC1)",
         ylab = "主成分2 (PC2)") +
  theme_bw() +
  labs(size = "mpg(响应变量)") + # 图例标题
  theme(legend.position = "bottom")

关键参数说明

  • prcomp(scale. = TRUE):PCA对变量尺度敏感,必须标准化输入变量,保证分析结果可靠
  • size = mtcars$mpg:直接将响应变量mpg的数值映射为气泡大小,直观展示响应变量在PCA空间的分布
  • loadings = TRUE系列参数:开启变量向量的显示,通过向量方向和长度,能直观观察cyl、hp、wt、qsec这几个输入变量与PCA轴的相关性,进而关联到响应变量mpg的分布规律

内容的提问来源于stack exchange,提问作者Joshua Smith

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.15 14:25:31