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

时间: 2024-10-17 07:53:02

ggplot2——柱状图的相关文章

R语言数据可视化1—ggplot2画柱状图

目的:将已有的业务表(csv格式),导入到Rstudio中.根据"开始时间",按月份统计出业务量.画出下图.(注:我选择的业务表中只有1.2.3月的数据) 开始吧!!! 1.加载csv格式的数据表,并查看字段名: ##加载数据 khsx <-read.csv("khsx.csv",header = TRUE) names(khsx)##查看列名 2.加载将要使用的包 ##加载包 library(ggplot2) ##画图用的包 library(lubridat

ggplot2 练习杂记三 EXCEL 柱状图

R代码 ggplot(channel2,aes(x=factor(Name),,fill=Type)) +geom_bar(aes(y=Amount,fill=factor(Type)),stat="identity" ,width=0.3)+geom_bar(aes(y=Amount2,fill=factor(Type)),stat="identity" ,width=.2 ) #主要就是靠 width 的数字来控制的 数据: Name Type  Amount 

R包——ggplot2(一)

关于ggplot2包(一) 关于ggplot2包(一) ggplot2基本要素 数据(Data)和映射(Mapping) 几何对象(Geometric) 标尺(Scale) 统计变换(Statistics) 坐标系统(Coordinate) 图层(Layer) 分面(Facet) 主题(Theme) 数据(Data)和映射(Mapping) 下面用diamonds的数据为例,由于数据很大,随机选取一个子集进行画图 > library(ggplot2)> data(diamonds)> s

第一章:ggplot2绘图概述

前言 ggplot2是R语言最为强大的作图软件包,强于其自成一派的数据可视化理念.当熟悉了ggplot2的基本套路后,数据可视化工作将变得非常轻松而有条理. 本文主要对ggplot2的可视化理念及开发套路做一个总体介绍,具体绘图方法(如折线图,柱状图,箱线图等)将在后面的文章中分别进行讲解. 核心理念 1. 将数据,数据相关绘图,数据无关绘图分离 这点可以说是ggplot2最为吸引人的一点.众所周知,数据可视化就是将我们从数据中探索的信息与图形要素对应起来的过程. ggplot2将数据,数据到图

ggplot2包--R可视化

1.ggplot2发展历程 ggplot2是Hadley在爱荷华州立大学博士期间的作品,也是他博士论文的主题之一,实际上ggplot2还有个前身ggplot,但后来废弃了,某种程度上这也是Hadley写软件的特 征,熟悉他的人就知道这不是他第一个“2”版本的包了(还有reshape2).带2的包和原来的包在语法上会有很大的改动,基本上不兼容.尽管如此,他的R代码风格在R社区可谓独树一帜,尤其是他的代码结构很好,可读性很高,ggplot2是R代码抽象的一个杰作.读者若感兴趣,可以在GitHub网站

ggplot2——饼图篇

目录: 原始图样 如何去除饼图中心的杂点 如何去除饼图旁边的标签 如何去掉左上角多出来的一横线 如何去掉图例的标题,并将图例放到上面 如何对图例的标签加上百分比 如何让饼图的小块按顺时针从大到小的顺序显示 如何去掉白色外框上的数字 如何在图中加百分比 如何生成饼环 (更多内容请见:R.ggplot2.shiny 汇总) 原始图样: library(ggplot2) dt = data.frame(A = c(2, 7, 4, 10, 1), B = c('B','A','C','D','E'))

第三篇:数据可视化 - ggplot2

前言 R语言的强大之处在于统计和作图.其中统计部分的内容很多很强大,因此会在以后的实例中逐步介绍:而作图部分的套路相对来说是比较固定的,现在可以先对它做一个总体的认识. 在上一篇文章中,介绍了使用graphics库进行绘图的方法,而本文将引入一个更为强大的库 --- ggplot2,它能做出各式各样,非常酷炫的统计图(甚至地图,热图等). 本文将结合一个实际项目中的例子讲解如何使用ggplot2绘图. ggplot绘图总体步骤 1. 调用ggplot函数设置图形基本信息 --- 如:使用的数据集

跟我一起ggplot2(1)

ggplot2 R的作图工具包,可以使用非常简单的语句实现非常复杂漂亮的效果. qplot 加载qplot library(ggplot2) # 测试数据集,ggplot2内置的钻石数据 qplot(carat, price, data = diamonds) dsmall <- diamonds[sample(nrow(diamonds), 100), ] #对diamonds数据集进行抽样 #1. 按color,size,shape的基本分类可视化      #1.1 简单的散点图(利用co

ggplot2 练习杂记二 EXCEL 分组堆积条形图

Excel中图表如下: 今天折腾了大半天,在ggplot2中,要不是堆积图要么就是非堆积的,没法像Excel中做到分组堆积(也许有办法,但我目前还不知道该如何实现-_-!) 只能是在R中做了个类似的,但问题很多... R中图形如下: 因为是模拟出来的,还没法对A,B,C,D进行调整间隔,如果不看对应的Y轴标签无法很清淅的从图表上看出谁和谁是一组的 R中代码如下: channel <- read.xlsx("c:/myR/channel.xlsx",sheetName="