R语言学习记录图形的绘制(二)

时间:2022-10-09 00:16:58

开启一个新窗口

dev.new()
输入数据
dose<- c(20,30,40,45,60)
drugA<- c(16,20,27,40,60)
drugB<- c(15,18,25,31,40)

    绘图的样式:
plot(dose,drugA,type="p")
> plot(dose,drugA,type="l")
> plot(dose,drugA,type="c")
> plot(dose,drugA,type="o")
> plot(dose,drugA,type="h")
> plot(dose,drugA,type="s")
> plot(dose,drugA,type="n")

将圆点修改成三角形:
par(lty=2,pch=17)//通过这个两个参数改变圆点的形状
> plot(dose,drugA,type="b")
> par(opar)

plot(dose,drugA,type="b",lty=2,pch=17)

pch 指定绘制点时使用的符号(见图3-4)
cex 指定符号的大小。
lty 指定线条类型
lwd 指定线条宽度


plot(dose,drugB,type="b",pch=23,lty=6,col="green")

函数 title() 中亦可指定其他图形参数(如文本大小、字体、旋转角度和颜色)。举例来说,

以下代码将生成红色的标题和蓝色的副标题,以及较默认大小小25%的绿色x轴、y轴标签
title(main=”My Title”,col.main=”red”,
+ sub=”My Sub-title”,col.sub=”blue”,
+ xlab=”My x label”, ylab=”My Y label”,
+ col.lab=”green”,cex.lab=0.75)

使用plot() 语句可以新建一幅图形。而使用 lines() 语句,
你可以为一幅现有图形添加新的图形元素。在同一幅图中绘制药物A和药物B的响应情况。
函数 mtext()用于在图形的边界添加文本

函数 abline() 可以用来为图形添加参考线


绘制图表:图例
opar<- par(no.readonly=TRUE)
> par(lwd=2,cex=1.5,font.lab=2)
> plot(dose,drugA,type="b",
+ pch=15,lty=1,col="red",ylim=c(0,60),
+ main="Drug A vs Drug B",
+ xlab="Drug Dosage", ylab="Drug Respaonse")
> 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"))


文本标注:
dev.new()
> 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=TRUE)
> par(cex=1.5)
> 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)


图形的组合:
> 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)