R中比例大小的圆圈

时间:2013-08-27 12:04:36

标签: r graphics

我想制作一个我认为R中非常简单的图表 - 它将显示属于两个类别之一的基因数量。

圆圈区域必须相互相对,并显示我的两个类别中的计数数量之间的巨大差异。一个类别是15000,另一个类别是15.因此,一个圆圈的面积应该是另一个圆圈的1000倍。是否有一个简单的R脚本可用于执行此操作? (绘制两个圆圈,其中一个圆圈的面积比另一个圆圈小X倍)

2 个答案:

答案 0 :(得分:2)

您可以使用plotrix包和draw.circle功能绘制圆圈。所以要回答你的问题,我们只需要计算每个圆的半径。为了进行比较,使第一个圆圈具有单位面积更容易。所以,

## Calculate radius for given area
get_radius = function(area = 1) sqrt(area/pi)

##Load package and draw blank graph
library(plotrix)
plot(-10:10,seq(-10,10,length=21),type="n",xlab="",ylab="")

## Unit area
draw.circle(0, 0, get_radius())

## 10 times larger
draw.circle(0, 0, get_radius(10))

答案 1 :(得分:0)

this post所示,您可以使用shape包,并使用函数plotcircle,您可以在其中选择半径。例如:

require("shape")
emptyplot(c(0, 1))
plotcircle(mid = c(0.2, 0.5), r = 0.1)
plotcircle(mid = c(0.6, 0.5), r = 0.01)

enter image description here