[读书笔记] R语言实战 (三) 图形初阶
创建图形,保存图形,修改特征:标题,坐标轴,标签,颜色,线条,符号,文本标注。
1. 一个简单的例子
#输出到图形到pdf文件 pdf("mygrapg.pdf") attach(mtcars) #散点图 plot(wt~mpg) #添加趋势线 abline(lm(mpg~wt)) #添加标题 title("Regresion of mpg on weight") #输出到终端 dev.off()
2. 修改图形参数 par() 函数指定选项
符号和线条:pch: plot symbols, lty: line types, lwd: line width
dose <- c(20,30,40,45,60) drugA <- c(16,20,27,40,60) drugB <- c(15,18,25,31,40) #type = 'b' 同时绘制点和线 plot(dose,drugA,type='b') #生成含有当前图形参数设置的列表 par() #no.readonly=TRUE 生成一个可以修改的当前图像参数列表 #生成一个新的图形 dev.new() opar <- par(no.readonly = TRUE) #使用虚线lty=2,实心三角pch=17 par(lty=2,pch=17) plot(dose,drugA,type='b') par(opar)
文本属性:
cex: 指定文本大小
font: 指定字体,字号,字样
3. 添加文本,自定义坐标轴和图例
标题: title()
坐标轴: axis()
参考线:abline()
图例:legend()
#依药剂量A和B对比情况 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 = TRUE) par(lwd=2,cex=1.5,font.lab=2) #添加主标题,副标题,坐标轴名称和范围,设置颜色为红色 plot(dose,drugA,type='b',col='red',lty=2,pch=2,lwd=2, main = "DugA vs. DrugB", sub = "This is hypothetical data", xlab = "Drug Dosage",ylab = "Drug Response", xlim = c(0,60),ylim=c(0,70)) lines(dose,drugB,type='b',pch=17,lty=2,col="blue") #添加参考线 abline(h=c(30),lwd=1.5,lty=2,col='gray') library(Hmisc) minor.tick(nx=3,ny=3,tick.ratio=0.5) #添加图例 legend('topleft',inset-.05,title="Drug Type",c('A','B'), lty=c(1,2),pch=c(15,17),col=c('red','blue')) par(opar)
4. 图形组合
par() 或者layout()函数可以容易的组合多幅图形为一幅总括图形
在par()函数使用 mfrow = c(nrows, ncols)按行填充,nfcol = c(nrows, ncols) 按列填充
attach(mtcars) opar <- par(no.readonly = TRUE) 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="Boxplot of wt") par(opar) detach(mtcars)