0

我正在尝试使用 R 中的 text() 在条形图中重新标记和调整我的 x 轴。我已经设法弄清楚了一些位,但现在我遇到了以下问题:我很想增加我的标签之间的空间,以便将它们很好地放在它们所属的栏下方。到目前为止,这是我(业余地)想出的:

    lab<-c("Morning (PT)", "Evening (PT)",
           "Morning (LT)", "Evening (LT)",
           "Morning (total)", "Evening (total)")
    barplot(data, names.arg=data$period, 
            col=c("darkorange1",  "firebrick3", "darkolivegreen4", "goldenrod1"), 
            main="", ylab="(%)", xaxt = "n", xlim=c(0,10))
    text(c(1,1,1,1,1,1), labels = lab, srt = 45, 
         adj = c(1,2), xpd = TRUE, cex=.7)

阴谋

在花了几个小时试图不成功地理解 par() 参数之后,我想知道是否有人可以帮助我解决这个问题。也许有一个我没有看到的好而简单的解决方案?

非常感谢任何提示!丹妮拉

4

1 回答 1

0

正如 Vincent Zoonekynd 所建议的,您可以使用las参数旋转 x 标签(请参阅R 中的旋转轴标签)。我不知道你的数据到底是什么样的,所以我做了一个简化的例子:

lab <- c("Morning (PT)", "Evening (PT)",
           "Morning (LT)", "Evening (LT)",
           "Morning (total)", "Evening (total)")

data <- data.frame(numbers=c(1,2,1,2,2,1), period=lab)
par(mar=c(7, 4, 4, 2))
barplot(data$numbers,names.arg=lab, col="darkorange1", main="", ylab="(%)", las=2)

在此处输入图像描述

如果您想要标签的不同角度,您可以使用text,请参阅这篇文章:Rotating x axis labels in R for barplot

这对你有帮助吗?

于 2013-08-19T15:10:44.123 回答