为NBA篮球场绘制3pt弧线

时间:2015-03-24 01:22:17

标签: r plotrix

我在R中使用plotrix来绘制NBA球场特征来绘制篮球投篮。我很难按照我想要的方式获得3pt线的弧线。使用draw.arc和draw.circle允许弧的顶部浮动。弧顶应始终为29英尺。 draw.ellipse似乎解决了这个问题。但是,当我对椭圆进行分割时,它会留下一条"十字线"通过法院描述中间我想删除。但是,我必须对椭圆进行分段,否则它将延伸到需要的位置。有什么想法吗?

使用的代码:

setwd("~")
library("plotrix", lib.loc="~/R/win-library/3.1")
library("RColorBrewer", lib.loc="~/R/win-library/3.1")
korver <- read.csv("Korver_XY_Test.csv", header = TRUE)
x <- (korver$x)
y <- (korver$y)
plot(x,y, cex=.7, col=brewer.pal(3, "Greens"))
#Draw 3pt Line
segments(3,0,3,14.19777, lwd=3)
segments(47,0,47,14.19777, lwd=3)
draw.ellipse(x=25, y=5.25, deg=TRUE, angle=0, arc.only= TRUE, segment=rbind(c(22,0),c(158,360)), a=23.75, b=23.75,  border=1, nv=200, lwd=3)
#Draw Half Court Line
segments(0,47,50,47, lwd=4)
#Draw Court Boundaries
abline(v=0, lwd=5)
abline(v=50, lwd=5)
abline(h=94, lwd=5)
abline(h=0, lwd =5)
#draw lane
segments(17,0,17,19, lwd=3)
segments(33,0,33,19, lwd=3)
segments(19,0,19,19, lwd=3)
segments(31,0,31,19, lwd=3)
segments(17,19,33,19, lwd=3)
draw.circle(25,19,6,100,lwd=3)
#draw hoop
draw.circle(25,5.25, 0.75, 200, lwd=2)
#draw backboard
segments(22,4,28,4, lwd=4)

0 个答案:

没有答案