【问题标题】:error in function -not GIS - not 2D spatial, which arguments of spatstat函数错误 - 不是 GIS - 不是 2D 空间,spatstat 的哪些参数
【发布时间】:2016-10-31 08:53:37
【问题描述】:

我在 R 中使用 spatstat 在线性网络上生成点。我已经成功地在道路网络上生成了一个泊松分布式泊松过程。

现在,当我想使用“nsim”来实现多个随机过程时,我收到一个错误(使用此数据)http://biogeo.ucdavis.edu/data/diva/rds/NLD_rds.zip

roads<-readShapeSpatial("NL_rd.shp")
spatstat.roads<-as.psp(roads)
final_roads<-as.linnet(spatstat.roads)

abc<-rpoislpp(0.02/5000,final_roads, nsim=2)
plot(abc)

当我使用那个 nsim 时,我收到如下错误

Error in (function (..., check = TRUE, promote = TRUE, demote = FALSE)  : 
  Some arguments of solist() are not 2D spatial objects

虽然它适用于一种实现,但我想绘制两种实现以直观地比较随机性。所以我不明白如何实现一个而不是两个,以及非二维空间对象的错误讨论。这对我来说有点神秘。

能否请您澄清一下这个错误以及如何解决它。

谢谢。

【问题讨论】:

    标签: spatstat


    【解决方案1】:

    这是一个错误。

    不久将在the development version of spatstat1.47-0.018 及更高版本中修复。

    同时你可以通过replicate得到想要的结果,例如

    abc <- replicate(2, rpoislpp(0.02/5000,final_roads), simplify=FALSE)
    

    感谢您提请我们注意。

    【讨论】:

    • 谢谢。我会尝试使用replicate 并报告。
    • 抱歉,复制对我不起作用。它给出了另一个错误。 Error in xy.coords(x, y, xlabel, ylabel, log) : 'x' is a list, but does not have components 'x' and 'y' 当我尝试 plot(replicate(2, rpoislpp(0.02/5000,final_roads), simplify=FALSE)) 绘制类似于 1 行 2 列矩阵图时,类似于 nsim
    • 我可以单独绘制它们,plot(abc[[1]]) 和 plot(abc[[2]])。我是否错过了将它们制作为单个组合矩阵图的东西?我应该继续绘制为常规 R 矩阵图吗?
    • replicate 命令只返回一个列表,在这种情况下,其条目是lpp 对象。要将列表的每个条目绘制为多面板图中的单独面板,您可以使用as.solist 将列表转换为solist,然后绘制此对象。 plot(as.solist(abc)) 其中abcreplicate 的结果。不管怎样,现在在 GitHub 上的 spatstat 开发版本中已经修复了这个 bug,所以你可以回到原来的命令。
    • 感谢您的提醒。
    猜你喜欢
    • 2017-04-24
    • 1970-01-01
    • 2017-10-15
    • 1970-01-01
    • 2013-06-21
    • 2019-12-03
    • 2015-11-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多