如何在 geom_col() 中为重复的 x 轴值设置单独的列?

How to have separate columns for duplicate x-axis values in geom_col()?

我有一个如下所示的数据框(非常简单的结构),我想绘制一个柱形图来显示每个日期的金额。问题是 date 有重复条目(例如 2020-01-15)。

  # A tibble: 5 x 2
  date       amount
  <date>      <dbl>
1 2020-01-02  4000 
2 2020-01-06  2568.
3 2020-01-15  2615.
4 2020-01-15  2565 
5 2020-01-16  2640 

当我尝试执行以下操作时,它以某种方式将相似的日期组合在一起并绘制了一个堆积柱形图,这不是我想要的。

df %>%  
    ggplot(aes(x= factor(date), y=amount)) +
    geom_col()
    scale_x_discrete( labels = df$date ) #this creates discrete x-axis labels but the values are still stacked. So it just messes things up.

如果我使用 geom_line() 没有问题,但我想看到每个日期的栏。知道怎么做吗?

尝试:

df %>% 
  ggplot(aes(date, amount)) +
  geom_col(position = position_dodge2()) + 
  scale_x_date(breaks = unique(df$date))

结果: