【发布时间】:2017-04-11 02:56:45
【问题描述】:
我试图在 xy.plots 的顶部显示一些变异函数模型拟合。 panel.plots 适用于除我想添加到相应 subplots 的行列表之外的所有内容。
require(gstat)
require(sp)
data(meuse)
names(meuse)
#make directional variograms
b<-variogram(log(zinc)~1, meuse, alpha = c(0, 45, 90, 135))
#split the variogram data by direction
a<-lapply(1:length(unique(b$dir.hor)),
function(i) subset(b, grepl(unique(b$dir.hor)[[i]], b$dir.hor)))
#get the model fit parameters for each directional variogram
a<-lapply(1:length(unique(b$dir.hor)),
function(i) fit.variogram(a[[i]], vgm(0.5,"Exp", 1200, 0.5)))
#generate model data for the directional variograms
a<-lapply(1:length(a), function(i)
variogramLine(a[[i]], maxdist=1500))
#plot
require(lattice)
plot(b, ylim=c(0,1.2), xlim=c(0,1500), cex=1.5,
panel = function(x, y, ...) {panel.xyplot(x, y, ...)
panel.abline(v=1000, lwd=1, lty=3, col=2)
panel.lines(a[[i]], lwd=2, lty=2, col=4)
})
绘图中的最后一个参数不起作用,因为它是一个 list(请参阅绘图显示上的错误),不确定应该如何使用 lattice绘制线条列表>。我们将不胜感激!
【问题讨论】:
-
正如@Hack-R 提到的,请提供一个工作示例。
meuse数据位于library(sp)FWIW。 -
@RomanLuštrik 完成