Как раскрасить код рассеивателя PCoA
Так что я новичок в этом. Мне нужно запустить PCoA на следующей матрице данных. Я могу проводить анализы с использованием программ ADE4, labdsv, Ginko, Aabel. Что меня беспокоит, так это как раскрасить метки на графике рассеяния. Моя матрица - это матрица присутствия / отсутствия в следующем порядке:
SpecieName Value1 Value2
A1 0 1
A2 1 1
A3 1 1
B1 0 0
B2 0 1
E1 1 0
E2 0 0
Я хочу представлять A1
, A2
, а также A3
в красном, B1
а также B2
в синем и все E
те в черном. Любая помощь будет оценена.
1 ответ
Решение
Просто передайте коэффициент, который обозначает эти группы, команде заговора:
data = read.table('data.txt', header=T)
data.pca = prcomp(data[,-1])
groups = factor(gsub('(.).', '\\1', data$SpecieName))
plot(data.pca$x, col=groups)
Кроме того, если вы хотите установить определенные цвета, вы всегда можете индексировать в пользовательский список одним и тем же способом:
cols = c('red', 'blue', 'black')[groups]
plot(data.pca$x, col=cols)