我有一个名为data的数据框:
头(数据)
date total_sold purchasability visibility
81 2014-05-01 3 3 3
82 2014-05-02 2 2 3
83 2014-05-03 1 2 3
84 2014-05-04 1 3 3
85 2014-05-05 3 2 3
86 2014-05-06 0 0 3
我想用x = date和y = total_sold做一个条形图,颜色取决于可购买性。我这个ggplot2这样做:
bar <- ggplot(data = data, aes(x = date, fill=as.factor(purchasability),y = total_sold)) + geom_bar(stat = 'identity')
输出非常好,但问题是,在total_sold = 0的情况下,没有图表,因此无法知道可购买性。当total_sold = 0时,是否仍然可以显示一个条形(可能是0.5到-0.5)
由于
答案 0 :(得分:10)
您可以使用geom bar,请查看此代码
df <- data.frame(time = factor(c("Lunch","Dinner","breakfast","test"), levels=c("Lunch","Dinner","breakfast","test")),
total_bill = c(14.89, 0,0.5,-0.5))
# Add a black outline
ggplot(data=df, aes(x=time, y=total_bill, fill=time)) + geom_bar(colour="black", stat="identity")
答案 1 :(得分:0)
我不确定是否有从0.5到-0.5的简单方法,但您可以通过修改{{1}中的值轻松地将0值显示为分数(例如-0.1)行到:
bar=
这会产生:
将0显示为0以外的其他内容有点误导,但我希望这可以解决您的问题。