R 使用24小时时钟上的数据创建圆图的方法是什么?

R 使用24小时时钟上的数据创建圆图的方法是什么?,r,ggplot2,R,Ggplot2,我试图创建一个圆形图,用一组围绕中心点绘制的数据。我在网上找到的代码可以做到这一点,但Y轴太大了,图形没有用处。我想将Y轴限制在95-120,但当我使用Y\u scale\u continuous(limit=c(95120))时,它会降低条数 数据: 代码: p也许这里的解决方案就是更改数据?从数学上讲,这与将轴从零移开完成相同的事情 ggplot(df, aes(x = Hour, y=me - 95)) + geom_bar(width = 2, colour="grey",stat

我试图创建一个圆形图,用一组围绕中心点绘制的数据。我在网上找到的代码可以做到这一点,但Y轴太大了,图形没有用处。我想将Y轴限制在95-120,但当我使用
Y\u scale\u continuous(limit=c(95120))
时,它会降低条数

数据:

代码:


p也许这里的解决方案就是更改数据?从数学上讲,这与将轴从零移开完成相同的事情

ggplot(df, aes(x = Hour, y=me - 95)) +
  geom_bar(width = 2, colour="grey",stat = "identity") +
  theme_minimal() +
  scale_fill_brewer() +
  coord_polar(start=0) +
  scale_x_continuous("", limits = c(0, 24), breaks = seq(0, 24), labels = seq(0,24))


这可能会使图表更难解释,因此您需要解释像这样的任何操作。如果相对值是显著的,这有助于解释,如果绝对值是显著的,这种调整可能会从混乱到误导

条形图善于显示值之间的比例变化。如果您放弃0基线,他们就不再具有该属性,这将误导许多人。如果一个条是两倍高,它应该编码一个两倍大的值<代码>ggplot2
紧跟这一理念。考虑另一种可视化方法。也许是一个简单的线图:

ggplot(d, aes(x = Hour, y=me)) + 
  geom_polygon(fill = NA, col = 1) +
  geom_point(size = 5) +
  theme_minimal() + 
  coord_polar() +
  scale_x_continuous("", breaks = 0:24, limits = c(0, 24)) +
  ylim(90, 115) # adjust as you like

您是否可以将数据以可以复制/粘贴到文件中的格式包含在测试中?
ggplot
强制要求条形图从0开始。如果你想要一个从其他地方开始的条形图,也许只需要从你的数据中减去95,然后重新标记你的轴。(请注意,大多数人发现不包含0的条形图有误导性。)@Gregor这里的目标是显示每个小时的相对值,并显示24小时内的模式。geom_bar是达到这一目的的一种方法。这很有效。谢谢这里重要的是相对值。我正在显示它是多么的响亮/安静。问题,我不喜欢重叠条,但当我将宽度更改为“1”时,它会降低00小时值。知道为什么吗?
ggplot(df, aes(x = Hour, y=me - 95)) +
  geom_bar(width = 2, colour="grey",stat = "identity") +
  theme_minimal() +
  scale_fill_brewer() +
  coord_polar(start=0) +
  scale_x_continuous("", limits = c(0, 24), breaks = seq(0, 24), labels = seq(0,24))
ggplot(d, aes(x = Hour, y=me)) + 
  geom_polygon(fill = NA, col = 1) +
  geom_point(size = 5) +
  theme_minimal() + 
  coord_polar() +
  scale_x_continuous("", breaks = 0:24, limits = c(0, 24)) +
  ylim(90, 115) # adjust as you like