多彩的geom_bar()情节

Sar*_*iuk 3 r ggplot2

我的数据只包含一个变量和一个日期列.我想制作一个色彩缤纷的geom_bar()情节.这意味着每个酒吧都有不同的颜色.

数据示例:

daytime price
2000-01-01 30
2000-01-02 34
2000-01-03 29
2000-01-04 31
2000-01-05 38
2000-01-06 41
2000-01-07 31
Run Code Online (Sandbox Code Playgroud)

geom_bar图包含7个柱,每天一次.每个酒吧怎么会有不同的颜色?

我试图改变填充:

   geom_bar(stat = "identity", fill = "grey")
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?

Did*_*rts 5

您必须提供与fill=绘图中的条形相同数量的颜色.这是使用函数rainbow()来制作颜色的示例.

ggplot(df,aes(daytime,price))+
         geom_bar(stat = "identity", fill = rainbow(n=length(df$price)))
Run Code Online (Sandbox Code Playgroud)

如果您放入fill=内部aes(),然后提供数据框的行名称作为变量,则可以自动执行此操作.随着guides(fill=FALSE)你可以删除传奇.

ggplot(df,aes(daytime,price,fill=rownames(df)))+
       geom_bar(stat = "identity")+guides(fill=FALSE)
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述