如何修复ggplot2时间序列条形图栏太宽?

时间:2019-05-21 02:04:15

标签: r ggplot2 bar-chart timeserieschart

我正在绘制一个时间序列条形图,其中带有针对不同类别的度量。当我绘制时间序列条形图时,条形的宽度会填满许多日期,即使相邻的条形相隔一个月也是如此,因此相邻的条形会相互接触,但这意味着尚不清楚该条对应的日期。如何更改代码,以使条形图仅显示在基础数据框中的日期之上?

我已经成功地绘制了另一个时间序列条形图,其ggplot代码完全相同,但基础数据却不同,因此我不清楚为什么在这种特定数据帧中会发生这种情况。

在下面的示例中,为了突出问题,为了简化起见,我仅使用一个类别的数据框:

data <- data.frame(a = c(as.Date("2019-05-30"), as.Date("2019-06-19")), b = c("FX FORWARD", "FX FORWARD"), c = c(29.2, 74.7))
colnames(data ) <- c("Expiration Date", "Security Type", "Exposure $M")

plot <- ggplot(data , aes(x=`Expiration Date`, y=`Exposure $M`, fill=`Security Type`)) + 
  geom_bar(stat="identity") + scale_x_date(labels = scales::date_format("%d-%b"), date_breaks = "3 day")

我预计这些柱线只会出现在它们存储在数据帧中的那一天的上方,而不是如图中所示,即仅在2019年5月31日之上的29.2美元,并且不会从5月23日传播到6月8日;对于第二个数据点相同。谁能在我的代码中建议我该如何更正?

在此先感谢您的帮助,我一直在尝试寻找解决方案。

0 个答案:

没有答案