df <- structure(list(sales1 = c(11.3208, 12.9151, 18.8947, 14.6739, 8.6493, 9.5238, 7.6923, 0.0017, 8.0477, 6.7358, 6.1441, 21.7939, 4.2553, 0.0017, 11.0196, 6.2762, 13.2316, 5.0676, 5.6235, 14.9893 ), store = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 3L, 3L, 3L, 3L, 3L, 3L, 4L, 4L), levels = c("1", "2", "3", "4", "5", "6"), class = "factor"), day = structure(c(1L, 2L, 3L, 4L, 5L, 6L, 1L, 2L, 3L, 4L, 5L, 6L, 1L, 2L, 3L, 4L, 5L, 6L, 1L, 2L), levels = c("1", "2", "3", "4", "5", "6"), class = "factor")), row.names = c(NA, 20L), class = "data.frame")
par(mfrow= c(2,2), mgp=c(2, .7, 0), mai=c(0.7, 0.7, 0.7, 0.1), font.lab = 2)
a1 <- aov(sales1 ~ store + day, df)
plot(a1)
我发现font.lab = 2
对模型诊断图中的所有轴都能很好地工作-除了左下角的y轴(sqrt标准化残差)。
是否有特殊原因导致此功能不起作用?是否有简单的替代解决方案将所有轴标签打印为粗体?
1条答案
按热度按时间xqk2d5yq1#
第三个图中的标签不是粗体的原因是,它是使用plotmath而不是文本标签创建的(以合并平方根符号)。这意味着它忽略了
font.lab
参数。不幸的是,这是硬编码到
plot.lm
中的,而plot.lm
才是实际绘图的部分,我能看到的唯一简单的解决方案是创建plot.lm
函数的副本并覆盖相应的行:现在,您的第三个图也应该有一个粗体标签: