ggplot 多列bar图

ggplot 多列情况下bar图,geom_bar 的y只是支持一列不像barplot一样,要实现多列的需要把其余的列数转换成一列


ds<-c('201607','201608','201609')
gmv<-c(100,200,300)
order<-c(50,60,70)
df<-data.frame(ds,gmv,order)


##第一种方法是使用reshape的melt
#install.packages('reshape2')
#library('reshape2')
df2<-melt(df,id=c('ds'),variable.name = 'dim',value.name = 'value')
p<-ggplot(data=df2,aes(x=ds,y=value))+geom_bar(stat = 'identity',aes(fill=dim),position='dodge')
print(p)




##没有id的情况下会把所有的所有列放在变量里
gmv1<-200
gmv2<-300
gmv3<-400
dftmp<-data.frame(gmv1,gmv2,gmv3)
dftmp2<-melt(df,variable.name = 'gmv')
p<-ggplot(data=dftmp2,aes(x=gmv,y=value))+geom_bar(stat = 'identity')+geom_text(aes(label=value,vjust=-1))
print(p)
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在ggplot2中,我们可以使用facet_grid()函数来创建多组分组的柱状。 首先,我们需要准备好数据集,包含多组不同分类的数据和对应的值。数据集可以是一个数据框,每一列代表一个组别,每一行代表不同的观测。 接下来,我们使用ggplot()函数创建一个空白的形对象,并指定数据集和所需的变量映射。 然后,我们使用geom_bar()函数添加柱状的几何对象。在这个函数中,我们可以使用fill参数来设置不同组别的颜色填充。 最后,我们使用facet_grid()函数来创建多组分组的柱状。这个函数接受两个参数,第一个参数表示分组的列名,第二个参数表示分组的方式。 以下是一个简单的例子: ``` library(ggplot2) # 准备数据集 data <- data.frame( category = rep(c("A", "B", "C"), each = 3), group = rep(c("Group1", "Group2", "Group3"), 3), value = c(10, 12, 15, 8, 9, 11, 13, 14, 12) ) # 创建形对象 plot <- ggplot(data, aes(x = category, y = value, fill = group)) # 添加柱状几何对象 plot <- plot + geom_bar(stat = "identity") # 创建多组分组的柱状 plot <- plot + facet_grid(. ~ group) # 显示形 print(plot) ``` 在这个例子中,我们有3个不同的组别(A、B、C)和3个不同的分组(Group1、Group2、Group3)。最后的形将会显示每个组别的柱状,并且按照分组方式排列在一起。 这就是使用ggplot2创建多组分组柱状的方法。通过调整数据和参数,我们可以根据具体需求来定制形。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值