R.为数据框中的行范围指定颜色,生成PCA点图

R.为数据框中的行范围指定颜色,生成PCA点图,r,plot,colors,pca,R,Plot,Colors,Pca,我有这样一个数据帧df1(实际上它有数千行): 使用R,我想绘制PC1和PC2,如: plot(df1[,2], df1[,3]) 但是我想根据行号给绘图点赋予不同的颜色。例如,第1-2行为绿色,第3-4行为红色,第5-6行为灰色。我会在下面的链接中得到这样的图像: 一定有一个非常简单的方法,但我找不到。非常感谢。在base R中,您可以添加一列(或创建一个向量),其中包含人口组的因子变量,然后映射到颜色。使用您的示例数据: df1$Grp <- factor(c("A", "A",

我有这样一个数据帧df1(实际上它有数千行):

使用R,我想绘制PC1和PC2,如:

plot(df1[,2], df1[,3])
但是我想根据行号给绘图点赋予不同的颜色。例如,第1-2行为绿色,第3-4行为红色,第5-6行为灰色。我会在下面的链接中得到这样的图像:


一定有一个非常简单的方法,但我找不到。非常感谢。

在base R中,您可以添加一列(或创建一个向量),其中包含人口组的因子变量,然后映射到颜色。使用您的示例数据:

df1$Grp <- factor(c("A", "A", "A", "B", "B", "B"))

plot(df1$PC1, df1$PC2, col = df1$Grp, pch = 16)

我猜行号在这里并不重要,而是对应于某个变量组?在这种情况下,您可能需要添加一列,其中包含一个可以映射到颜色的变量。你能澄清这一点吗?@neilfws评论:如果你有数千行,你希望绘图有“数千/2”的颜色吗?是的@neilfws,这就是我想要的@PavoDive,行的范围是不同的人群。例如,pop1:第1-50行、pop2:第50-344行、pop3:第345-766行等。每个人口将有1个color@Lucas你在哪里有地图?请阅读您的问题并帮助我找到第1-50行属于pop1。如果您找不到,我恳请您提供。这是唯一能得到帮助的方法。Hello@neilfws,我能问一下hoy,在你的例子中,我能用底色R为“A”和“B”指定特定的颜色吗?许多人都在
?调色板上感谢你。
df1$Grp <- factor(c("A", "A", "A", "B", "B", "B"))

plot(df1$PC1, df1$PC2, col = df1$Grp, pch = 16)
library(ggplot2)
ggplot(df1, aes(PC1, PC2)) +
geom_point(aes(color = Grp)) +
theme_bw()