图形的标题
title(main="main title",sub="sub-title",xlab="x-axis label",ylab="y-axis label")
help(title)
##title其中也可以使用"col.main/cex.lab“等对其他图形参数进行调整
坐标轴的绘制
axis(side,at=,label=,pos=,lty=,col=,las=,tck=,……) ##当自定义坐标轴时,应该禁止高级函数自动生成坐标轴,axes=FALSE,xaxt="n”或yaxt="n”可以分别禁用x/y轴
##范例一
x<-c(1:10)
y<-x
z<-10/x
opar<-par(no.readonly = T)
par(mar=c(5,4,4,8)+0.1)
plot(x,y,type='b',pch=21,col='red',yaxt='n',lty=3,ann=F)
lines(x,z,type="b",pch=22,col="blue",lty=2)
axis(2,at=x,labels=x,col.axis="red",las=2)
axis(4,at=z,labels=round(z,digits=2),col.axis="blue",las=2,cex,axis=0.7,tck=-.01)
mtext('y=1/x',side=4,line=3,cex.lab=1,las=2,col="blue")
title("An Example of Creative Axes",xlab="X values",ylab="Y=X")
par(opar)
次要刻度线
install.packages("Hmisc")
library(Hmisc)
minor.tick(nx=n,ny=n,tick.ratio=n) #前两项代表次要刻度线划分得到的区间个数,tick.ratio代表是次要刻度线相较于主刻度线的大小比例。par("tck")获得主刻度线长度
参考线abline()
abline(h=ywalues,v=xvalues)
##abline 也可以指定其他图形参数(线条类型,颜色和宽度)
图例legend()
help(legend)
example(legend)
##范例二
dose<-c(20,30,40,45,60)
drugA<-c(16,20,27,40,60)
drugB<-c(15,18,25,31,40)
opar<-par(no.readonly = T)
par(lwd=2,cex=1.5,font,lab=2)
plot(dose,drugA,type="b",pch=15,lty=1,col="read",ylim=c(0.60),main="DrugA vs DrugB",xlab="Drug Dosage",ylab="Drug Response")
lines(dose,drugB,type="b",pch=17,lty=2,col="blue")
abline(h=c(30),lwd=1.5,lty=2,col="grey")
libray(Hmisc)
minor.tick(nx=3,ny=3,tick.ratio=0.5)
legend("topleft",inset=0.05,title="Drug Type",c("A","B"),LTY=C(1,2),pch=c(15,17),col=c("red","blue"))
par(opar)
文本标注
text() #向绘图区域内部添加文本
mtext() #向四个边界之一添加文本
help(text)
##范例一
attach(mtcars)
plot(wt,mpg,main="Mileage vs. Car Weight",xlab="Weight",ylab="Mileage",pch=18,col="blue")
text(wt,mpg,row.names(mtcars),cex=0.6,pos=4,col="red")
detach(mtcars)
##范例二
opar<-par(no.readonly = T)
par(cex=1)
plot(1:7,1:7,type="n")
text(3,3,"Example of default text")
text(4,4,family="mono","Example of mono-spaced text")
text(5,5,family="serif","Example of serif text")
par(opar)
数学标注
help(plotmath)
demo(plotmath) #演示例子
#图形的组合par()或者layout()
mfrow=c(nrows,ncols)#按行填充,行数为nrow,列数为ncols的图形矩阵
nfcol=c(nrows,ncols)#按列填充,行数为nrow,列数为ncols的图形矩阵
##范例一
attach(mtcars)
opar<-par(no.readonly = T)
par(mfrow=c(2,2))
plot(wt,mpg,main="Scatterplot of wt vs. mpg")
plot(wt,disp,main="Scatterplot of wt vs. disp")
hist(wt,main="Histogram of wt")
boxplot(wt,main="Boxlot of wt")
par(opar)
detach(mtcars)
##范例二
attach(mtcars)
opar<-par(no.readonly = T)
par(mfrow=c(3,1))
hist(wt)
hist(mpg)
hist(disp)
par(opar)
detach(mtcars)
##范例三
attach(mtcars)
layout(matrix(c(1,1,2,3),2,2,byrow=T),widths=c(3,1),heights=c(1,2))#layout(mat),mat是一个矩阵,指定所在位置;还可以借助widths=和heights=两个参数
hist(wt)
hist(mpg)
hist(disp) #hist()是自带默认标题的高级绘图函数
detach(mtcars)
#更多查看help(layout)
图形布局的精细控制
fig=
ps:若出现“Error in plot.new() : figure margins too large”,可能需要调整图象大小和位置