在地层图之外添加注释

Add annotation outside of stratigraphic plot

如何向地层图添加一些注释?

例如,这是来自模拟的 Stratiplot:

library(analogue)
data(V12.122)
Depths <- as.numeric(rownames(V12.122))
names(V12.122)

(plt <- Stratiplot(Depths ~ O.univ + G.ruber + G.tenel + G.pacR,
                   data = V12.122,  
                   type = c("h","l","g"),
                   zones = 400))

plt

我想在蓝色图和最右边的区域矩形之间的白色 space 中添加一些文本。例如,像这样:

A = 150,B = 600,C = 1000

这是一种方法:

pacman::p_load(analogue)
data(V12.122)
Depths <- as.numeric(rownames(V12.122))
names(V12.122)

(plt <- Stratiplot(Depths ~ O.univ + G.ruber + G.tenel + G.pacR,
                   data = V12.122,  
                   type = c("h","l","g"),
                   zones = 400))

(plt2 <- Stratiplot(Depths ~ O.univ + G.ruber + G.tenel + G.pacR,
                   data = V12.122,  
                   type = c("h","l","g"),
                   yticks = c(150,600,1000)
                   ))

我们需要像这样更新 y 轴标签:

plt2$y.scales$labels <-  c("A", "B", "C")

然后我们可以像这样用两个 y 轴绘制它:

require(latticeExtra)
doubleYScale(plt,plt2,add.axis=T)

我查看了这个函数的源代码,发现它是 xyplot 的包装器,然后我搜索了一下,发现 doubleYScale 可以用这种方式添加一个第二个 Y 轴到 xyscale.

或者要保持颜色统一为黑色,

doubleYScale(plt,plt2,add.axis=T,use.style = F)