我已经得到了聚类的结果,并决定使用晶格为每个聚类制作一个箱形图.接下来,我面临着建立所有集群箱图可接受的规模的需求.

找到一个解决方案,允许排除异常值并设置自由关系.
library(lattice)
trellis.device(new=FALSE, col=FALSE)
bwplot(value ~ variable | Cluster, data = test,
layout = c(2,2),
prepanel = function(x, y) {
bp <- boxplot(split(y, x), plot = FALSE)
ylim <- range(bp$stats)
list(ylim = ylim) },
scales = list(y = list(relation = "free")),
do.out = F)
Run Code Online (Sandbox Code Playgroud)
所以,我有很好的情节,但如果我手动设置每个情节的ylim,它会更好.例如,我的数据中只有整数值,而左上方群集图中的值0.5则没有意义.

那么,有没有办法在bwplot参数中设置多个ylims?
从以下文档?bwplot:
xlim也可以是一个列表,具有与面板数量一样多的组件(如果需要,可以再循环),每个组件如上所述.只有当这是有意义的scales$x$relation是"free",在这种情况下,就好像它们是由prepanel计算返回的相应的限制部件,但是这些被处理.
该ylim参数具有y轴的相应功能.
因此,像您一样relation = "free"在scales参数中设置,然后将列表传递给ylim参数,以单独设置每个面板的y轴限制:
bwplot(len ~ factor(dose) | supp, data = ToothGrowth,
scales = list(relation = "free"),
ylim = list(c(5, 31), c(0, 36)))
Run Code Online (Sandbox Code Playgroud)
