R語(yǔ)言筆記R中設(shè)置圖形參數(shù)--函數(shù)par()詳解-創(chuàng)新互聯(lián)

  R有著非常強(qiáng)大的繪圖功能,我們可以利用簡(jiǎn)單的幾行代碼繪制出各種圖形來(lái),但是有時(shí)候默認(rèn)的圖形設(shè)置沒(méi)法滿足我們的需要,甚至?xí)龅礁鞣N各樣的小問(wèn)題:如坐標(biāo)軸或者標(biāo)題出界了,或者圖例說(shuō)明的大小或者位置遮擋住了圖形,甚至有時(shí)候默認(rèn)的顏色也不能滿足我們的需求。如何進(jìn)行調(diào)整呢?這就用到了“強(qiáng)大”的函數(shù)par()。我們可以通過(guò)設(shè)定函數(shù)par()的各個(gè)參數(shù)來(lái)調(diào)整我們的圖形,這篇博文就是對(duì)函數(shù)par()的各個(gè)參數(shù)進(jìn)行一下總結(jié)。

創(chuàng)新互聯(lián)于2013年成立,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項(xiàng)目網(wǎng)站建設(shè)、成都網(wǎng)站建設(shè)網(wǎng)站策劃,項(xiàng)目實(shí)施與項(xiàng)目整合能力。我們以讓每一個(gè)夢(mèng)想脫穎而出為使命,1280元奉新做網(wǎng)站,已為上家服務(wù),為奉新各地企業(yè)和個(gè)人服務(wù),聯(lián)系電話:13518219792

   函數(shù)par()的使用格式如下:

     par(..., no.readonly = FALSE)

   其中...表示所有類似于tag=value形式的參數(shù)。下面會(huì)具體的對(duì)這些參數(shù)進(jìn)行描述。當(dāng)參數(shù)no.readonly=TRUE時(shí),函數(shù)par()就只允許有這一個(gè)參數(shù)了,并且會(huì)返回當(dāng)前繪圖設(shè)備中各個(gè)參數(shù)的參數(shù)值。

   每一個(gè)圖形設(shè)備都有自己的繪圖參數(shù),如果當(dāng)前還沒(méi)有打開(kāi)繪圖設(shè)備,那么函數(shù)par()在進(jìn)行參數(shù)設(shè)置之前會(huì)自動(dòng)的打開(kāi)一個(gè)新繪圖設(shè)備。
   如前面所說(shuō),直接在R編輯器中輸入命令par()或者par(no.readonly=TRUE)都可以獲取當(dāng)前的各個(gè)繪圖參數(shù)。
    函數(shù)par()中的參數(shù)可以分為三大類:

  1. 只能讀取,不能進(jìn)行設(shè)置。包括參數(shù)cin,cra,csi,cxy, din。

  2. 只能通過(guò)函數(shù)par()進(jìn)行設(shè)置。包括參數(shù):

  • "ask",

  • "fig""fin",

  • "lheight",

  • "mai""mar""mex""mfcol""mfrow""mfg",

  • "new",

  • "oma""omd""omi",

  • "pin""plt""ps""pty",

  • "usr",

  • "xlog""ylog"

剩下的參數(shù)除了函數(shù)par()外,還可以通過(guò)各種高級(jí)繪圖函數(shù)進(jìn)行設(shè)置,如函數(shù)plot,points,lines,abline,title,text,axis,p_w_picpath,box,contour,rect,arrows等。

   當(dāng)一個(gè)參數(shù)的值被設(shè)定時(shí),默認(rèn)的會(huì)返回設(shè)定之前這個(gè)參數(shù)的值,我們可以通常一些變量把這些值保存下來(lái)。執(zhí)行完操作之后,可以利用這些歷史值進(jìn)行恢復(fù)設(shè)定(但是不建議這么做,因?yàn)榭赡軙?huì)引起一些參數(shù)值沖突)。如:

> x<-par(bg="red")
> x
$bg
[1] "transparent"

> plot(1:10)
> par(x)
> plot(1:100)

   接下來(lái)就對(duì)各個(gè)參數(shù)的含義進(jìn)行一下大概的說(shuō)明,中間會(huì)用一些簡(jiǎn)單的代碼作為示例。

    • adj。該參數(shù)值用于設(shè)定在text、mtext、title中字符串的對(duì)齊方向。0表示左對(duì)齊,0.5(默認(rèn)值)表示居中,而1表示右對(duì)齊(說(shuō)明一下,區(qū)間[0,1]內(nèi)的任何值都可以作為參數(shù)adj的有效值,并且在大部分的圖形設(shè)備中,介于區(qū)間外的值也是有效的)。注意一下,函數(shù)text中的參數(shù)adj的值可以以類似于形式adj=c(x,y)調(diào)整方向。但是在text中該參數(shù)的值影響的是對(duì)點(diǎn)的標(biāo)記,對(duì)函數(shù)mtext和title來(lái)說(shuō),參數(shù)adj的值影響的是整個(gè)圖像或設(shè)備區(qū)域。

    • > par(mfrow=c(1,2))
      > plot(1:4)
      > title("plot(1:4)",adj=0)
      > plot(1:4)
      > title("plot(1:4)",adj=1)

  • ann。如果ann=FALSE,那么高水平繪圖函數(shù)會(huì)調(diào)用函數(shù)plot.default使對(duì)坐標(biāo)軸名稱、整體圖像名稱不做任何注解。默認(rèn)值為TRUE。

> plot(1:4,ann=FALSE,main='plot(1:4,ann=FALSE)')#盡管指定了參數(shù)main的值,但是圖像中仍然沒(méi)有顯示
> plot(1:4,ann=TRUE,main='plot(1:4,ann=FALSE)')

  • ask,邏輯值。若為TRUE(且當(dāng)前的R會(huì)話是可交互狀態(tài)),則在繪制新圖像之前會(huì)要求用戶輸入確認(rèn)信息。同樣的,會(huì)對(duì)擴(kuò)展包grid和lattice的輸出有影響,甚至可能會(huì)應(yīng)用到?jīng)]有屏幕輸出的設(shè)備上(但可能會(huì)沒(méi)有效果)。

  • bg。用于設(shè)定繪圖區(qū)域的背景顏色。當(dāng)通過(guò)函數(shù)par()調(diào)用時(shí),會(huì)同時(shí)設(shè)定參數(shù)new=FALSE。對(duì)很多設(shè)備來(lái)說(shuō),該參數(shù)的初始值就是該設(shè)備的背景顏色值,其他情況下一般為"white"。需要注意一點(diǎn)的是,一些圖形函數(shù)例如plot.default和points等也有名為bg的參數(shù),但是代表的含義是不同的。

  • bty。該參數(shù)值為字符串型,用于限定圖形的邊框類型。如果bty的值為"o"(默認(rèn)值)、"l"、"7"、"c"、"u"或者"]"中的任意一個(gè),對(duì)應(yīng)的邊框類型就和該字母的形狀相似。如果bty的值為"n",表示無(wú)邊框。

  • cex。用于表示對(duì)默認(rèn)的繪圖文本和符號(hào)放大多少倍。需要注意一些繪圖函數(shù)如plot.default等也有一個(gè)相同名字的參數(shù),但是此時(shí)表示在函數(shù)par()的參數(shù)cex的基礎(chǔ)上再放大多少倍,此外還有函數(shù)points等接受一個(gè)數(shù)值向量為參數(shù)。

  • cex.axis。表示在當(dāng)前的cex設(shè)定情況下,對(duì)坐標(biāo)軸刻度值字體的放大倍數(shù)。

  • cex.lab。表示在當(dāng)前的cex設(shè)定情況下,對(duì)坐標(biāo)軸名稱字體的放大倍數(shù)。

  • cex.main。表示在當(dāng)前的cex設(shè)定情況下,對(duì)主標(biāo)題字體的放大倍數(shù)。

  • cex.sub。表示在當(dāng)前的cex設(shè)定情況下,對(duì)子標(biāo)題字體的放大倍數(shù)。

  • cin。這是一個(gè)只讀參數(shù),不能進(jìn)行修改。以形式(width,height)返回字體大小,單位為英寸。這和參數(shù)cra的作用一樣,只是測(cè)量單位不同。

  • col。用于設(shè)定默認(rèn)的繪圖顏色(無(wú)可否認(rèn)這是一個(gè)非常特別的參數(shù),以后會(huì)總結(jié)博文專門討論如何設(shè)定顏色R語(yǔ)言筆記  R中設(shè)置圖形參數(shù)--函數(shù)par()詳解)。

  • col.axis。坐標(biāo)軸刻度值的顏色,默認(rèn)為"black"。如代碼:

> par(cex.axis=3,col.axis="red")

> plot(1:4)

  • col.lab。坐標(biāo)軸名稱的顏色,默認(rèn)為"black"。

  • col.main。主標(biāo)題的顏色,默認(rèn)為"black"。

  • col.sub。子標(biāo)題的顏色,默認(rèn)為"black"。

  • cra。參見(jiàn)參數(shù)cin的說(shuō)明。

  • crt。該參數(shù)的值為一個(gè)表示度數(shù)的數(shù)值,用于表示單個(gè)字符的旋轉(zhuǎn)度數(shù),最好為90的倍數(shù)。和參數(shù)srt的不同之處在于后者是對(duì)整個(gè)字符串進(jìn)行旋轉(zhuǎn)。

  • csi。只讀參數(shù),返回默認(rèn)的字符高度,以英寸為單位。

  • cxy。只讀參數(shù),以形式(width,height)返回默認(rèn)的字符寬度、高度,其中par("cxy")=par("cin")/par("pin")。

  • din。只讀參數(shù),表示繪圖設(shè)備的尺寸規(guī)格,以形式(width,height)返回,單位為英寸。

  • family。圖形中字符的字體類型。大的長(zhǎng)度為200 bytes。默認(rèn)值為"",表示采用繪圖設(shè)備的默認(rèn)字體。

  • fg。圖形中顯著位置的顏色(如坐標(biāo)軸、刻度線,邊框等),一般默認(rèn)為"black"。

  • fig。一個(gè)數(shù)值向量,形式為c(x1, x2, y1, y2),用于設(shè)定當(dāng)前圖形在繪圖設(shè)備中所占區(qū)域,注意需要滿足x1<x2,y1<y2。如果修改參數(shù)fig,會(huì)自動(dòng)打開(kāi)一個(gè)新的繪圖設(shè)備,而若希望在原來(lái)的繪圖設(shè)備中添加新的圖形,需要和參數(shù)new=TRUE一起使用。如代碼:

> par(fig=c(0,0.5,0,0.5))
> plot(1:3)

> par(fig=c(0.5,1,0.5,1))
> plot(1:3)

> par(fig=c(0,0.5,0,0.5),new=TRUE)

> plot(1:3)

  • fin。當(dāng)前繪圖區(qū)域的尺寸規(guī)格,形式為(width,height),單位為英寸。如果修改了這個(gè)參數(shù)的值,默認(rèn)為啟動(dòng)一個(gè)新的繪圖設(shè)備。

  • font。用于設(shè)定采用哪種字型,為一個(gè)整數(shù)。1代表純文本(默認(rèn)值),2表示黑體,3表示斜體,4表示黑色斜體。在Adobe字符編碼下,5也可以。

  • font.axis。坐標(biāo)軸刻度值的字型。

  • font.lab。坐標(biāo)軸名稱的字型。

  • font.main。主標(biāo)題的字型。

  • font.sub。子標(biāo)題的字型。

  • lab。以形式c(x,y,len)表示的數(shù)值型向量,用于對(duì)坐標(biāo)軸的名稱進(jìn)行設(shè)定。值x和y用于設(shè)定x和y軸上的刻度線的個(gè)數(shù),而len設(shè)定了刻度線的長(zhǎng)度(目前R中這個(gè)值是沒(méi)有效應(yīng)的)。

  • las。只能是0,1,2,3中的某一個(gè)值,用于表示刻度值的方向。0表示總是平行于坐標(biāo)軸;1表示總是水平方向;2表示總是垂直于坐標(biāo)軸;3表示總是垂直方向。

  • lend。線段的端點(diǎn)樣式,參數(shù)值可以為一個(gè)整數(shù)或者一個(gè)字符串。參數(shù)值為0或者"round"時(shí),表示端點(diǎn)樣式為圓角(默認(rèn)值);為1或者"butt"時(shí),表示端點(diǎn)直接截?cái)?;?或者"square"表示延伸末端。如代碼:

> plot(1:8,type="n",ylim=c(1,6))
> x0<-c(1,2,3,5,6)
> y0<-rep(1,5)
> x1<-x0
> y1<-rep(6,5)
> segments(x0,y0,x1,y1)
> x0<-rep(0,4)
> y0<-seq(1.3,4.3,1)
> x1<-c(1,6,3,1)
> y1<-y0
#默認(rèn)情形
> segments(x0,y0,x1,y0,lwd=10,col="red")
#修改參數(shù)lend=1
> y0<-seq(1.6,4.6,1)
> y1<-y0
> segments(x0,y0,x1,y0,lwd=10,col="green",lend=1)
#修改參數(shù)lend=2
> y0<-seq(1.9,4.9,1)
> y1<-y0
> x0<-x1
> x1<-c(2,8,5,3)
> segments(x0,y0,x1,y0,lwd=10,col="blue",lend=2)

  • lty。直線類型。參數(shù)的值可以為整數(shù)(0為空,1為實(shí)線(默認(rèn)值),2為虛線,3為點(diǎn)線,還可以為4、5、6等),也可以為字符串(和整數(shù)是一一對(duì)應(yīng)的,如"blank"、"solid"、"dashed"、"dotted"、"dotdash"、"longdash"或者 "twodash")。

  • lwd。線條寬度。必須為一個(gè)整數(shù),默認(rèn)值為1。具體的實(shí)現(xiàn)根據(jù)設(shè)備而定,有一些繪圖設(shè)備不支持線條寬度小于1。

  • mfcol,mrow。用于設(shè)定圖像設(shè)備的布局(簡(jiǎn)單的說(shuō)就是將當(dāng)前的繪圖設(shè)備分隔成了nr*nc個(gè)子設(shè)備),參數(shù)形式為c(nr, nc)。子圖的繪圖順序是按列還是按行就分別根據(jù)是參數(shù)指定的是mfcol還是mfrow。想要實(shí)現(xiàn)相同的功能還可以利用函數(shù)layout或者split.screen。

  • mgp。設(shè)定標(biāo)題、坐標(biāo)軸名稱、坐標(biāo)軸距圖形邊框的距離。默認(rèn)值為c(3,1,0),其中第一個(gè)值影響的是標(biāo)題。

  • new。邏輯值,默認(rèn)值為FALSE。如果設(shè)定為TRUE,那么下一個(gè)高級(jí)繪圖命令并不會(huì)清空當(dāng)前繪圖設(shè)備。

  • oma。參數(shù)形式為c(bottom, left, top, right) ,用于設(shè)定外邊界。

  • omi。和參數(shù)oma的作用一樣,只是這次參數(shù)的單位為英寸。

  • pch。表示點(diǎn)的形狀,它的值可以為數(shù)值型(介于0到25之間的數(shù)值),也可以為字符型。1代表圓圈,2代表三角形,3代表“+”號(hào)。當(dāng)pch的值為字符型時(shí),那么點(diǎn)就通過(guò)該字符來(lái)表示。

  • pin。當(dāng)前的維度,形式為c(width,height),單位為英寸。

  • plt。形式為 c(x1, x2, y1, y2),設(shè)定當(dāng)前的繪圖區(qū)域。

  • pty。一個(gè)字符型參數(shù),表示當(dāng)前繪圖區(qū)域的形狀,"s"表示生成一個(gè)正方形區(qū)域,而"m"表示生成大的繪圖區(qū)域。

  • srt。字符串旋轉(zhuǎn)度數(shù),只支持函數(shù)text。

  • tck??潭染€的長(zhǎng)度,為一個(gè)小于等于的小數(shù),表示繪圖區(qū)域的高度或?qū)挾鹊囊徊糠郑ㄈ「叨然驅(qū)挾戎休^小的值)。如果tck=1,則表示繪制網(wǎng)格線。默認(rèn)值為NA(相當(dāng)于tcl=-0.5)。

  • tcl。同樣可用于設(shè)定刻度線的長(zhǎng)度,但是和tck的單位不同。它的默認(rèn)值為-0.5。

  • usr。一個(gè)形式為c(x1, x2, y1, y2)的向量,表示當(dāng)前繪圖區(qū)域的坐標(biāo)值范圍:c(xleft, xright, ybottom, ytop)。如果采用的對(duì)數(shù)刻度(如par("xlog")=TRUE),那么x坐標(biāo)軸的表示范圍為10^par("usr")[1:2],同樣也可以得到y(tǒng)坐標(biāo)軸的表示范圍。

  • xaxp。一個(gè)形式為c(x1, x2, n)的向量,表示當(dāng)par("xlog")=false時(shí),x坐標(biāo)軸的刻度線的區(qū)間及區(qū)間中的刻度線個(gè)數(shù)。若par("xlog")=TRUE,情形就稍微復(fù)雜了:若取值范圍較小,那么n是一個(gè)負(fù)數(shù),且刻度線的分布和正常情形(沒(méi)有對(duì)數(shù)轉(zhuǎn)換)下相似;若n取值為1、2、3中的一個(gè),c(x1,x2)=10^par("usr")[1:2](并且此時(shí)par("usr")是指par("xlog")=TRUE情況下返回的值)。具體解釋如下:

n=1,在坐標(biāo)值為10^j(j為整數(shù))處繪制刻度線。

n=2,在坐標(biāo)值為k*(10^j)處繪制刻度線,其中k為1或者5。

n=3,在坐標(biāo)值為k*(10^j)處繪制刻度線,其中k為1、2或者5。

  • yaxp。同xaxp類似,表示y坐標(biāo)軸的刻度線的區(qū)間及區(qū)間中的刻度線個(gè)數(shù)。

  • xaxs。坐標(biāo)軸x的間隔設(shè)定方式。取值范圍為:"r", "i""e""s""d"。一般來(lái)說(shuō),計(jì)算方式是由xlim的數(shù)值范圍確定的(如果xlim指定了的話)。"r"(regular)首先會(huì)對(duì)數(shù)值范圍向兩端各延伸4%,然后在延伸后的數(shù)值區(qū)間中設(shè)置坐標(biāo)值;"i"(internal)直接在原始的數(shù)據(jù)范圍中設(shè)置坐標(biāo)值;"s"(standard)和"e"(extended)、;"d"(direct)目前還不支持。

  • yaxs。類似于xaxs,對(duì)坐標(biāo)軸y的間隔設(shè)定方式。

  • xaxt。用于設(shè)定x坐標(biāo)軸的刻度值類型,為一個(gè)字符。"n"表示不繪制刻度值及刻度線;"s"表示繪制,默認(rèn)值。

  • yaxt。類似于xaxt。

  • xlog。一個(gè)邏輯值。如果為TRUE,表示對(duì)x軸為對(duì)數(shù)坐標(biāo)軸,默認(rèn)值為FALSE。

  • ylog。類似于xlog。

    最后,說(shuō)明一點(diǎn):如何設(shè)定顏色?R提供了很多和顏色相關(guān)的函數(shù)供我們調(diào)用,如colors()、palette()、rainbow()、rgb()、gray()、hsv()、hcl()等等。以后也會(huì)對(duì)“如何設(shè)定顏色”這一問(wèn)題進(jìn)行整理,并且接下來(lái)關(guān)于R語(yǔ)言的博文也會(huì)重點(diǎn)關(guān)注于可視化方面,包括如何繪制散點(diǎn)圖、條形圖、熱點(diǎn)圖、地圖等。

創(chuàng)新互聯(lián)www.cdcxhl.cn,專業(yè)提供香港、美國(guó)云服務(wù)器,動(dòng)態(tài)BGP最優(yōu)骨干路由自動(dòng)選擇,持續(xù)穩(wěn)定高效的網(wǎng)絡(luò)助力業(yè)務(wù)部署。公司持有工信部辦法的idc、isp許可證, 機(jī)房獨(dú)有T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確進(jìn)行流量調(diào)度,確保服務(wù)器高可用性。佳節(jié)活動(dòng)現(xiàn)已開(kāi)啟,新人活動(dòng)云服務(wù)器買多久送多久。

網(wǎng)站欄目:R語(yǔ)言筆記R中設(shè)置圖形參數(shù)--函數(shù)par()詳解-創(chuàng)新互聯(lián)
轉(zhuǎn)載來(lái)源:http://bm7419.com/article22/hsccc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供Google、網(wǎng)站設(shè)計(jì)、軟件開(kāi)發(fā)建站公司、ChatGPT、域名注冊(cè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

手機(jī)網(wǎng)站建設(shè)