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

R语言fviz_pca_biplot双标图如何按两个变量分别映射颜色和形状

你需要的效果可以通过为fviz_pca_biplot补充shape.ind参数实现,完整可运行代码如下:

# 加载所需依赖包
library(dplyr)
library(factoextra)
library(ggplot2)

# 数据标准化、PCA建模
ds <- mtcars %>% scale()
PCA_analysis <- princomp(ds)

# 绘制双标图
fviz_pca_biplot(PCA_analysis,
                label = "all",
                habillage = as.factor(mtcars$gear), # 点颜色对应gear变量,转因子做分组
                shape.ind = as.factor(mtcars$am), # 点形状对应am变量,转因子做分组
                legend.title = list(color = "gear", shape = "am")) + # 自定义两个图例的标题
  # 可选:自定义分组对应的点形状,数字对应R内置点样式编号,可按需调整
  scale_shape_manual(values = c(16, 17))

核心参数说明:

  • shape.ind 是fviz_pca_biplot专门用来设置样本点形状分组的参数,传入分类变量即可实现按指定变量区分点形状
  • 两个分组变量都转成factor类型,避免被识别为连续变量生成不符合预期的渐变样式
  • 函数返回的结果是标准ggplot对象,你可以后续叠加其他ggplot语法自定义样式,比如调整配色、修改点大小、调整坐标轴等。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.26 05:06:07