我正在努力在 ggplot2 中制作一个圆形直方图,以显示 24 小时内呼叫数量的变化情况。我的数据集从 0 开始到 23,每小时的调用次数:
df = data.frame(xvar = 0:23,
y = c(468,520,459,256,397,241,117,120,45,100,231,398,340,276,151,134,157,203,308,493,537,462,448,383))
我使用以下代码来创建圆形直方图:
ggplot(df, aes(xvar, y)) +
coord_polar(theta = "x", start = -.13, direction = 1) +
geom_bar(stat = "identity", fill = "maroon4", width = .9) +
geom_hline(yintercept = seq(0, 500, by = 100), color = "grey80", size = 0.3) +
scale_x_continuous(breaks = seq(0, 24), labels = seq(0, 24)) +
xlab("Hour") +
ylab("Number of Calls") +
ggtitle("Number of Calls per Hour") +
theme_bw()
我真的很喜欢最终的情节:
但我不知道如何在 23 和 0 条之间获得与其他条相同的间距。现在,这两个栏彼此齐平,到目前为止我所尝试的任何方法都无法将它们分开。我还对删除不同时间之间的线条(例如 21 和 22 之间的线条)感兴趣,因为它有点分散注意力并且不传达任何信息。如有任何建议,我们将不胜感激,特别是关于 23 和 0 条间距的建议!