多边形图未显示在x和y坐标中传递

时间:2016-05-09 01:24:22

标签: r

我想在你看到的那条线下为这里的三角形区域着色所以我传递了x坐标和y坐标的矢量但该区域没有着色。

你能得到阴影线以下的区域吗?区域的底部是x轴,顶部是线。谢谢。

以下是代码:

  x = c(0,1)
   y = c(1,2)
   x
   y
   plot(x,y)
   polygon(x, y, col="red")

1 个答案:

答案 0 :(得分:0)

三角形有三个点。您的xy向量只描述了两点。

polygon()函数可以绘制任何三角形或更高阶的多边形,但您必须通过在xy参数中传递其所有顶点来完全定义多边形。 / p>

我们可以通过补充xy向量以及在将这些向量传递给polygon()函数时填充缺失顶点的附加元素来解决问题。

既然您已经表明要在行下 区域,那么我就是这样做的:

  • 首先,我将解决额外的y坐标,因为它更容易。我们只需使用已知y坐标的最小值,我们就可以使用min()
  • 对于x,我们需要使用更高 y坐标复制与顶点对应的x坐标,我们可以使用which.max()y上,然后订阅x
x <- c(0,1);
y <- c(1,2);
plot(x,y);
polygon(c(x,x[which.max(y)]),c(y,min(y)),col='red');

plot