使用 ggplot 用不同颜色和标签绘制条形图

zxw*_*mes 1 r bar-chart ggplot2

我想用不同的颜色绘制条形图。数据是时间序列数据,如下所示:

date          volume         label
2015-02-16    102              1 
2015-02-17    112              1 
2015-02-18    152              2 
2015-02-19    132              1 
2015-02-20    122              1 
2015-02-21    92               3
Run Code Online (Sandbox Code Playgroud)

我想使用 ggplot 将此时间序列数据绘制为条形图。困难的部分是,

1)我想绘制黑色,标签= 1,红色,标签= 2,蓝色,标签= 3

2)我想在每个每日栏的顶部绘制标签“1”、“2”、“3”。

pic*_*ick 5

对于着色,您可以使用scale_fill_manual,对于标签,您可以使用text(使用vjust参数来调整标签在栏上的显示位置)。

library(ggplot2)
ggplot(dat, aes(date, volume, fill=factor(label))) +
  geom_bar(stat='identity') +
  geom_text(aes(label=label), color="white", vjust=2) +
  scale_fill_manual(breaks=levels(dat$label), values=c('black', 'red', 'blue'))
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述