1
grid.curve函数中是否存在缺陷?对于我的生活,我无法让它画出一个圆弧。有没有解决这个问题?在R中绘制一个圆的圆弧
library(grid)
plot.new()
#main viewport
vp=viewport(x=0.5,y=0.5,width=1, height=1)
pushViewport(vp)
#Circle
grid.circle(x=0.5, y=0.5, r=0.4,default.units="npc")
#Coordinates for gene
glength=100000
start=0
startrad=(start/glength)*2*pi
end=20000
endrad=(end/glength)*2*pi
length=end-start
xco1=0.5+0.4*cos(startrad)
yco1=0.5+0.4*sin(startrad)
xco2=0.5+0.4*cos(endrad)
yco2=0.5+0.4*sin(endrad)
grid.curve(xco1,yco1,xco2,yco2,curvature=arcCurvature((length/glength)*360),ncp=10,gp=gpar(col="blue",lwd=10,lineend=2))
究竟是什么问题?使用您的发布代码,我可以绘制一个圆圈和一个圆弧。当然,绘制的圆弧不是绘制的圆,而是与给予'grid.curve'的参数有关,特别是'curvature'参数。 [圈和Arc](https://www.dropbox.com/s/qbp8sezpf2p4hf6/arcofcircle.jpeg) – duHaas
蓝色弧线,是不完全的圆弧。改变开始和结束参数可以创造出类似弧形的东西。使用arcCurvature函数设置曲率参数应该创建一个精确覆盖圆的完美弧。 – user3246796
我认为你需要'平方= FALSE'在最终'grid.curve'打电话得到真正的弧线,我会仔细检查,以确保您的开始/结束点是正确的。 – hrbrmstr