如何使用spatstat中的Lest()函数绘制Ripley的L

时间:2019-06-12 06:13:28

标签: r spatstat

我有一个csv文件,该文件中包含点数。数据包括经度,纬度和日期。我根据季节(春季,夏季,秋季和冬季)对数据进行了分类。我需要计算每个季节的Ripley的L。我在R中使用了Lest()包中的spatstat。我可以使用此函数绘制Ripley的L。但是每个图(季节)的x轴(距离)的范围是不同的。 如何在相同的范围(距离)内绘制所有四个图(季节)?

sa  <- readOGR(".", "boundary")  # Don't add the .shp extension

W   <- as(sa, "owin")

Summer.ppp <- as(Sum_UTM, "ppp")

Autumn.ppp <- as(Autumn_UTM, "ppp")

Winter.ppp <- as(Winter_UTM, "ppp")

Spring.ppp <- as(Spring_UTM, "ppp")


Summer <- Lest(Summer.ppp, correction="Ripley")
plot(Summer , xlab="distance (m)", ylab="K(d)", cex.lab= 2, cex.axis=2)
plot(Summer, . -r ~ r, ylab=expression(hat("L")), xlab="distance (m)",cex.lab= 2, cex.axis=2)


Autumn <- Lest(Autumn.ppp, correction="Ripley")
plot(Autumn, xlab="distance (m)", ylab="K(d)", cex.lab= 2, cex.axis=2)
plot(Autumn, . -r ~ r, ylab=expression(hat("L")), xlab="distance (m)",cex.lab= 2, cex.axis=2)

Winter <- Lest(Winter.ppp, correction="Ripley")
plot(Winter, xlab="distance (m)", ylab="K(d)", cex.lab= 2, cex.axis=2)
plot(Winter, . -r ~ r, ylab=expression(hat("L")), xlab="distance (m)",cex.lab= 2, cex.axis=2)

Spring <- Lest(Spring.ppp, correction="Ripley")
plot(Spring , xlab="distance (m)", ylab="K(d)", cex.lab= 2, cex.axis=2)
plot(Spring, . -r ~ r, ylab=expression(hat("L")), xlab="distance (m)",cex.lab= 2, cex.axis=2)

1 个答案:

答案 0 :(得分:0)

您写道您具有经度和纬度,但是同时您的数据集使用“ UTM”命名,这表示您具有平面x,y坐标。哪有在spatstat中,您只能使用平面坐标。您无需声明正在使用的软件包。上面的转换为as的{​​{1}}函数可能来自ppp?在那种情况下,我认为maptools的窗口只是设置为坐标的边界框。您有一个名为ppp的对象,您可能希望将其用作W的窗口。您可以执行以下操作:

ppp

如注释中所述,您可以在对Window(Spring.ppp) <- W 的调用中简单指定xlim = c(lower,upper),其中plotlower是您希望对x轴。