我想在平面图中从绘图区域中添加文本。在下面的示例中,我需要文本位于指定位置的某个位置。
library (raster)
library(rasterVis)
f <- system.file("external/test.grd", package="raster")
r <- raster(f)
levelplot(r)
我尝试了mtext函数,但没有成功。有什么建议吗?
mtext("text", side=3, line=0)
发布于 2015-09-18 13:56:55
tldr;
您可以使用较低级别的网格图形函数对图进行注释。在这种情况下,可以这样做:
library(grid)
seekViewport("plot_01.legend.top.vp")
grid.text("Hello", x=0, y=unit(1,"npc") + unit(0.4, "lines"), just=c("left", "bottom"),
gp=gpar(cex=1.6))
rasterVis和其他格子-based包使用网格图形系统,而不是mtext()
作为其一部分的基本图形系统。
这里,使用网格,我将如何在视图左上角上方0.4行的位置添加文本(一个技术网格术语),在其中打印该上边距图。
grid.ls()
返回的列表进行快速扫描,就会发现一个名为plot_01.legend.top.vp
的视图端口,它看起来是一个很有前途的候选人。如果您想检查它是否是正确的,您可以用如下所示的内容来绘制一个矩形(它使用到视口的完整路径):
grid.rect(vp = "plot_01.toplevel.vp::plot_01.legend.top.vp",gp = gpar(col = "red"))
https://stackoverflow.com/questions/32660688
复制