如何在ggplot绘制的PCA图中修改点的标记符号?
ggbiplot修改点符号样式操作方法
全局统一修改点样式
直接在ggbiplot()函数内添加point.shape参数即可修改所有点的统一形状,参数值对应R语言标准点形状编码:
- 1:空心圆
- 16:实心圆(默认值)
- 17:实心三角形
- 15:实心正方形
- 3:十字符号
- 4:叉号
- 21:带边框的可填充圆
示例代码:
biplot <- ggbiplot(pcobj = PCA, choices = c(1,2), scale = 1, groups = Fdata$Tissue, ellipse = TRUE, point.shape = 17) + geom_vline(xintercept = 0, linetype = 3) + geom_hline(yintercept = 0, linetype = 3)
按分组设置不同点形状
如果需要不同Tissue分组对应不同的点形状,需要先隐藏默认点图层,再新增自定义点图层做形状映射:
biplot <- ggbiplot(pcobj = PCA, choices = c(1,2), scale = 1, groups = Fdata$Tissue, ellipse = TRUE, point.size = 0) + # 隐藏默认点 # 新增点图层,将形状、颜色映射到分组变量 geom_point(aes(shape = groups, color = groups), size = 2) + # 自定义每个分组对应的形状,数值个数和你的分组数量保持一致即可 scale_shape_manual(values = c(16, 17, 15, 8)) + geom_vline(xintercept = 0, linetype = 3) + geom_hline(yintercept = 0, linetype = 3)
自定义点的附加样式
如果需要设置点的边框、透明度、填充色等样式,可以使用支持分开设置填充和边框的形状编码(21-25),示例如下:
biplot <- ggbiplot(pcobj = PCA, choices = c(1,2), scale = 1, groups = Fdata$Tissue, ellipse = TRUE, point.size = 0) + geom_point(aes(fill = groups), shape = 21, size = 3, color = "black", alpha = 0.8) + geom_vline(xintercept = 0, linetype = 3) + geom_hline(yintercept = 0, linetype = 3)
内容的提问来源于stack exchange,提问作者Sonam Tashi
相关产品推荐
相关产品推荐

