我一直试图用彩虹选项为R情节创建一个传奇,但我遇到了一些困难。
我的情节
plot(test$a,test$b, col = rainbow(length(test$s))[rank(test$s)])
根据测试$ s分配颜色。问题是测试$ s对于数据帧测试的许多值是相等的,所以如果我写的话
legend('topright',legend=test.sub$s,col=rainbow(length(test.sub$s))
[rank(test.sub$s)])
我在传说中获得了所有重复的测试$ s,但颜色是正确的。因为我不想要我写的重复项
legend('topright',legend=unique(test.sub$s),col=rainbow(length(test.sub$s))
[rank(test.sub$s])
然后所有的颜色都搞砸了!
提前致谢
答案 0 :(得分:0)
问题在于unique(test.sub$s)
与rainbow(length(test.sub$s))[rank(test.sub$s]
的长度不同。我的解决方案是:
col=rainbow(length(test.sub$s))[rank(test.sub$s)[!duplicated(test.sub$s)]]