Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/r/69.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
R 在线图周围插入边框_R_Plot_Border_Polygon - Fatal编程技术网

R 在线图周围插入边框

R 在线图周围插入边框,r,plot,border,polygon,R,Plot,Border,Polygon,我正在通过plot函数绘制几种不同鱼类的领地。如何在绘图周围插入边框以突出显示此区域?我目前使用的功能是: plot(c.tri1.1FG$x.position,c.tri1.1FG$y.position,ylim=c(80,120),xlim=c(110,180),xlab="X position", ylab="Y position", main=expression(paste("Mapped territories of different ", italic("C. trifasc

我正在通过plot函数绘制几种不同鱼类的领地。如何在绘图周围插入边框以突出显示此区域?我目前使用的功能是:

  plot(c.tri1.1FG$x.position,c.tri1.1FG$y.position,ylim=c(80,120),xlim=c(110,180),xlab="X position", ylab="Y position", main=expression(paste("Mapped territories of different ", italic("C. trifascialis"), " individuals at the Far Gardens coral reef site")))
points(c.tri1.2FG$x.position,c.tri1.2FG$y.position)
points(c.tri1.3FG$x.position,c.tri1.3FG$y.position)
points(c.tri1.4FG$x.position,c.tri1.4FG$y.position)
points(c.tri1.4FG$x.position,c.tri1.5FG$y.position)


任何帮助都将不胜感激多边形
能满足您的需要吗?例如,这里我用透明填充绘制了两个正方形(但只是一个示例):

vecAx <- c(0,0.5,0.5,0)
vecAy <- c(0,0,0.5,0.5)
vecBx <- vecAx + 0.25
vecBy <- vecAy + 0.25

col2hex <- function(my.col, alpha = 0.3) {
    rgb(t(col2rgb(my.col)), maxColorValue = 255, alpha = alpha*255)
}

colA <- col2hex("red", alpha = 0.4)
colB <- col2hex("blue", alpha = 0.4)
## other in colors()                                                            

plot(NA, NA, xlim=c(0,1), ylim=c(0,1))
polygon(vecAx, vecAy, col = colA)
polygon(vecBx, vecBy, col = colB)

vecAx如果我理解正确,我认为您正在寻找凸面外壳
chull

x <- rnorm(100,0,.2)
y <- runif(100,0,2)
pts <- cbind(x,y)
ch <- chull(pts) #Convex hull
plot(pts, asp=1)

编辑:如何使此解决方案适应您的数据

plot(c.tri1.1FG$x.position,c.tri1.1FG$y.position,ylim=c(80,120),xlim=c(110,180),xlab="X position", ylab="Y position", main=expression(paste("Mapped territories of different ", italic("C. trifascialis"), " individuals at the Far Gardens coral reef site")))
points(c.tri1.2FG$x.position,c.tri1.2FG$y.position)
points(c.tri1.3FG$x.position,c.tri1.3FG$y.position)
points(c.tri1.4FG$x.position,c.tri1.4FG$y.position)
points(c.tri1.5FG$x.position,c.tri1.5FG$y.position)

x <- c(c.tri1.1FG$x.position,c.tri1.2FG$x.position,c.tri1.3FG$x.position, c.tri1.4FG$x.position, c.tri1.5FG$x.position)
y <- c(c.tri1.1FG$y.position,c.tri1.2FG$y.position,c.tri1.3FG$y.position, c.tri1.4FG$y.position, c.tri1.5FG$y.position)
pts <- cbind(x, y)
ch <- chull(pts)
polygon(pts[ch,])
plot(c.tri1.1FG$x.position,c.tri1.1FG$y.position,ylim=c(80120),xlim=c(110180),xlab=“x position”,ylab=“y position”,main=expression(粘贴(“不同的映射区域”,斜体(“c.trifascialis”),“远园珊瑚礁遗址的个体”))
点数(c.tri1.2FG$x位置,c.tri1.2FG$y位置)
点数(c.tri1.3FG$x位置,c.tri1.3FG$y位置)
点数(c.tri1.4FG$x位置,c.tri1.4FG$y位置)
积分(c.tri1.5FG$x位置,c.tri1.5FG$y位置)

我想这可能会回答你的问题:好主意,但是多边形在这个数据上工作得不太好。领土的路径交叉,因此造成了一点混乱。我需要更多的外部边界,这是辉煌的。非常感谢。是否可以在使用points()的一系列数据上使用此函数,该点的外部部分为“外壳”?绘图(1.1FG$x,1.1$y,xlab=“x position”,ylab=“y position”,ylim=c(80130),xlim=c(70250))点(1.2FG$x,1.2$y)点(1.3FG$y,1.3$y)您可能希望显示数据的样子(例如,通过在问题的数据集上粘贴
dput
的结果)如果你想得到一个更具针对性的答案,我已经更新了图表,突出显示了points()函数的添加。再次感谢您的帮助
plot(c.tri1.1FG$x.position,c.tri1.1FG$y.position,ylim=c(80,120),xlim=c(110,180),xlab="X position", ylab="Y position", main=expression(paste("Mapped territories of different ", italic("C. trifascialis"), " individuals at the Far Gardens coral reef site")))
points(c.tri1.2FG$x.position,c.tri1.2FG$y.position)
points(c.tri1.3FG$x.position,c.tri1.3FG$y.position)
points(c.tri1.4FG$x.position,c.tri1.4FG$y.position)
points(c.tri1.5FG$x.position,c.tri1.5FG$y.position)

x <- c(c.tri1.1FG$x.position,c.tri1.2FG$x.position,c.tri1.3FG$x.position, c.tri1.4FG$x.position, c.tri1.5FG$x.position)
y <- c(c.tri1.1FG$y.position,c.tri1.2FG$y.position,c.tri1.3FG$y.position, c.tri1.4FG$y.position, c.tri1.5FG$y.position)
pts <- cbind(x, y)
ch <- chull(pts)
polygon(pts[ch,])