【发布时间】:2021-10-16 01:05:54
【问题描述】:
我正在尝试为一个项目模拟一些数据,基本上我需要绘制一个不规则的椭圆形,然后在该形状内制作一堆随机点,我完全不知道如何这样做。
现在,我制作了一个样条形状,然后在其上绘制了一堆点。有没有办法找到重叠?或者更好的是,只在预制形状的范围内生成随机点?
(如果有更好的开始方式,请随意放弃我的代码 - 也许它需要某种空间对象?)
set.seed(2)
shape <- data.frame(
x = c(2, 3, 2, 3, 2, 1, 0, 1),
y = c(1, 3, 5, 7, 9, 7, 5, 3 )
)
scatter = data.frame(
x = rnorm(100, mean = 1.5, sd = .6),
y = rnorm(100, mean = 5, sd = 2)
)
ggplot(data = shape,
aes(x=x,y=y)) +
ggforce::geom_bspline_closed(fill = "transparent", color = "black") +
geom_point(color = "blue") +
coord_equal() +
geom_point(data = scatter, shape = "*", size=3)
【问题讨论】:
-
我认为您可以通过使用
runif创建您的xydata.frame 来将更多样本哄骗到您的椭圆within,并为每个样本设置最小值和最大值?runif。跨度>
标签: r random simulation spatial