耿秀華 冀建平
摘 要:圖形是R的一個強大功能,軟件包graphics是R標準發(fā)布版的一部分,它包含許多有用的函數(shù)以創(chuàng)建各種圖形顯示,R的繪圖命令包含高級繪圖命令和低級繪圖命令兩種,其中的高級繪圖函數(shù)有一些公用的圖形參數(shù),本文介紹了R中圖形邊框bty的設置方式,并繪圖說明了各種圖形邊框的差異。
關鍵詞:R語言;圖形邊框;bty;參數(shù)
中圖分類號:TP312 文獻標識碼:A 文章編號:1671-2064(2019)05-0049-02
1 圖形邊框
R語言中的高級繪圖函數(shù)有一些公用的圖形參數(shù),本文介紹用來設置圖形邊框的參數(shù)bty,bty是字符型參數(shù),賦值時需加雙引號,它共有7種選擇:bty=“o”表示圖形邊框是四周邊框,即上、下、左、右都有邊框,它是缺省值,也就是說圖形邊框默認為四周邊框;bty=“l(fā)”表示圖形邊框是左下邊框,左邊和下邊有邊框;bty=“7”表示圖形邊框是右上邊框,右邊和上邊有邊框;bty=“c”表示上邊、下邊及左邊有邊框;將bty設置為“u”時,左邊、右邊以及下邊有邊框;將bty設置為“]”時,上邊、下邊以及右邊有邊框;bty=“n”時無任何邊框,如表1所示。
表1 圖形邊框參數(shù)bty
2 設置圖形邊框
下面我們通過例子來比較一下不同的圖形邊框,體會參數(shù)bty的作用。
2.1 o型邊框
在R中輸入以下命令:
>a2015<-c(10,33,67,80,333,450)
>a2016<-c(21,35,78,93,490,610)
>bike<-rbind(a2015,a2016)
>colnames(bike)<-c("一年級","二年級","三年級","四年級","五年級","六年級")
>library(RColorBrewer)
>col<-colorRampPalette(brewer.pal(9,"Blues"))(12)
>barplot(bike,main="某小學2015年、2016年各年級自行車數(shù)量(鄰接條形圖)",col=col,beside
=TRUE)
>box(bty="o")
所繪圖形如圖1所示,它是一個鄰接條形圖,圖中設置bty="o",圖形邊框為四周型,即上、下、左、右四周都有邊框,這是缺省邊框類型。
2.2 l型邊框
在R中輸入以下命令:
>num<-500
>n<-100
>p<-0.3
>bino<-rbinom(num,n,p)
>library(RColorBrewer)
>mycol<-colorRampPalette(brewer.pal(9,"Blues"))(11)
>hist(bino,main="二項分布直方圖B(100,0.3)",col=mycol)
>box(bty="l")
所繪圖形如圖2所示,圖中設置bty="l"即圖形邊框為l型,圖形在左側(cè)和下側(cè)有邊框。
2.3 7型邊框
在R中輸入以下命令:
>a<-seq(1,50)
>b<-rnorm(50)
>par(bg="cornsilk")
>plot(a,b,pch=21,col="red",cex=2, bg="yellow", bty="7")
所繪圖形如圖3所示,圖中設置bty="7",在圖形的上側(cè)和右側(cè)有邊框,注意下側(cè)和左側(cè)的是坐標軸,不是圖形邊框。
2.4 u型邊框
在R中輸入以下命令:
>par(bty="u")
>x <- stats::rnorm(50)
>xr <- round(x, 1)
>stripchart(x,main="三種方式對比",col=2)
>stripchart(xr, method = "stack", add = TRUE, at = 1.2,col=3)
>stripchart(xr, method = "jitter", add = TRUE, at = 0.7,col=5)
>stripchart(xr, method = "jitter", add = TRUE, at = 0.7,col=5)
所繪圖形如圖4所示,圖中設置bty="u",這是u型邊框,左、右及下邊有邊框。
2.5 ]型邊框
在R中輸入以下命令:
>par(bty="]")
>library(RColorBrewer)
>score<-replicate(10,rnorm(75,75,sd=2))
>boxplot(score,bty="7",col=brewer.pal(10,"Paired"))
所繪圖形如圖5所示,圖中設置bty="]",這是]型邊框, 上、下及右邊有邊框。
參考文獻
[1] Emmanuel Paradis.R語言初學者指南[M].Institut des Sciences de lEvolution Universit′e Montpellier II F-34095 Montpellier c′edex 2005.
[2] R Development Core Team.R語言簡介[M].2006.
[3] 張金龍.R語言初步-數(shù)據(jù)處理、繪圖與編程[R].2010.