码迷,mamicode.com
首页 > 其他好文 > 详细

ggplot2——柱状图

时间:2015-08-20 01:29:50      阅读:237      评论:0      收藏:0      [点我收藏+]

标签:r   ggplot2   柱状图   作图   

目录:

(更多关于图例、坐标系等内容请见:R、ggplot2、shiny 汇总


初始图样:

library(ggplot2)
library(ggthemes)
dt = data.frame(obj = c(‘A‘,‘D‘,‘B‘,‘E‘,‘C‘), val = c(2,15,6,9,7))
p = ggplot(dt, aes(x = obj, y = val, fill = obj, group = factor(1))) + 
    geom_bar(stat = "identity") +
    theme_economist()
p

技术分享


如何修改柱条的宽度:

library(ggplot2)
library(ggthemes)
dt = data.frame(obj = c(‘A‘,‘D‘,‘B‘,‘E‘,‘C‘), val = c(2,15,6,9,7))
p = ggplot(dt, aes(x = obj, y = val, fill = obj, group = factor(1))) + 
    geom_bar(stat = "identity", width = 0.5) +   ## 修改柱条的宽度
    theme_economist()
p

技术分享


如何修改柱条的顺序:

library(ggplot2)
library(ggthemes)
dt = data.frame(obj = c(‘A‘,‘D‘,‘B‘,‘E‘,‘C‘), val = c(2,15,6,9,7))
dt$obj = factor(dt$obj, levels=c(‘D‘,‘B‘,‘C‘,‘A‘,‘E‘))   ## 设置柱条的顺序
p = ggplot(dt, aes(x = obj, y = val, fill = obj, group = factor(1))) + 
    geom_bar(stat = "identity", width = 0.5) +   ## 修改柱条的宽度
    theme_economist()
p
## 特注:dt$obj 是因子类型,ggplot2作图的顺序就是按照这个因子水平的顺序来的,
## 所以我们修改因子水平的顺序即可修改作图的顺序,具体情况可以输出一下 dt$obj 。

技术分享


如何在柱条上添加文字:

library(ggplot2)
library(ggthemes)
dt = data.frame(obj = c(‘A‘,‘D‘,‘B‘,‘E‘,‘C‘), val = c(2,15,6,9,7))
dt$obj = factor(dt$obj, levels=c(‘D‘,‘B‘,‘C‘,‘A‘,‘E‘))   ## 设置柱条的顺序
p = ggplot(dt, aes(x = obj, y = val, fill = obj, group = factor(1))) + 
    geom_bar(stat = "identity", width = 0.5) +   ## 修改柱条的宽度
    theme_economist() + 
    geom_text(aes(label = val, vjust = -0.8, hjust = 0.5, color = obj), show_guide = FALSE) +   ## 显示柱条上的数字
    ylim(min(dt$val, 0)*1.1, max(dt$val)*1.1)   ## 加大 Y 轴的范围,防止数字显示不齐全
p

技术分享



转载请注明出处,谢谢!(原文链接:http://blog.csdn.net/bone_ace/article/details/47267981

ggplot2——柱状图

标签:r   ggplot2   柱状图   作图   

原文地址:http://blog.csdn.net/bone_ace/article/details/47267981

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!