如何在莱迪思包中将标签添加到Levelplot的顶部X轴

时间:2017-04-17 22:38:16

标签: r matrix plot lattice levelplot

所以我使用类似于此的水平图来制作类似相关矩阵的图(取自:Plot correlation matrix into a graph):

library(lattice)

#Build the horizontal and vertical axis information
hor <- c("214", "215", "216", "224", "211", "212", "213", "223", "226", "225")
ver <- paste("DM1-", hor, sep="")

#Build the fake correlation matrix
nrowcol <- length(ver)
cor <- matrix(runif(nrowcol*nrowcol, min=0.4), nrow=nrowcol, ncol=nrowcol, dimnames = list(hor, ver))
for (i in 1:nrowcol) cor[i,i] = 1

#Build the plot
rgb.palette <- colorRampPalette(c("blue", "yellow"), space = "rgb")
levelplot(cor, main="stage 12-14 array correlation matrix", xlab="", ylab="", col.regions=rgb.palette(120), cuts=100, at=seq(0,1,0.01))

我想为每个顶部(第二个)x轴刻度添加标签。有谁知道如何做到这一点?

谢谢,

1 个答案:

答案 0 :(得分:1)

您可以在scales=list(alternating=3)

的通话中添加levelplot来完成此操作

如果您查找levelplot的帮助,有关某些信息,则会提及xyplot(和其他人)。它位于xyplot帮助页面中,您可以找到scales及其中alternating的说明。交替控制刻度标签的位置,可以采用4个值:

  • 0(无),
  • 1(下/左),
  • 2(顶部/右侧),
  • 3(两者)。

以下是对levelplot的调用,它可以为您提供所有方面的标记:

levelplot(cor, main="stage 12-14 array correlation matrix", xlab="", ylab="", col.regions=rgb.palette(120), cuts=100, at=seq(0,1,0.01), scales=list(alternating=3))