r 中绘图上的线条有时不绘制
lines on plot in r sometimes don't draw
我有以下代码来证明有时绘图上的 r 中的线不绘制。我找不到模式,也找不到阻止这种情况的问题,我什至颠倒了坐标,正如我在第 5 行和第 6 行尝试中看到的那样,在绘图范围内尝试等,我这辈子都无法理解这个
如有任何建议,我们将不胜感激。
myColors=c("red","green","blue","orange","pink","purple")
df<-setNames(data.frame(matrix(ncol = 3, nrow = 0)), c("Person","yearsExp", "yearsStudy"))
df[nrow(df) + 1,] = c(1,0,0)
df[nrow(df) + 1,] = c(2,0,3)
df[nrow(df) + 1,] = c(3,3,0)
df[nrow(df) + 1,] = c(4,3,3)
plot(df$yearsExp,df$yearsStudy,xlab=xlab,ylab=ylab,main=title,pch=pchvector,col=colvector,type="n",xlim=c(0,3),ylim=c(0,3))
text(df$yearsExp,df$yearsStudy,labels=df$Person)
# will draw
lines(c(1.9,1.9), c(2.0,2.4), pch=16, col=myColors[3],type="l")
lines(c(1.3,1.2), c(1.8,1.1), pch=16, col=myColors[2],type="l")
lines(c(1.7,1.1), c(1.3,1.9), pch=16, col=myColors[1],type="l")
# wont draw
lines(c(0.0,0.0), c(3.0,3.0), pch=16, col=myColors[6],type="l")
lines(c(0.1,0.1), c(1.3,1.3), pch=16, col=myColors[5],type="l")
lines(c(1.3,1.3),c(0.1,0.1), pch=16, col=myColors[4],type="l")
我认为您误解了 lines
的 x
和 y
输入。
lines(c(0.0, 0.0), c(3.0, 3.0))
画一条从(0, 3)
到(0, 3)
的线,这是一个单点。
我猜你的意思是
lines(c(0, 3), c(0, 3))
在点 (0, 0)
和 (3, 3)
之间画一条直线。
例如:
plot(df$yearsExp,df$yearsStudy,type="n",xlim=c(-1,4),ylim=c(-1,4))
text(df$yearsExp,df$yearsStudy,labels=df$Person)
lines(c(0, 3), c(0, 3))
我有以下代码来证明有时绘图上的 r 中的线不绘制。我找不到模式,也找不到阻止这种情况的问题,我什至颠倒了坐标,正如我在第 5 行和第 6 行尝试中看到的那样,在绘图范围内尝试等,我这辈子都无法理解这个
如有任何建议,我们将不胜感激。
myColors=c("red","green","blue","orange","pink","purple")
df<-setNames(data.frame(matrix(ncol = 3, nrow = 0)), c("Person","yearsExp", "yearsStudy"))
df[nrow(df) + 1,] = c(1,0,0)
df[nrow(df) + 1,] = c(2,0,3)
df[nrow(df) + 1,] = c(3,3,0)
df[nrow(df) + 1,] = c(4,3,3)
plot(df$yearsExp,df$yearsStudy,xlab=xlab,ylab=ylab,main=title,pch=pchvector,col=colvector,type="n",xlim=c(0,3),ylim=c(0,3))
text(df$yearsExp,df$yearsStudy,labels=df$Person)
# will draw
lines(c(1.9,1.9), c(2.0,2.4), pch=16, col=myColors[3],type="l")
lines(c(1.3,1.2), c(1.8,1.1), pch=16, col=myColors[2],type="l")
lines(c(1.7,1.1), c(1.3,1.9), pch=16, col=myColors[1],type="l")
# wont draw
lines(c(0.0,0.0), c(3.0,3.0), pch=16, col=myColors[6],type="l")
lines(c(0.1,0.1), c(1.3,1.3), pch=16, col=myColors[5],type="l")
lines(c(1.3,1.3),c(0.1,0.1), pch=16, col=myColors[4],type="l")
我认为您误解了 lines
的 x
和 y
输入。
lines(c(0.0, 0.0), c(3.0, 3.0))
画一条从(0, 3)
到(0, 3)
的线,这是一个单点。
我猜你的意思是
lines(c(0, 3), c(0, 3))
在点 (0, 0)
和 (3, 3)
之间画一条直线。
例如:
plot(df$yearsExp,df$yearsStudy,type="n",xlim=c(-1,4),ylim=c(-1,4))
text(df$yearsExp,df$yearsStudy,labels=df$Person)
lines(c(0, 3), c(0, 3))