r - 按组为 R PCoA 图的个体着色
问题描述
应该是一个简单的问题,但到目前为止我还没有找到确切的方法。
我有一个矩阵如下:
sample var1 var2 var3 etc.
1 5 7 3 1
2 0 1 6 8
3 7 6 8 9
4 5 3 2 4
我使用 Vegan 进行了 PCoA 并绘制了结果。现在我的问题是我想根据预定义的组为样本着色:
group sample
1 1
1 2
2 3
2 4
如何导入组,然后根据所属组绘制彩色点?它看起来很简单,但我一直在为此挠头。
谢谢!塞布
解决方案
您说您使用了纯素PCoA,我认为这意味着wcmdscale
功能。默认vegan::wcmdscale
只返回一个与标准相似的分数矩阵stats::cmdscale
,但如果您添加了一些特殊参数(例如),您将获得一个带有专用和方法eig = TRUE
的完整结果对象,您可以执行以下操作:
如果您有一个现代素食主义者(2.5.x),请执行以下操作也有效:
wcmdscale
plot
points
plot(<pcoa-result>, type="n") # no reproducible example: edit like needed
points(<pcoa-result>, col = group) # no reproducible example: group must be visible
library(magrittr)
plot(<full-pcoa-result>, type = "n") %>% points("sites", col = group)
推荐阅读
- jquery - Ajax get text file with no extension
- mysql - Two SELECT query on one table with different ORDER in MySQL
- mongodb - LoopBack4 MongoDB 自动增量自定义 ID
- sql - 如何修复此消息 8117,级别 16,状态 1,服务器 WIN-ILO9GLLB9J0,第 2 行操作数数据类型 varchar 对 avg 运算符无效
- laravel - LARAVEL 加载资源失败:服务器响应状态为 404(未找到)
- c# - 在富文本框中自动生成文本
- python - 为什么有这么多python版本在使用?
- java - 使用 Spring Data JPA 和 postgresql 将字符串转换为 @Query 中的时间戳
- android - 如何在gridview中添加图像?我从 API 获取网格数据,但我想将图像添加到该 gridView
- jenkins-pipeline - 根据脚本输出提前退出声明性管道