0

csr在使用包中的函数为美国大陆生成点模式时splancs,我发现在密歇根湖和伊利湖的小部分生成了一些点。下面是一个例子。

# Load packages
library(maps)
library(ggplot2)
library(splancs)

# Obtain coordinates of US polygon
usa <- map_data("usa")
country <- usa[c(1,2)]
colnames(country) <- c("x", "y")
country <- as.points(country)

# Generate points under complete spatial randomness
random <- csr(country, 30000)
random <- data.frame(random)

# Obtain coordinates of state outlines
state <- map_data("state")

# Plot the points on a map of the US
p <- ggplot(state, aes(x = long, y = lat)) +
geom_path(color = "black", aes(group = group)) +
geom_point(data = random, size = 0.7, aes(x = xc, y = yc), color = "gray") +
theme_bw()
p

上面的代码生成了一张地图,上面清楚地标有密歇根湖和伊利湖的一些点。有什么办法可以防止这种情况发生吗?

4

1 回答 1

0

Splancs 的csr功能仅适用于简单的单环多边形。为了确切地看到你喂它的东西,使用polymap

polymap(country)

在此处输入图像描述

哎呀。你的国家多边形有一些奇怪的地方。获得更好的多边形。

于 2013-08-30T16:58:57.997 回答