R语言-画柱形图
barplot()函数
1.柱形图
> sales<-read.csv("citysales.csv",header=TRUE) #读取数据
> barplot(sales$ProductA,names.arg=sales$City, #设置Y轴,X轴
+col="black") #设置颜色
结果如下图:

2.水平柱形图
> sales<-read.csv("citysales.csv",header=TRUE) #读取数据
> barplot(sales$ProductA,names.arg=sales$City, #设置Y轴,X轴
+ horiz=TRUE, #绘制水平柱形图
+ col="black") #设置颜色
结果如下图:

3.彩色柱形图
> sales<-read.csv("citysales.csv",header=TRUE)
> barplot(as.matrix(sales[,2:4]), #选择sales数据集的2-4列,形成矩阵
+ beside=TRUE, #不是堆叠效果
+ legend=sales$City, #设置样例
+ col=heat.colors(5), #生成颜色
+ border="white") #边框为白色
结果如下图:

4.百分比堆叠柱形图
> library(RColorBrewer)
> citysalesperc<-read.csv("citysalesperc.csv")
> par(mar=c(5,4,4,8),xpd=T) #xpd设置画图界限
> barplot(as.matrix(citysalesperc[,2:4]),
+ col=brewer.pal(5,"Set1"),border="white",
+ ylab="Sales Revenue (1,000's of USD)",
+ main="Percentage Sales Figures")
> legend("right",legend=citysalesperc$City,
+ bty="n",
+ inset=c(-0.3,0),fill=brewer.pal(5,"Set1")) #inset设置图例距边缘的位置

5.调整柱形图的宽度,间隔和颜色
> citysales<-read.csv("citysales.csv")
> barplot(as.matrix(citysales[,2:4]),
+ beside=TRUE,
+ legend.text=citysales$City, #barplot函数内设置图例名称
+ args.legend=list(bty="n",horiz=T), #barplot函数内设置图例样式
+ col=c("#E5562A","#491A5B","#8C6CA8","#BD1B8A","#7CB6E4"), #调整颜色
+ border=FALSE,
+ space=c(0,5), #space=c(a,b)a调整每条之间的距离,b调整每组之间的距离
+ ylim=c(0,100),ylab="Sales Revenue(1,000's of USD)",
+ main="Sales Figures")

6.柱形图数据标注
> y<-barplot(as.matrix(citysales[,2:4]),
+ beside=TRUE,horiz=TRUE, #水平不堆叠柱形图
+ legend.text=citysales$City,args.legend=list(bty="n"),
+ col=brewer.pal(5,"Set1"),border="white",
+ xlim=c(0,100),xlab="Sales Revenue(1,000's of USD)",
+ main="Sales Figures")
> x<-as.matrix(citysales[,2:4])
> text(x+2,y,labels=as.character(x)) #标注数据

> rain<-read.csv("cityrain.csv")
> y<-barplot(as.matrix(rain[1,-1]), #取除了第一列的第一行数据
+ horiz=T,col="white",
+ yaxt="n",main=" Rainfall in January",xlab="Rainfall(mm)")
> x<-0.5*rain[1,-1] #设置X为中间位置
> text(x,y,colnames(rain[-1])) #取除了第一列的数据的列名进行标注

7.柱形图误差标注
> sales<-t(as.matrix(citysales[,-1]))
> colnames(sales)<-citysales[,1]
> x<-barplot(sales,beside=T,legend.text=rownames(sales),
+ args.legend=list(bty="n",horiz=T),
+ col=brewer.pal(3,"Set2"),border="white",ylim=c(0,100),
+ ylab="Sales Revenue (1,000's of USD)",
+ main="Sales Figures")
> arrows(x0=x,y0=sales*0.95, #设置下端位置
+ x1=x,y1=sales*1.05, #设置上端位置
+ angle=90, #设置箭头斜边和垂直线的夹角
+ code=3, #设置箭头类型
+ length=0.04, #设置箭头斜边的长度
+ lwd=0.4) #设置箭头垂直线的宽度

R语言-画柱形图的更多相关文章
- R语言画棒状图(bar chart)和误差棒(error bar)
假设我们现在有CC,CG,GG三种基因型及三种基因型对应的表型,我们现在想要画出不同的基因型对应表型的棒状图及误差棒.整个命令最重要的就是最后一句了,用arrows函数画误差棒.用到的R语言如下: d ...
- R语言画点状误差线
现在项目需要R语言做几个线性拟合,画一些点图,突然需要画误差线,网上找了下,可以用代码实现..效果如下 xx1<-c(xxxxxx,xxxx,xxxxx) yy1<-c(xxxxxx,xx ...
- R语言-画线图
R语言分高水平作图函数和低水平作图函数 高水平作图函数:可以独立绘图,例如plot() 低水平作图函数:必须先运行高水平作图函数绘图,然后再加画在已有的图上面 第一种方法:plot()函数 > ...
- R语言画全基因组关联分析中的曼哈顿图(manhattan plot)
1.在linux中安装好R 2.准备好画曼哈顿图的R脚本即manhattan.r,manhattan.r内容如下: #!/usr/bin/Rscript #example : Rscript plot ...
- R语言-画散点图
plot()函数 plot(cars$dist~cars$speed, # y~x main="XXX", ...
- R语言画曲线图
本文以1950年到2010年期间我国的火灾统计数据为例,数据如下所示: (0)加载数据 data<-read.csv("E:\\MyDocument\\p\\Data\\1950~20 ...
- 用R语言 画条形图(基于ggplot2包)
1.用qplot(x,data=data,geom.=”bar”,weight=y)+scale_y_continuous("y")画出y关于x的条形. 图中提示binwidth这 ...
- R语言画云字图
install.packages('wordcloud') library(wordcloud) colors=c('red','blue','green','yellow','purple') da ...
- R语言画正弦曲线
正弦曲线一个周期是2π,我们要先生成x的取值范围. 可以用seq函数生成一个等差序列,步进为0.01 x=seq( 0, 2*pi, 0.01 ) pi表示π y=sin(x) plot(x, ...
随机推荐
- 动手动脑-java重载
有以下例子: 例: Using overloaded methods public class MethodOverload { public static void main(String[] ar ...
- nvm-windows安装
linux上的nvm太好用了,windows也出了,不过需要手动下载安装 地址: https://github.com/coreybutler/nvm-windows/releases 博主安装的是 ...
- Thinkphp时间转换与统计的问题
1.thinkphp一般存入的都是时间戳,如果希望输入时直接显示格式化的时间呢: a. sql语句: SELECT DATE_FORMAT(create_time,'%Y%u') weeks,COUN ...
- UVA-10020-贪心
题意:给你一些数轴上的线段,要求寻找出某些线段能够完全覆盖[0,M],并且取的线段数目最小. 解题思路: 贪心思路, 1.每个线段都有一个L和R,代表它的起点和终点,对于所有R <= 0 , ...
- [多线程]线程基础(对象锁、class锁、同步、异步)
synchronized.volatile.ReentrantLock.concurrent 线程安全:当多个线程访问某一个类(对象或方法)时,这个类始终都能表现出正确的行为,那么这个类(对象或方法) ...
- python中的popitem
popitem()随机删除字典中的任意键值对,并返回到元组中 1 a = { 2 "name":"dlrb", 3 "age":25, 4 ...
- impala 和 kudu 小记
1. impala(官网) 实时交互SQL大数据查询工具 它提供SQL语义,能查询存储在Hadoop的HDFS和HBase中的PB级大数据. Impala的最大特点也是最大卖点就是它的快速. Impa ...
- java中 BeanUtils.copyProperties的用法
BeanUtils提供了对java发射和自省API的包装,这里对BeanUtils.copyProperties的用法做一个小小的介绍. 通过函数名可以知道,copyProperties函数是对属性进 ...
- 通过HTTP请求响应过程了解HTTP协议
通过HTTP请求响应过程了解HTTP协议 http://www.cnblogs.com/YeChing/p/6337378.html
- VC中编译报错:error C2011: 'fd_set' : 'struct' type redefinition
这是头文件包含顺序的问题,原因与解决办法见下面代码的注释. /* 包含下面这两个头文件时,必须把winsock2.h放在前面 否则编译报错,N多的重定义错误:例如 error C2011: 'fd_s ...