r - 在 R 中绘制半圆

标签 r plot geometry

我正在尝试使用 R 绘制半圆。我的最终目标是绘制一个圆,中间按颜色划分。我发现的唯一方法是绘制两个不同颜色的半圆。
所以我创建了自己的函数:

upper.half.circle <- function(x,y,r,nsteps=100,...){  
  rs <- seq(0,pi,len=nsteps) 
  xc <- x+r*cos(rs) 
  yc <- y+r*sin(rs) 
  polygon(xc,yc,...) 
} 

lower.half.circle <- function(x,y,r,nsteps=100,...){ 
  rs <- seq(0,pi,len=nsteps) 
  xc <- x-r*cos(rs) 
  yc <- y-r*sin(rs) 
  polygon(xc,yc,...) 
} 

然而,出于某种原因,我的半圆最终更像是半椭圆。例如,尝试运行:
plot(1, type="n",axes=F,xlab="", ylab="",xlim=c(0,200),ylim=c(0,200))
upper.half.circle(15,170,10,nsteps=1000,col='red')

有谁知道我为什么遇到这个麻烦,或者知道有更好的方法来做我想做的事?
谢谢!

最佳答案

问题是默认的纵横比不是 1:1。

要解决此问题,请设置 asp=1plot :

fixed circle

灵感来自 this问答。您可以通过打开轴和 x/y 标签来嗅出这种情况。

关于r - 在 R 中绘制半圆,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31538534/

相关文章:

R将栅格转换为单个多边形

r - 如何在 R 中显示 base64 图像

c++ - 边界矩形的最小封闭?

javascript - 在 native react 中在圆周上渲染文本

r - 散点图回归线 lty 命令未被识别

r - 在 r 中调用后如何将 xlabel 和 ylabel 添加到基本图?

r - 根据图中图例向量的长度更改图例中文本的大小

python - Pandas 从相应的唯一 id 值绘制平均值

plot - 如何在matplotlib 3d中隐藏轴?

用于移动形状的 JavaFx 按钮事件处理程序