【发布时间】:2015-09-28 11:37:26
【问题描述】:
我有一个数据集,其中包含连续横断面的三种鱼类的累积计数,因此它包含 3 列(物种、计数、横断面);
例如
Species Count Transect
Cod 25 1
Cod 36 2
Cod 45 3
Haddock 12 1
Haddock 23 2
Haddock 34 3
等等…… 我可能有很多物种想要在一个地块中绘制,所以我尝试使用循环(我第一次尝试正确使用循环!!)来加快速度并完成以下操作
xrange <- range(Data$Transect)
ymax <- max(Data$Count)
plot(xrange,y=c(0,ymax+10), yaxs = "i", type="n", las=1, xlab="Transect Number", ylab="Total Number")
for (i in Data$Species){
species <- subset(Data, Species==i)
lines(species$Transect, species$Count, type="o",lwd=2,lty=1,pch=NA)}
这会生成一个图,其中数据集中的所有物种都有一条单独的线,但我希望这些线中的每一条都具有独特的颜色,并且正在努力做到这一点。
我尝试了以下方法,但它不起作用,所有线条的颜色仍然相同,我不确定下一步该尝试什么?
nspecies <- levels(Data$Species)
colors<- rainbow(nspecies)
for (i in Data$Species) {
species <- subset(Trial, Species==i)
lines(species$Haul, species$Catch, type="o",lwd=2,lty=1,pch=NA, col=colors[i])}
任何帮助将非常感谢!
【问题讨论】:
-
欢迎来到 Stack Overflow!看看ggplot2stackoverflow.com/questions/6364081/…