R语言ggplot柱形图系列:单数据柱形图

柱形图一般用于反应某一范围内数据的变化和各种类之间的对比,主要分为四类单数据柱形图、多数据柱形图、堆叠柱形图、百分比堆叠柱形图。这一篇主要讲解单数据类型的柱形图,主要包括数据顺序的调整,以及细节优化。具体如下:

1.制作单数据柱形图

这里我们以类别型数据为例制作单数据柱形图,数据为两列,一列为商品类别,一列为商品类别对应的价格,构造过程如下:

mydata<-data.frame(Brand=c("Prada","Versace","Moncler","Dior","D&G"), 
                   Price=c(20400,15000,39560,42409,23800)) 

数据长这样:
在这里插入图片描述
然后我们先直接使用ggplot的直方图函数进行作图试试效果:
使用Brand进行填充,geom_bar函数作图

ggplot(data=mydata,aes(Brand,Price,fill = Brand))+ 
  geom_bar(stat = "identity")+
  

在这里插入图片描述

可以发现各个品牌和他们所对应的价格都展示在了柱形图上,价格最贵的为Dior。

2.顺序调整

但是有时候我们可能会感觉这种高低起伏的排列顺序会不够顺畅,所以我们可以对他们的顺序进行一个简单的调整,让价格最高的品牌在最前面让整体的图呈现为阶梯状。

在R语言中,要实现X轴变量的降序展示,需要通过控制并改变因子向量的水平实现。我们一定要先对表格或因子向量排序后,再改变其水平顺序,才会使X轴的类别顺序根据Y 轴变量的数值降序展示

order<-sort(mydata$Price,index.return=TRUE,decreasing = TRUE) 
mydata$Brand <- factor(mydata$Brand, levels = mydata$Brand[order$ix]) 

现在数据,已经按照降序进行了排列,如下:
在这里插入图片描述
再次使用上面的代码作图即可:

在这里插入图片描述
现在柱形图内每一个柱子都按照价格高低进行了排列。

3.细节美化

现在我们对图片进行细节上的优化,主要包括柱子宽度,图例大小、以及整体的配色。

ggplot(data=mydata,aes(Brand,Price,fill = Brand))+ 
  geom_bar(stat = "identity", width = 0.8,size=0.25,alpha=1)+
  scale_color_npg()+
  scale_fill_npg()

我们将柱子宽度跳到0.8,这样就增加了柱子之间的间距,图像整体上也直观了许多,图例的方块大小使用size参数调节,简单增大了一点每个方块之间的距离更加接近,最后是颜色的调整,使用了ggsci库里面的nature配色方案最终图片如下:
在这里插入图片描述
本篇的内容分享就到此结束了,祝愿看到这里的朋友们生活愉快!

(如有文章作图,或者数据分析需要可以私信qicong0719)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值