我已经得到了聚类的结果,并决定使用晶格为每个聚类制作一个箱形图。 接下来,我面临着建立所有集群箱图可接受的规模的需求。
找到一个解决方案,允许排除异常值并设置自由关系。
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)
所以,我有很好的情节,但如果我手动设置每个情节的ylim,它会更好。例如,我的数据中只有整数值,而左上方群集图中的值0.5则没有意义。
那么,有没有办法在bwplot参数中设置多个ylim?
答案 0 :(得分:6)
来自?bwplot
下的文档:
xlim
也可以是一个列表,其中包含与面板数量一样多的组件(如果需要,可以回收),每个组件如上所述。仅当scales$x$relation
为"free"
时,这才有意义,在这种情况下,这些内容被视为由预付款计算返回的相应限制组件。
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)))