如何在plot()中为组显示不同的颜色?

时间:2019-02-18 14:43:42

标签: sorting plot colors subset

我想为没有ggplot2或点阵的不同组以不同的颜色绘制数据。情节中的子集不能与因子作为字符一起工作是否存在某种问题?

数据集中有两个变量和一个因子。变量是数字,并且因子(例如苹果,梨)另存为字符。当我尝试按因子绘制子集时,没有要看的要点。没有子集。 如果我将“因子”转换为数字而不是单词(苹果= 1,梨= 2),它将为点着色不同。但是后来我的传奇故事失败了。

A<- data$Variable1
B<- data$Variable2
C<- data$Factor

plot(B,A, pch=16, col=c("green3","black")[C], cex=.5, lwd=2, xaxt="n", yaxt="n", ann=FALSE)
legend(x="topleft",legend=levels(C), pch=16, col=c("green3","black"))

该图应具有根据因子选择的不同颜色的点和说明颜色的图例。

1 个答案:

答案 0 :(得分:1)

我自己找到了答案,这是factor()。 所以正确的代码看起来像这样

plot(B,A, pch=16, col=c("green3","black")[factor(C)], cex=.5, lwd=2, xaxt="n", yaxt="n", ann=FALSE)
legend(x="topleft",legend=levels(factor(C)), pch=16, col=c("green3","black"))