我怎样才能停止 sapply 删除我的 barplot 标题?
How can I stop sapply dropping my barplot titles?
我想为我的数据集中的因子变量绘制条形图。为此,我 运行 sapply(data[sapply(data, class)=='factor'],function(x) barplot(table(x)))
。令我恼火的是,这些图记住了它们的因子标签,但其中 none 保留了标题。如何在不手动为每个图表添加标题的情况下解决此问题?
目前,我得到了像这样的幽默模糊的无标题图表:
怎么样
## extract names
fvars <- names(data)[which(sapply(data,inherits,"factor"))]
## apply barplot() with main=
lapply(fvars, function(x) barplot(table(data[[x]]), main=x))
?
示例数据:
data <- mtcars
for (i in c("vs","am","gear","carb")) data[[i]] <- factor(data[[i]])
请注意,这会同时创建所有绘图。如果您在具有绘图历史记录(RStudio 或 RGui)的 GUI 中工作,您可以通过图表返回页面。否则,您可能希望在开始之前使用 par(mfrow=c(nr,nc))
(填写行数和列数)来设置子图。
返回的数字是条的中点(参见 ?barplot
):如果您不想看到它们,可以将 barplot()
调用包装在 invisible()
中。
我想为我的数据集中的因子变量绘制条形图。为此,我 运行 sapply(data[sapply(data, class)=='factor'],function(x) barplot(table(x)))
。令我恼火的是,这些图记住了它们的因子标签,但其中 none 保留了标题。如何在不手动为每个图表添加标题的情况下解决此问题?
目前,我得到了像这样的幽默模糊的无标题图表:
怎么样
## extract names
fvars <- names(data)[which(sapply(data,inherits,"factor"))]
## apply barplot() with main=
lapply(fvars, function(x) barplot(table(data[[x]]), main=x))
?
示例数据:
data <- mtcars
for (i in c("vs","am","gear","carb")) data[[i]] <- factor(data[[i]])
请注意,这会同时创建所有绘图。如果您在具有绘图历史记录(RStudio 或 RGui)的 GUI 中工作,您可以通过图表返回页面。否则,您可能希望在开始之前使用 par(mfrow=c(nr,nc))
(填写行数和列数)来设置子图。
返回的数字是条的中点(参见 ?barplot
):如果您不想看到它们,可以将 barplot()
调用包装在 invisible()
中。