R语言画图功能使用手册
2016-05-26 22:37
507 查看
R语言画图功能大全
一、plot()函数:散点图
----#plot是用来画散点图的~左边是因变量;右边是自变量
plot(cars$dist~cars$speed) ,#y~x
main=”Relationship between car distance & speed” ,#表标题
xlab = "Speed(miles per hour)" ,#X坐标轴标题
ylab="Distance travelled (miles)" ,#Y坐标轴标题
xlim=c(0,30) ,#设置X轴范围从0到30
ylim=c(0,140) ,#设置Y轴范围从0到140
xaxs="i" ,#设置X轴风格internal
yaxs="i" ,#设置X轴风格internal
col="red" ,#设置“散点“”的颜色为红色
pch=19 ,#设置散点的形状为实心圆点
二、画线图
sales<-read.csv("dailysales.csv",header=TRUE)
plot(sales$units~as.Date(sales$date,"%d/%m/%y"))
#指定散点图类型为“l”表示画线图
type="l"
main="UnitSales in the month of January 2010"
xlab="Date"
ylab="Number of units sold",col="blue"
运行在R上的实例:
#plot是用来画散点图的~左边是因变量;右边是自变量
plot(cars$dist~cars$speed,xlab="speed",ylab = "ditance",xaxs="i",col="red",pch=19,main="Relation distance & speed")
sales<-read.csv("E:\\R_workspace\\dailysales.csv",header=TRUE)
plot(sales$units~as.Date(sales$date,"%d/%m/%y"),type="l"
,main="UnitSales in the month of January 2010",xlab="Date"
,ylab="Number of units sold",col="blue")
lines()函数---它也是画线图的,但是lines()是依赖散点图的
lines(sales$units~as.Date(sales$date,"%d/%m/%y"),col="red")
注意---高水平作图函数与低水平作图函数
1)高水平作图函数:可以独立绘图,例如plot()
2)低水平作图函数:必须先运行高水平作图函数绘图,然后再加上画在已有的图上面
运行在R上的实例:
#lines()
plot(sales$units~as.Date(sales$date,"%d/%m/%y"))
lines(sales$units~as.Date(sales$date,"%d/%m/%y"),col="red")
三、散点图:
在坐标系里直观地显示样本数据分布情况;
一般可以描画2-3变量(维)样本数据,更高维度的可以使用辅助的标识方法,例如:面积、颜色、文字等。
#绘制散点图y~x
plot(cars$dist~cars$speed)
#绘画散点图也可以增加颜色设置
plot(cars$dist~cars$speed,col="red")
#绑定数据集
attach(cars)
plot(speed~dist)
detach(cars)
par(mfrow=c(1,3))
#type="l"就会把散点图变成线图,他把每个点连接而成的图片
#xaxs=“i"---internal
plot(dist~speed,main="Relationshio about dist and speed--i",
xlab="Speed(meil)",ylab="Dist",type="l",col="red",xaxs="i",xaxs="i")
plot(dist~speed,main="Relationshio about dist and speed-i",
xlab="Speed(meil)",ylab="Dist",
col="red",xaxs="i",xaxs="i")
#xaxs="r"--regular
plot(dist~speed,main="Relationshio about dist and speed--r",
xlab="Speed(meil)",ylab="Dist",col="red",xaxs="r",yaxs="r")
#一下的三种会报同样的错误------Error in plot.window(...) : axis style "e" unimplemented
#xaxs="s"--standard
plot(dist~speed,main="Relationshio about dist and speed--s",
xlab="Speed(meil)",ylab="Dist",col="red",xaxs="s",yaxs="s")
#xaxs="e"--extended
plot(dist~speed,main="Relationshio about dist and speed--e",
xlab="Speed(meil)",ylab="Dist",col="red",xaxs="e")
#xaxs="d"--direct
plot(dist~speed,main="Relationshio about dist and speed--d",
xlab="Speed(meil)",ylab="Dist",col="red",xaxs="d")
#用lines把散点图画成线图
#先画出散点图
plot(cars$dist~cars$speed,pch=19)
#用lines把散点联系起来
lines(cars$dist~cars$speed,col="red")
#加上属性pch=19把散点的形状变为实心圆点
lines(cars$dist~cars$speed,col="red")
四、柱形图与barplot()函数
#从工作目录中读取文件
sales<-read.csv("G:\\R_workspace\\sales.csv")
sales
#画柱形图 y,x
barplot(sales$ProductA,names.arg=sales$City,col="black")
#加一个参数让柱状图横着画horiz=TRUE;改图会较上图转90度
barplot(sales$ProductA,names.arg=sales$City,horiz=TRUE,col="black")
#设置一个版面可以看两个图
par(mfrow=c(1:2))
#彩色柱状图的画法
#legend主要用来产生右上角的图例图
#col=heat.colors(5):heat可以产生5个向量,即5种不同的颜色
barplot(as.matrix(sales[,2:4]),beside=TRUE,legend=sales$City,
col=heat.colors(5),border="white",main="Beside")
#去掉beside之后看效果
barplot(as.matrix(sales[,2:4]),legend=sales$City,
col=heat.colors(5),border="white",main="No Beside")
> #看一下heat.colors的效果
> col=heat.colors(5)
> col
[1] "#FF0000FF" "#FF5500FF" "#FFAA00FF" "#FFFF00FF" "#FFFF80FF"
五、直方图和柱状图的区别
hist(rnorm())
一个本质区别:
柱形图的纵坐标就是他的值(观测值本身的值)
直方图的纵坐标代表的是频率(观测值的次数)
六、密度图画法:
plot(density(rnorm(1000))
七、箱型图(箱线图)
箱体内的粗横线是中位数(有50%的观测值要比他大,有50%的观测值要比他小),
箱体的上箱框是上四分位数(25%的观测值比他大,75%的观测值比他小);箱体的下箱框是下四分位数(75%的值比他大,25%比他小);
在最外面的两个横线有叫触须,上面的一根横线叫最大值,下面的一根横线叫最小值;在箱线图以外的是离群值,(孤立点)
根据一些标准来判断(一般是根据偏离平均值多少个标准差来确定),超过阈值以后就认为是离群值
metals<-read.csv("metals.csv",header=TRUE)
#箱型图
boxplot(metals,xlab="Metals",ylab="Atmospheric COncentration in ng per cubic metre",
main="Atmospheric COncentration in London")
#从工作空间导入数据集
drugs<-read.csv("G:\\R_workspace\\drug.csv",header=TRUE)
drugs
boxplot(drugs,xlab="x", ylab="y")
drug<-drugs[2:4]
drug
boxplot(drug,xlab="drug",ylab="density")
八、热力图
#热力图
heatmap(as.matrix(mtcars),Rowv=NA,Colv=NA,
col=heat.colors(256),scale="column",
margins=c(2,8),main="Car characteristics by Model")
#基因热力图
genes<-read.csv("genes.csv",header=T)
rownames(genes)<-colnames(genes)
image(x=1,ncol(genes),y=1:nrow(genes),z=t(as.matrix(genes)),axes=FALSE,xlab="",ylab="",
main="Gene Correlation Matrix")
axis(1,at=1:ncol(genes),labels=colnames(genes),col="white",
las=2,cex.axis=0.8)
axis(1,at=1:ncol(genes),labels=rownames(genes),col="white",
las=1,cex.axis=0.8)
> install.packages("sp")
Error in install.packages : could not find function "R (>= 3."
在原装的RGUI上安装包即可
九、散点图阵(3X4);aXb--bXa理解为不同的则有6种
#对角线上是某个变量自己和自己的散点图(没有意义就不做图),
pairs(iris[,1:4])
#pch用实心圆
plot(iris[,1:4],main="Relationships between characteristics of iris flowers"
,pch=19,col="blue",cex=0.9)
#在一张画板上画多个散点图
#画板上可以放两行三列的图
par(mfrow=c(2,3))
plot(rnorm(100),col="blue",main="PlotNo.1")
plot(rnorm(100),col="blue",main="PlotNo.2")
plot(rnorm(100),col="blue",main="PlotNo.3")
plot(rnorm(100),col="blue",main="PlotNo.4")
plot(rnorm(100),col="blue",main="PlotNo.5")
plot(rnorm(100),col="blue",main="PlotNo.6")
#一个画板上指定三个图片1行3列
market<-read.csv("dailymartket.csv",header=TRUE)
par(mfrow=c(3,1))
plot(market$revenue~as.Date(market$date,"%d/%m/%y"),type="l",main="Revenue",
xlab="Date",ylab="US Dollars",col="blue")
plot(market$revenue~as.Date(market$date,"%d/%m/%y"),type="l",main="Profits",
xlab="Date",ylab="US Dollars",col="red")
plot(market$revenue~as.Date(market$date,"%d/%m/%y"),type="l",main="Customer visits",
xlab="Date",ylab="US Dollars",col="black")
绘图的一些细致工作:
1:#增加图例说明
rain<-read.csv("city.csv",header=TRUE)
#先画出散点图
plot(rain$Tokyo,type="l",col="red",ylim=c(0,300),
main="Monthly Rainly in major cities",
xlab="Month of Year",ylab="Rainfall(mm)",
lwd=2)
#在利用lines将点连接起来画成线图
lines(rain$NewYork,type="l",col="blue",lwd=2)
lines(rain$London,type="l",col="blue",lwd=2)
lines(rain$Berlin,type="l",col="blue",lwd=2)
#增加图例说明
#样式一
#"topright":放在右上角
#lty=1,lwd=2:绘画的样式
legend("topright",
legend=c("Tokyo","NewYork","London","Berlin"),
col=c("red","blue","green","orange"),lty=1,lwd=2)
#样式二
#"top":放在顶上方
#lty=1,lwd=2:绘画的样式
legend("top",
legend=c("Tokyo","NewYork","London","Berlin"),
ncol=4,cex=0.8,bty="n",
col=c("red","blue","green","orange"),
lty=1,lwd=2)
一、plot()函数:散点图
----#plot是用来画散点图的~左边是因变量;右边是自变量
plot(cars$dist~cars$speed) ,#y~x
main=”Relationship between car distance & speed” ,#表标题
xlab = "Speed(miles per hour)" ,#X坐标轴标题
ylab="Distance travelled (miles)" ,#Y坐标轴标题
xlim=c(0,30) ,#设置X轴范围从0到30
ylim=c(0,140) ,#设置Y轴范围从0到140
xaxs="i" ,#设置X轴风格internal
yaxs="i" ,#设置X轴风格internal
col="red" ,#设置“散点“”的颜色为红色
pch=19 ,#设置散点的形状为实心圆点
二、画线图
sales<-read.csv("dailysales.csv",header=TRUE)
plot(sales$units~as.Date(sales$date,"%d/%m/%y"))
#指定散点图类型为“l”表示画线图
type="l"
main="UnitSales in the month of January 2010"
xlab="Date"
ylab="Number of units sold",col="blue"
运行在R上的实例:
#plot是用来画散点图的~左边是因变量;右边是自变量
plot(cars$dist~cars$speed,xlab="speed",ylab = "ditance",xaxs="i",col="red",pch=19,main="Relation distance & speed")
sales<-read.csv("E:\\R_workspace\\dailysales.csv",header=TRUE)
plot(sales$units~as.Date(sales$date,"%d/%m/%y"),type="l"
,main="UnitSales in the month of January 2010",xlab="Date"
,ylab="Number of units sold",col="blue")
lines()函数---它也是画线图的,但是lines()是依赖散点图的
lines(sales$units~as.Date(sales$date,"%d/%m/%y"),col="red")
注意---高水平作图函数与低水平作图函数
1)高水平作图函数:可以独立绘图,例如plot()
2)低水平作图函数:必须先运行高水平作图函数绘图,然后再加上画在已有的图上面
运行在R上的实例:
#lines()
plot(sales$units~as.Date(sales$date,"%d/%m/%y"))
lines(sales$units~as.Date(sales$date,"%d/%m/%y"),col="red")
三、散点图:
在坐标系里直观地显示样本数据分布情况;
一般可以描画2-3变量(维)样本数据,更高维度的可以使用辅助的标识方法,例如:面积、颜色、文字等。
#绘制散点图y~x
plot(cars$dist~cars$speed)
#绘画散点图也可以增加颜色设置
plot(cars$dist~cars$speed,col="red")
#绑定数据集
attach(cars)
plot(speed~dist)
detach(cars)
par(mfrow=c(1,3))
#type="l"就会把散点图变成线图,他把每个点连接而成的图片
#xaxs=“i"---internal
plot(dist~speed,main="Relationshio about dist and speed--i",
xlab="Speed(meil)",ylab="Dist",type="l",col="red",xaxs="i",xaxs="i")
plot(dist~speed,main="Relationshio about dist and speed-i",
xlab="Speed(meil)",ylab="Dist",
col="red",xaxs="i",xaxs="i")
#xaxs="r"--regular
plot(dist~speed,main="Relationshio about dist and speed--r",
xlab="Speed(meil)",ylab="Dist",col="red",xaxs="r",yaxs="r")
#一下的三种会报同样的错误------Error in plot.window(...) : axis style "e" unimplemented
#xaxs="s"--standard
plot(dist~speed,main="Relationshio about dist and speed--s",
xlab="Speed(meil)",ylab="Dist",col="red",xaxs="s",yaxs="s")
#xaxs="e"--extended
plot(dist~speed,main="Relationshio about dist and speed--e",
xlab="Speed(meil)",ylab="Dist",col="red",xaxs="e")
#xaxs="d"--direct
plot(dist~speed,main="Relationshio about dist and speed--d",
xlab="Speed(meil)",ylab="Dist",col="red",xaxs="d")
#用lines把散点图画成线图
#先画出散点图
plot(cars$dist~cars$speed,pch=19)
#用lines把散点联系起来
lines(cars$dist~cars$speed,col="red")
#加上属性pch=19把散点的形状变为实心圆点
lines(cars$dist~cars$speed,col="red")
四、柱形图与barplot()函数
#从工作目录中读取文件
sales<-read.csv("G:\\R_workspace\\sales.csv")
sales
#画柱形图 y,x
barplot(sales$ProductA,names.arg=sales$City,col="black")
#加一个参数让柱状图横着画horiz=TRUE;改图会较上图转90度
barplot(sales$ProductA,names.arg=sales$City,horiz=TRUE,col="black")
#设置一个版面可以看两个图
par(mfrow=c(1:2))
#彩色柱状图的画法
#legend主要用来产生右上角的图例图
#col=heat.colors(5):heat可以产生5个向量,即5种不同的颜色
barplot(as.matrix(sales[,2:4]),beside=TRUE,legend=sales$City,
col=heat.colors(5),border="white",main="Beside")
#去掉beside之后看效果
barplot(as.matrix(sales[,2:4]),legend=sales$City,
col=heat.colors(5),border="white",main="No Beside")
> #看一下heat.colors的效果
> col=heat.colors(5)
> col
[1] "#FF0000FF" "#FF5500FF" "#FFAA00FF" "#FFFF00FF" "#FFFF80FF"
五、直方图和柱状图的区别
hist(rnorm())
一个本质区别:
柱形图的纵坐标就是他的值(观测值本身的值)
直方图的纵坐标代表的是频率(观测值的次数)
六、密度图画法:
plot(density(rnorm(1000))
七、箱型图(箱线图)
箱体内的粗横线是中位数(有50%的观测值要比他大,有50%的观测值要比他小),
箱体的上箱框是上四分位数(25%的观测值比他大,75%的观测值比他小);箱体的下箱框是下四分位数(75%的值比他大,25%比他小);
在最外面的两个横线有叫触须,上面的一根横线叫最大值,下面的一根横线叫最小值;在箱线图以外的是离群值,(孤立点)
根据一些标准来判断(一般是根据偏离平均值多少个标准差来确定),超过阈值以后就认为是离群值
metals<-read.csv("metals.csv",header=TRUE)
#箱型图
boxplot(metals,xlab="Metals",ylab="Atmospheric COncentration in ng per cubic metre",
main="Atmospheric COncentration in London")
#从工作空间导入数据集
drugs<-read.csv("G:\\R_workspace\\drug.csv",header=TRUE)
drugs
boxplot(drugs,xlab="x", ylab="y")
drug<-drugs[2:4]
drug
boxplot(drug,xlab="drug",ylab="density")
八、热力图
#热力图
heatmap(as.matrix(mtcars),Rowv=NA,Colv=NA,
col=heat.colors(256),scale="column",
margins=c(2,8),main="Car characteristics by Model")
#基因热力图
genes<-read.csv("genes.csv",header=T)
rownames(genes)<-colnames(genes)
image(x=1,ncol(genes),y=1:nrow(genes),z=t(as.matrix(genes)),axes=FALSE,xlab="",ylab="",
main="Gene Correlation Matrix")
axis(1,at=1:ncol(genes),labels=colnames(genes),col="white",
las=2,cex.axis=0.8)
axis(1,at=1:ncol(genes),labels=rownames(genes),col="white",
las=1,cex.axis=0.8)
> install.packages("sp")
Error in install.packages : could not find function "R (>= 3."
在原装的RGUI上安装包即可
九、散点图阵(3X4);aXb--bXa理解为不同的则有6种
#对角线上是某个变量自己和自己的散点图(没有意义就不做图),
pairs(iris[,1:4])
#pch用实心圆
plot(iris[,1:4],main="Relationships between characteristics of iris flowers"
,pch=19,col="blue",cex=0.9)
#在一张画板上画多个散点图
#画板上可以放两行三列的图
par(mfrow=c(2,3))
plot(rnorm(100),col="blue",main="PlotNo.1")
plot(rnorm(100),col="blue",main="PlotNo.2")
plot(rnorm(100),col="blue",main="PlotNo.3")
plot(rnorm(100),col="blue",main="PlotNo.4")
plot(rnorm(100),col="blue",main="PlotNo.5")
plot(rnorm(100),col="blue",main="PlotNo.6")
#一个画板上指定三个图片1行3列
market<-read.csv("dailymartket.csv",header=TRUE)
par(mfrow=c(3,1))
plot(market$revenue~as.Date(market$date,"%d/%m/%y"),type="l",main="Revenue",
xlab="Date",ylab="US Dollars",col="blue")
plot(market$revenue~as.Date(market$date,"%d/%m/%y"),type="l",main="Profits",
xlab="Date",ylab="US Dollars",col="red")
plot(market$revenue~as.Date(market$date,"%d/%m/%y"),type="l",main="Customer visits",
xlab="Date",ylab="US Dollars",col="black")
绘图的一些细致工作:
1:#增加图例说明
rain<-read.csv("city.csv",header=TRUE)
#先画出散点图
plot(rain$Tokyo,type="l",col="red",ylim=c(0,300),
main="Monthly Rainly in major cities",
xlab="Month of Year",ylab="Rainfall(mm)",
lwd=2)
#在利用lines将点连接起来画成线图
lines(rain$NewYork,type="l",col="blue",lwd=2)
lines(rain$London,type="l",col="blue",lwd=2)
lines(rain$Berlin,type="l",col="blue",lwd=2)
#增加图例说明
#样式一
#"topright":放在右上角
#lty=1,lwd=2:绘画的样式
legend("topright",
legend=c("Tokyo","NewYork","London","Berlin"),
col=c("red","blue","green","orange"),lty=1,lwd=2)
#样式二
#"top":放在顶上方
#lty=1,lwd=2:绘画的样式
legend("top",
legend=c("Tokyo","NewYork","London","Berlin"),
ncol=4,cex=0.8,bty="n",
col=c("red","blue","green","orange"),
lty=1,lwd=2)
相关文章推荐
- Android 学习资料收集
- C语言的二进制 十进制 ^&|~ >> <<运算
- 蓝桥杯 九宫重排
- Android - Activity
- jetty-如何配置虚拟主机【转】
- Spring MVC 教程,快速入门,深入分析
- Nokogiri 详细使用方法
- 漂亮的html表格源码
- Codeforces Round #354 (Div. 2) B (模拟)
- PuppetOpenstack Newton Design Summit见闻
- 强大的Linux Web面板Vesta
- js MDN 查看
- cookie与session简单介绍
- KOG注释[Ubuntu 15.10系统]
- C# 从Resources资源中启动应用程序,应用程序简单加壳,导出Resources中的资源为文件
- Quartz.NET c# 教程 - 课程四:Triggers
- 模拟展开select标签事件
- 客户端JavaScript
- JAVA - 回调机制
- 学习SpringMVC(二十三)之拦截器相关