我对spatstat中的图有3个相关问题:
我在书中找到了一些例子 - 空间点模式 - 但它们表明使用图像或核密度来控制一个段的宽度。我使用linfun进行不均匀的处理,我没有找到一种方法来着色或控制我的绘图中的线宽或标记图。
小方块的一个例子:
library(spatstat)
v<-ppp(x=c(50,100,100,50), y=c(50,50,100,100),c(0,150), c(0,150)) #vertices
edg<-matrix(c(1,2,3,4,2,3,4,1), ncol=2) #edges
L<-linnet(v, edges=edg) #create a linnet
z<-c(11,22,33,44) # create covariate
Zfun <- linfun(function(x,y,seg,tp) { seg }, L)
plot(Zfun)
# I added some marks
marks(x) <- runif(npoints(x), 3, 4)
谢谢
答案 0 :(得分:1)
您可以通过创建类linfun
的合适函数来完成所有操作。
例如,请访问网络L <- simplenet
。
问题1:
f <- linfun(function(x,y,seg,tp) { seg }, L)
plot(f)
函数f
返回包含指定点的段的段ID号。此号码从1
到nsegments(L)
。
对于问题2,假设您有一个向量Z
给出网络每个段的协变量值(假设协变量值在每个段上是常量)。我将以Z <- runif(nsegments(L))
为例。然后
g <- linfun(function(x,y,seg,tp) { Z[seg] }, L)
plot(g)
问题3,
plot(g, style="width")
请参阅help(plot.linfun)
和help(plot.linim)
(基本上plot.linfun
将函数转换为像素图片,然后调用plot.linim
)。