Spatstat,使用 which.marks 参数

Spatstat, using the which.marks argument

我有一个带有标记的点图案。它是使用 connected.ppp 函数创建的,也在 spatstat 包中。我只想绘制标记等于 2 的点。 我认为要做到这一点,需要使用 which.marks 参数,但输出仍然是一个包含所有标记的图。标记肯定在那里,因为当我设置 use.marks = FALSE 时,标记不再使用。

plot.ppp(testconn, use.marks = TRUE, which.marks = 1)

我已经包括了我的点模式对象以防这是问题所在

plot.ppp 中的参数 which.marks 用于当您拥有整个 data.frame 个标记的情况。例如。如果 marks 是一个 data.frame 列名 mark1mark2 你可以通过设置例如选择其中的哪一个用于绘图which.marks = "mark1".

要对点模式进行子集化,您可以使用 subset:

testconn1 <- subset(testconn, marks == "1", drop = TRUE)

由于你的标记是一个因素,你有一个多类型点模式,你可以使用 split:

testcon_list <- split(testconn)

然后第一种类型的点在 testconn_list[[1]]testconn_list[["1"]] 中(不太相关,因为你的标记名称只是 1、2、...,但名称如 "mark1" 等你可以使用 testconn_list[["mark1"]]testconn_list$mark1).