2019-08-03 par函数用法

par(……,no.readonly=FALSE)

参数:

..arguments in tag = value form, or a list of tagged values. The tags must come from the names of graphical parameters described in the ‘Graphical Parameters’ section.(图形参数选项,一般用tag=value或向量形式展示,如col="black")

no.readonlylogical; if TRUE and there are no other arguments, only parameters are returned which can be set by a subsequent par() call on the same device.(如取值为TRUE,则可修改当前图形中的参数)

图形参数:

1、关于颜色

bg:背景色(在绘图函数中为图形填充色,在par函数中为整个图形的背景色)  fg:前景色 col:图形颜色,一般用法:col=1,或col="red",或col=rgb(1,1,1),或col=hsv(0,0,1)

col.axis:坐标轴刻度文字颜色  col.main:主标题颜色  col.sub:副标题颜色   col.lab:标签颜色

code及示例:

dose<-c(20,30,40,45,60)

drugA<-c(16,20,27,40,60)

opar<-par(bg="gray",no.readonly = TRUE)

layout(matrix(c(1,2,3,4,5,6,7,7,7),3,3,byrow = TRUE))

plot(dose,drugA,type="p",main = "type=p")

plot(dose,drugA,type="l",fg="orange",main = "type=l and fg=orange")

plot(dose,drugA,type="b",col="orangered",main = "type=b and col=orangered")

plot(dose,drugA,type="c",col.axis="yellow",main = "type=c and col.axis=yellow")

plot(dose,drugA,type="o",col.lab="red",main = "type=o and col.lab=red")

plot(dose,drugA,type="h",col.main="red",main = "type=h")

plot(dose,drugA,type="s",col.sub="green",main = "type=s",sub = "sub=green")


2、关于字体

family :全局字体,特指字体的类型,标准取值:serif,sans,mono 

font :字体,特指字体的形态,如斜体还是粗体(1:常规,2:粗体,3:斜体,4:粗斜体,5:符号字体)

font.axis:坐标轴刻度字体   font.lab:坐标轴标签字体   font.main:主标题字体  font.sub:副标题字体

code及示例:

opar<-par(bg="gray",no.readonly = TRUE)

par(mfrow=c(2,1))

dose<-c(20,30,40,45,60)

drugA<-c(16,20,27,40,60)

drugB<-c(15,18,25,31,40)

par(family="mono") #mono字体

plot(dose,drugA,type="p")

title(main="family arial style",

sub="clinical trials for drugA ")

par(family="")#默认字体

plot(dose,drugA,type="l",fg="orange")

title(main="type=l and fg=orange",sub = "clinical trials for drugA ")

par(opar)

3、关于大小

cex:相对于图形默认大小缩放倍数的数值。默认值为1,1.5为放大默认值的1.5倍,0.5为缩小默认值的50%;

cex.axis:坐标轴字体缩放倍数;  cex.lab:坐标轴标签缩放倍数   cex.main:主标题缩放倍数

cex.sub:副标题缩放倍数

ps:字体磅值(文本最终磅值为ps*cex)

code及示例:

opar<-par(no.readonly = TRUE)

par(mfrow=c(2,1))

dose<-c(20,30,40,45,60)

drugA<-c(16,20,27,40,60)

#默认状态

par(family="mono")

plot(dose,drugA,type="p")

title(main="family arial style",

sub="clinical trials for drugA ")

#字体缩放

par(family="mono")

par(cex.axis=1.5,cex.lab=2,cex.sub=1.5,cex.sub=0.8,ps=10)

plot(dose,drugA,type="p")

title(main="family arial style",

sub="clinical trials for drugA ")

par(opar)


4、关于线条及符号

pch:  绘制点时使用的符号  lty:指定线条类型   lwd:线条宽度(默认值1,lwd=2表示为默认值的2倍)

附:


code及示例

dose<-c(20,30,40,45,60)

drugA<-c(16,20,27,40,60)

par(family="mono")

plot(dose,drugA,type="b",pch=21,col="red",bg="orange",lty=3,lwd=2,main="family arial style",

sub="clinical trials for drugA ",cex.axis=1.5,

cex.lab=2,cex.sub=1.5,cex.sub=0.8,ps=10)

5、关于坐标轴,及其标签、范围(1)xlab及ylab: x、y轴的标签,可改变默认值     xlim:x轴数据范围如xlim=c(0,60)  ylim:y轴数据范围如ylim=c(0,70)(2)axis(side,at=,labels=,pos=,lty=,col=,las=,tck=,outer=,font=,lty=,lwd=,lwd.tick=,col=,col.tick=,……)

side:整数,表示在图形的哪边绘制坐标轴(1=下,2=左,3=上,4=右)

at:数值型向量,表示需要绘制刻度线的位置

labels:坐标轴刻度线旁的文字标签,如为NULL,则将使用at中的值;

pos:坐标轴线绘制位置的坐标(即与另一条坐标轴线相交位置的值);

las:标签是否平行于(=0)或垂直于(=2)坐标轴;

tck:刻度线长度(负值表示在图形外侧,正值表示在图形内侧,0表示禁用刻度,1表示绘制网格线,默认值为-0.01)(3)次要刻度线(Hmisc包对于最新的r版本已不适用)

code及示例(1)

dose<-c(20,30,40,45,60)

drugA<-c(16,20,27,40,60)

par(family="mono")

plot(dose,drugA,type="b",pch=21,col="red",bg="orange",lty=3,lwd=2,main="family mono style",

sub="clinical trials for drugA ",xlab="dosage",ylab="drug reponse",xlim=c(0,60),ylim=c(0,70)

,cex.axis=1.5,cex.lab=2,cex.sub=1.5,cex.sub=0.8,ps=10)


(2)

opar<-par(no.readonly = TRUE)

par(mar=c(5,4,4,8)+0.1)

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 = "b",pch=21,cex=0.5,col="red",xaxt="n",bg="red",lty=3,lwd=2,ann = FALSE)

lines(dose,drugB,type = "b",pch=22,cex=0.6,col="orangered",bg="orangered",lty=3)

axis(1,at=dose,label=dose,col.axis="red",las=0,tck=-0.01)

axis(4,at=drugB,labels = drugB,col.axis="blue",las=2,tck=-0.01)

mtext("drugB",side=4,line=3,las=2,col="blue")

title("An example of drug respose", xlab=" dose value",ylab="drugA")

par(opar)


6、关于图形尺寸及边界mai:设定图形四周的空白尺寸,单位是英寸,以mai=c(bottom,left,top,right)形式使用;


mar:同mai,设定图形四周的空白尺寸,以mar=c(bottom,left,top,right)形式使用,默认为mar=c(5,4,4,2)+0.1;

oma:设定文本四周的空白区域,以oma=c(bottom,left,top,right)形式使用,如下图:


omi:同oma,但单位是英寸;

omd:设定坐标轴内图形距离坐标轴的空白区域参数,以omd=c(x1,x2,y1,y2)形式使用;

code及示图:

opar<-par(no.readonly = TRUE)

par(mai=c(1,1,1,2))

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 = "b",pch=21,cex=0.5,col="red",xaxt="n",bg="red",lty=3,lwd=2,ann = FALSE)

lines(dose,drugB,type = "b",pch=22,cex=0.6,col="orangered",bg="orangered",lty=3)

axis(1,at=dose,label=dose,col.axis="red",las=0,tck=-0.01)

axis(4,at=drugB,labels = drugB,col.axis="blue",las=2,tck=-0.01)

mtext("drugB",side=4,line=3,las=2,col="blue")

title("An example of drug respose", xlab=" dose value",ylab="drugA")

par(opar)


7、关于多图形布局

(1)mfrow=c(nrows,ncols)按行填充的、行数为nrows、列数为ncols的图形矩阵;

(2)nfcol=c(nrows,ncols)按列填充矩阵;

(3)layout(mat, widths = rep.int(1, ncol(mat)),heights = rep.int(1, nrow(mat)), respect = FALSE)

   mat:矩阵,用以指定图形绘制的位置;

   widths:各列宽度值组成的一个向量;

   heights:各行高度值组成的一个向量;(相对宽度可以通过数值直接指定,绝对宽度通过lcm()来指定)布局解析请参见:http://blog.sina.com.cn/s/blog_5de124240101pxvm.html

(4)fig=c(x1,x2,y1,y2)具体意义如下:


code及图形示例dose<-c(20,30,40,45,60)

drugA<-c(16,20,27,40,60)

drugB<-c(15,18,25,31,40)

par(fig=c(0,0.8,0,0.8),new=FALSE)

plot(dose,drugA,type = "b",pch=21,cex=0.5,col="red",xaxt="n",bg="red",lty=3,lwd=2,ann = FALSE)

lines(dose,drugB,type = "b",pch=22,cex=0.6,col="orangered",bg="orangered",lty=3)

par(fig=c(0,0.8,0.69,0.95),new=TRUE)

boxplot(drugA, horizontal=TRUE, axes=FALSE)

par(fig=c(0.7,0.95,0,0.8),new=TRUE)

boxplot(drugB, axes=FALSE)

mtext("An example of drug respose", side=3, outer=TRUE, line=-3)


8、关于图例、文本及其他

(1)text(location,"text to place",pos,……)(2)mtext("text to place",side,line=n,……)


另:其他常用选项还有cex、col、font

(3)legend(location,title,legend,.....)


drugA<-c(16,20,27,40,60)

drugB<-c(15,18,25,31,40)

par(fig=c(0,0.8,0,0.8),new=FALSE)

plot(dose,drugA,type = "b",pch=21,cex=0.5,col="red",xaxt="n",bg="red",lty=3,lwd=2,ann = FALSE)

lines(dose,drugB,type = "b",pch=22,cex=0.6,col="orangered",bg="orangered",lty=3)

legend("topleft",inset = .05,title = "drug type",c("A","B"),lty = c(3,3),pch = c(21,22),col=c("red","red"))

par(fig=c(0,0.8,0.69,0.95),new=TRUE)

boxplot(drugA, horizontal=TRUE, axes=FALSE)

par(fig=c(0.7,0.95,0,0.8),new=TRUE)

boxplot(drugB, axes=FALSE)

mtext("An example of drug respose", side=3, outer=TRUE, line=-3)


9、关于par()的其他说明函数par()中的参数可以分为三大类:

(1)只能读取,不能进行设置。包括参数cin,cra,csi,cxy,din。

(2)只能通过函数par()进行设置。包括参数:"ask","fig","fin","lheight","mai","mar","mex","mfcol","mfrow","mfg","new","oma","omd","omi","pin","plt","ps","pty","usr","xlog","ylog"

(3)剩下的参数除了函数par()外,还可以通过各种高级绘图函数进行设置,如函数plot,points,lines,abline,title,text,axis,image,box,contour,rect,arrows等。

 点赞 00

分享 收藏1 回贴

相关帖子

运营方向就业班,成为互联网大厂需要的人宝洁图形推理题

调节作用图形解读因子分析中的biplot图形

eviews图形分析SAS 制作图形以及各种高分辨率图形

plant simulation 图形资料库关于基金回撤图形的问题

倾向匹配得分的图形图形编辑软件labview应用

9.png (34.63 KB)

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 206,839评论 6 482
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 88,543评论 2 382
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 153,116评论 0 344
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 55,371评论 1 279
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 64,384评论 5 374
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 49,111评论 1 285
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,416评论 3 400
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 37,053评论 0 259
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 43,558评论 1 300
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 36,007评论 2 325
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 38,117评论 1 334
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,756评论 4 324
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 39,324评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 30,315评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,539评论 1 262
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 45,578评论 2 355
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,877评论 2 345

推荐阅读更多精彩内容