将所有轴标签放置在R格子xyplot中的左侧和底部

emu*_*rak 3 r lattice

我想更改默认的xyplot设置,其中轴标签按面板交替显示。

xyplot(yield~N | P+K, data=npk)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

我意识到这是有意避免在相邻面板上重叠极端轴的方法,但是对于如上所示的分类x轴标签,这是不必要的,对于发布来说看起来很奇怪。

有没有一种方法可以将所有轴标签放在如下所示的同一侧(我在图形程序中编辑过)?

在此处输入图片说明

emu*_*rak 6

在检查以确保我没有重复一个问题时,我尝试了一些新的搜索词,并发现解决方案隐藏在冗长的xyplot帮助文件中。

有一个名为“ scales”的参数,它本身具有一堆可以指定的参数,并且必须在列表中。的默认值alternating是,TRUE并将其切换为FALSE将完成以下操作:

xyplot(yield~N | P+K, data=npk, scales=list(alternating=FALSE))
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

您还可以为此参数输入一个数字值,以确定标签应贴在哪一边:

xyplot(yield~N | P+K, data=npk, scales=list(alternating=1))
xyplot(yield~N | P+K, data=npk, scales=list(alternating=2))
Run Code Online (Sandbox Code Playgroud)

您可以向其传递多个参数,以使每个面板的行为不同:

xyplot(yield~N | P+K, data=npk, scales=list(alternating=c(1,0))) 
Run Code Online (Sandbox Code Playgroud)

默认为 c(1,2)