在 R 中使用 levelplot 设置 xlim 和 ylim 后如何保持绘图连续?

How to keep plot continous after setting xlim and ylim using levelplot in R?

我绘制了一个图表,我想为其指定 xlim 和 ylim 值!但是它不起作用。这是我正在使用的函数:

DensityPlotF <- function (xx, plotname)
{
        library(RColorBrewer)
        library(latticeExtra)
        library(lattice)
        lattice.options(default.theme = standard.theme(color = FALSE))
        cols <- colorRampPalette(brewer.pal(11, "RdBu"))
        ppi <- 300
        png(filename = plotname, width=6*ppi, height=6*ppi, res=ppi)
        print(levelplot(xx$rho ~ xx$r + xx$z, panel = panel.levelplot.points, col.regions = cols, xlab="R (Å)", ylab="z (Å)", xlim=c(0,10.0), ylim=c(-30,30)))
        dev.off()
}

cl2d <- read.table("cl_2d.dat", header=TRUE)
colnames(cl2d) <- c("r", "z", "rho")
DensityPlotF(cl2d, "cl2d.png")

.dat 文件如下所示:

#r z rho
6.500000e+00 -4.250000e+01 3.397767e-01
6.500000e+00 -4.200000e+01 3.246126e-01
6.500000e+00 -4.150000e+01 3.301116e-01
6.500000e+00 -4.100000e+01 3.289452e-01
6.500000e+00 -4.050000e+01 3.264456e-01

最后,设置xlim和xlim之前的图:

设置xlim和ylim后,情节看起来很奇怪。有没有一种简单的方法可以一起显示图中的列(即连续的)?

您想在水平图中移动“xlim=c(0,10.0), ylim=c(-30,30)”,即
print(levelplot(.... ylab="z (Å)", xlim=c(0,10.0), ylim=c(-30,30)))
ylab

之后删除大括号

PS: 点数不足无法评论