如何在 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))
结果:
我有一个如下所示的数据框(非常简单的结构),我想绘制一个柱形图来显示每个日期的金额。问题是 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))
结果: