ggplot2中的圆形直方图,条形间距均匀,无额外线条

时间:2017-03-26 19:41:18

标签: r ggplot2

我正在制作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()

我非常喜欢结果情节:

Circular histogram

但是我无法弄清楚如何在23和0之间获得与其他条形图相同的间距。现在,这两个酒吧相互齐平,到目前为止我没有尝试过任何东西将它们分开。我也有兴趣删除不同时段之间的界限(例如21到22之间的界限)因为它有点分散注意力并且不传达任何信息。任何建议都会非常感激,特别是在间隔23和0条时!

1 个答案:

答案 0 :(得分:2)

您可以使用expand的{​​{1}}参数进行调整。简化了一点,

scale_x_continuous

plot with space between 23 and 0