我正在使用 R 中的 plot() 绘制一个连续变量对一个因子的图(见下面的例子)。我不想要轴上的标签。如果公式中没有 as.factor 调用,ann = F 会抑制标签的打印,但它不适用于公式中的 as.factor

为什么是这样?

谢谢你。

# example for SO
# example data
x <- sample(1:100, 10)
y <- c(rep(1, 5), rep(2, 5))

# ann = F doesn't work here
plot(x ~ as.factor(y), ann = F)

# ann = F does work here
plot(x ~ y, ann = F)

最佳答案

它似乎是由 plot.formula 引起的,因为如果您分别指定 xy ,它会起作用:

plot(as.factor(y), x, ann=FALSE)

更新:

确认它在 graphics:::plot.formula 中。调用 plot 的行显式设置 ylabxlab ( funname"plot"dots = list(ann=FALSE) ):
do.call(funname, c(list(mf[[i]], y, ylab = yl, xlab = xl), dots))

关于r - 为什么在 R 中使用 `ann = F` 绘图时 `as.factor` 不起作用?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6206416/

10-12 17:52