R語(yǔ)言與數(shù)據(jù)可視化PPT完整全套教學(xué)課件_第1頁(yè)
R語(yǔ)言與數(shù)據(jù)可視化PPT完整全套教學(xué)課件_第2頁(yè)
R語(yǔ)言與數(shù)據(jù)可視化PPT完整全套教學(xué)課件_第3頁(yè)
R語(yǔ)言與數(shù)據(jù)可視化PPT完整全套教學(xué)課件_第4頁(yè)
R語(yǔ)言與數(shù)據(jù)可視化PPT完整全套教學(xué)課件_第5頁(yè)
已閱讀5頁(yè),還剩213頁(yè)未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

第一章R基礎(chǔ)全套可編輯PPT課件1.1什么是R?編程語(yǔ)言統(tǒng)計(jì)作圖軟件開發(fā)平臺(tái)1.2R的優(yōu)點(diǎn)免費(fèi)跨平臺(tái)簡(jiǎn)單易學(xué)程序小巧易擴(kuò)展…1.3R的安裝進(jìn)入主頁(yè):http://點(diǎn)擊主頁(yè)左側(cè)的CRAN鏈接,選擇一個(gè)鏡像進(jìn)行下載;下載完成后,我們雙擊即可執(zhí)行安裝,首先選擇安裝的語(yǔ)言,然后按照默認(rèn)的選項(xiàng)點(diǎn)擊“下一步”即可完成安裝,安裝完成后,會(huì)在桌面出現(xiàn)藍(lán)色R字圖標(biāo)的快捷方式。1.4R的操作RConsole(R控制臺(tái))在控制臺(tái)尖括號(hào)右側(cè)輸入命令,控制臺(tái)會(huì)立即返回結(jié)果。請(qǐng)嘗試輸入“1+2”并回車R的操作install.packages('quantmod')require(quantmod)getSymbols("GOOG",src="yahoo",from="2016-01-01",

to='2016-05-24')chartSeries(GOOG,up.col='red',dn.col='green')addMACD()嘗試輸入如下代碼并運(yùn)行install.packages('quantmod'):安裝quantmod包,在R中有很多執(zhí)行特殊功能的包并沒有默認(rèn)安裝,需要我們手動(dòng)進(jìn)行下載安裝,這句代碼就是下載并安裝quantmod這個(gè)金融分析相關(guān)的R包。require(quantmod):引入所需的R包,當(dāng)我們需要使用某個(gè)非默認(rèn)安裝包中的函數(shù)時(shí),必須首先引入這個(gè)包。getSymbols("GOOG",src="yahoo",from="2016-01-01",

to='2016-05-24'):利用quantmod包中的getSYmbols函數(shù),下載雅虎公司在2016年1月1日至2016年5月24日之間的股票數(shù)據(jù),并保存為GOOG。chartSeries(GOOG,up.col='red',dn.col='green'):利用所下載的數(shù)據(jù)繪圖。addMACD():增加MACD。上述操作通過安裝包、載入包、執(zhí)行函數(shù)畫圖三個(gè)過程,得到如下圖像:1.4.1程序包程序包(Package)也稱為庫(kù),是一些已編寫的函數(shù)集合,具有某些特定的功能,在R中包含兩種程序包,一種是在安裝R的時(shí)候就已經(jīng)一起進(jìn)行了安裝;另一種則需手動(dòng)下載并安裝。我們可以通過installed.packages來(lái)查看已經(jīng)安裝的包如果要使用已隨底層安裝的包,或者已經(jīng)安裝的包,可以通過點(diǎn)擊包

載入包(Packages-Loadpackage)進(jìn)行選擇,或者在控制臺(tái)輸入命令進(jìn)行載入,比如我們要載入MASS包,則可輸入:然后單擊回車,MASS包就已經(jīng)加載完成,這個(gè)時(shí)候就可以訪問MASS包里的所有函數(shù)了。載入包library(MASS)除了library()外,也可以通過require()來(lái)載入包安裝包如果找不到所需要的程序包,就說(shuō)明這個(gè)包沒有安裝,我們需要先下載程序包進(jìn)行安裝后才能使用。我們可以從R的網(wǎng)站下載壓縮包進(jìn)行安裝,也可以直接從R里進(jìn)行安裝。從R中下載安裝。直接從R中進(jìn)行下載安裝就會(huì)自動(dòng)安裝其他有關(guān)聯(lián)的安裝包。點(diǎn)擊R菜單欄中的Packages-settheCRANmirror來(lái)設(shè)定一個(gè)服務(wù)器,然后再單擊Packages-Installpackage(s),將會(huì)出現(xiàn)一個(gè)包列表,我們可以從中選擇所需要的安裝包,比如ggplot2。如果已經(jīng)知道需要安裝的包的名字,那么安裝就更簡(jiǎn)單了,比如我們需要安裝ggplot2這個(gè)包,只要在控制臺(tái)輸入如下命令:

install.packages(“ggplot2”)維護(hù)包升級(jí)update.packages()update.packages(ask=FALSE)刪除remove.packages()remove.packages(“XML2R”,lib=”d:/test/”)1.4.2基本運(yùn)算乘法(*)、除法(/)、冪運(yùn)算(^)、%%(求模)、%/%(整除)如果需要改變運(yùn)算順序,可以用小括號(hào)()將優(yōu)先運(yùn)算的部分括起來(lái),比較如下三個(gè)基本運(yùn)算的區(qū)別:2*3+4[1]102*(3+4)[1]14(2*3)+4[1]101.4.3變量變量可以保存程序運(yùn)行時(shí)用戶輸入的數(shù)據(jù)、特定運(yùn)算的結(jié)果以及要在窗體上顯示的一段數(shù)據(jù)等。R語(yǔ)言中的變量無(wú)需預(yù)先聲明,可以直接賦值。MyR<-5MyArea=3.14*MyR^2MyArea[1]78.5其中符號(hào)“<-”表示賦值的意思(兩個(gè)符號(hào)之間沒有空格),第一行代碼將數(shù)值5賦值給了變量MyR(圓的半徑)第二行代碼將變量的二次方再乘以3.14后的結(jié)果賦值給了MyArea(圓的面積)這個(gè)變量(思考:這里的賦值符號(hào)有何不同?)變量名的命名規(guī)則與其他高級(jí)語(yǔ)言類似,可包含字母、數(shù)字、點(diǎn)和下劃線,但不能以數(shù)字或一個(gè)點(diǎn)后跟數(shù)字開頭,也不能使用一些特殊符號(hào)(如+、-、*、%、<、等),除此之外,系統(tǒng)保留字及內(nèi)部函數(shù)也不能作為變量名,如if、for和sum等;思考下面哪些屬于合法的變量名:3213a*resultResultthenSQ.sum1.4.4函數(shù)函數(shù)則用于執(zhí)行固定的功能創(chuàng)建函數(shù)與執(zhí)行函數(shù):hypotenuse<-function(x,y)#創(chuàng)建函數(shù){sqrt(x^2+y^2)}hypotenuse(3,4)#執(zhí)行函數(shù)[1]5hypotenuse是我們創(chuàng)建的函數(shù)的名稱,x和y是其參數(shù),大括號(hào)中的為函數(shù)體。執(zhí)行函數(shù)時(shí),可帶參數(shù),也可省略參數(shù)(思考:有何區(qū)別?)常用數(shù)學(xué)函數(shù)函數(shù)描述abs(x)絕對(duì)值sqrt(x)平方根ceiling(x)不小于X的最小整數(shù)floor(x)不大于X的最大整數(shù)trunc(x)向0的方向截取的X中的整數(shù)部分round(x,digits=n)將X舍入為指定位的小數(shù)signif(x,digits=n)將X舍入為指定的有效數(shù)字位數(shù)cos(x)、sin(x)、tan(x)余弦、正弦和正切acos(x)、asin(x)、atan(x)反余弦、反正弦和反正切cosh(x)、sinh(x)、tanh(x)雙曲余弦、雙曲正弦和雙曲正切l(wèi)og(x,base=n)log(x)log10(x)對(duì)X取n為底的對(duì)數(shù)log(x)為自然對(duì)數(shù)log10(x)為常用對(duì)數(shù)exp(x)指數(shù)函數(shù)常用統(tǒng)計(jì)函數(shù)函數(shù)描述mean(x)平均數(shù)median(x)中位數(shù)sd(x)標(biāo)準(zhǔn)差var(x)方差mad(x)絕對(duì)中位差quantile(x,probs)求分位數(shù)。其中X為待求分位數(shù)的數(shù)值型向量,probs為一個(gè)由[0,1]之間的概率值組成的數(shù)值向量range(x)求值域sum(x)求和diff(x,lag=n)滯后差分,lad用以指定滯后幾項(xiàng)。默認(rèn)的lag值為1min(x)求最小值max(x)求最大值scale(x,center=TRUE,scale=TRUE)為數(shù)據(jù)對(duì)象X按列進(jìn)行中心化(center=TRUE)或標(biāo)準(zhǔn)化(center=TRUE,scale=TRUE)常用概率函數(shù)分布名稱縮寫分布名稱縮寫B(tài)eta分布betaLogistic分布logis二項(xiàng)分布binom多項(xiàng)分布multinom柯西分布cauchy負(fù)二項(xiàng)分布nbinom(非中心)卡方分布chisq正態(tài)分布norm指數(shù)分布exp泊松分布poisF分布fWilcoxon符號(hào)秩分布signrankGamma分布gammat分布t幾何分布geom均勻分布unif超幾何分布hyperWeibull分布Weibull對(duì)數(shù)正態(tài)分布lnormWolcoxon秩和分布wilcox常用字符串處理函數(shù)函數(shù)描述nchar(x)計(jì)算X中的字符數(shù)量substr(x,start,stop)提取或替換一個(gè)字符串中的子串grep(pattern,x,ignore,case=FALSE,fixed=FALSE在X中搜索某種模式。若fixed=FLASE,則pattern為一個(gè)正則表達(dá)式。若fix=TRUE,則pattern為一個(gè)文本字符串。返回值為匹配的下標(biāo)。sub(pattern,replacement,x,ignore.case=FALSE,fixed=FALSE在X中搜索pattern,并以文本replacement將其替換。如fixed=FALSE,則pattern為一個(gè)正則表達(dá)式。若fixed=TRUE,則pattern為一個(gè)文本字符串strsplit(x,split,fixed=FALSE)在split處分割字符串向量X中的元素。若fixed=FALSE,則pattern為一個(gè)正則表達(dá)式。若fixed=TRUE,則pattern為一個(gè)文本字符串paste(…,sep=”“)連接字符串,分隔符為septoupper(x)將字符串轉(zhuǎn)換為大寫tolower(x)將字符串轉(zhuǎn)換為小寫其他函數(shù)函數(shù)描述length(x)對(duì)象X的長(zhǎng)度seq(from,to,by)生成一個(gè)序列rep(x,n)將X重復(fù)n次cut(x,n)將連續(xù)型變量X分割為有著n個(gè)水平的因子使用選項(xiàng)ordered_result=TRUE以創(chuàng)建一個(gè)有序因子pretty(x,n)創(chuàng)建美觀的分割點(diǎn)。通過選取n+1個(gè)等間距的取整值,將一個(gè)連續(xù)型變量X分割為n個(gè)區(qū)間。cat(…,file=”myfile”,append=FALSE)連接…中的對(duì)象,并將其輸出到屏幕或文件中第二章數(shù)據(jù)的導(dǎo)入和輸出2.1數(shù)據(jù)導(dǎo)入2.1.1直接輸入數(shù)據(jù)2.1.2導(dǎo)入CSV數(shù)據(jù)2.1.3導(dǎo)入EXCEL數(shù)據(jù)2.1.4導(dǎo)入數(shù)據(jù)庫(kù)數(shù)據(jù)2.1.5導(dǎo)入其他統(tǒng)計(jì)工具數(shù)據(jù)2.1.6導(dǎo)入在R中的數(shù)據(jù)2.1.7導(dǎo)入互聯(lián)網(wǎng)數(shù)據(jù)語(yǔ)文數(shù)學(xué)英語(yǔ)政治8580829087839092837786908075788588909178788887NA8081838983798084一個(gè)簡(jiǎn)單數(shù)據(jù)集:8個(gè)學(xué)生的各科平均成績(jī)2.1.1直接輸入數(shù)據(jù)Chinese1<-85Chinese2<-87Chinese3<-83Chinese4<-80Chinese5<-88Chinese6<-78Chinese7<-80Chinese8<-83以標(biāo)量的形式將這些數(shù)據(jù)一一輸入用c()函數(shù)將多個(gè)值保存在一個(gè)變量當(dāng)中Chinese<-c(85,87,83,80,88,78,80,83)TIPS:集成開發(fā)環(huán)境2.1.2導(dǎo)入CSV數(shù)據(jù)read.tablemydataframe<-read.table(file,header=logical_vaule,sep=”delimiter,s=”name”)file參數(shù):這是必須的,可以是相對(duì)路徑或者絕對(duì)路徑(注意:Windows下路徑要用斜杠'/'或者雙反斜杠'\\')。header參數(shù):默認(rèn)為FALSE即數(shù)據(jù)框的列名為V1,V2...,設(shè)置為TRUE時(shí)第一行作為列名。sep參數(shù):分隔符,默認(rèn)為空格??梢栽O(shè)置為逗號(hào)(comma)sep=',',分號(hào)(semicolon)sep=';'和制表符(tab)。s是一個(gè)可選參數(shù),用以指定一個(gè)或多個(gè)表示行標(biāo)識(shí)的變量。results<-read.table("result.csv",head=TRUE,sep=",")#導(dǎo)入數(shù)據(jù)results

語(yǔ)文數(shù)學(xué)英語(yǔ)政治1858082902878390923837786904807578855889091786788887NA780818389883798084一個(gè)result.csv文件2.1.3導(dǎo)入excel數(shù)據(jù)

1)先轉(zhuǎn)為CSV文件,再按上節(jié)內(nèi)容進(jìn)行導(dǎo)入;2)使用RODBC包來(lái)訪問Excel文件,再通過odbcConnectExcel()進(jìn)行導(dǎo)入install.packages(“RODBC”)library(RODBC)channel<-odbcConnectExcel(“d:/Rbook/myfile.xls”)mydataframe<-sqlFetch(channel,“mysheet”)odbcClose(channel)上例中的myfile.xls是一個(gè)excel文件,mysheet是要從這個(gè)工作簿中讀取工作表的名稱,channel是一個(gè)由odbcConnectExcel()返回的RODBC連接對(duì)象,mydataframe是返回的數(shù)據(jù)框。2.1.4導(dǎo)入數(shù)據(jù)庫(kù)數(shù)據(jù)對(duì)于一些需要長(zhǎng)期更新、保存的大數(shù)據(jù),最好儲(chǔ)存在關(guān)系數(shù)據(jù)庫(kù)中,R中有很多面向關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)的接口,包括MicrosoftSQLServer、MicrosoftAccess、MySQL、Oracle、PostgreSQL、DB2、Sybase以及SQLite等。我們可以通過不同的包來(lái)訪問這些數(shù)據(jù)庫(kù)中的數(shù)據(jù),比如RMySQL、ROracle、RPostgreSQL和RSQLite,這些包都為對(duì)應(yīng)的數(shù)據(jù)庫(kù)提供了原生的數(shù)據(jù)庫(kù)驅(qū)動(dòng)。我們假設(shè)安裝mySQL時(shí),設(shè)置user為root密碼是六個(gè)1,并且已經(jīng)在mySQL中建立了一個(gè)名為test的數(shù)據(jù)庫(kù),里面有一個(gè)表hi,里面有三個(gè)字段是name,age,sex則在R中查詢按照年齡降序排列的代碼如下:library(RMySQL)con<-dbConnect(MySQL(),user="root",password="111111",dbname="test")s<-dbListTables(con)s<-dbListFields(con,"hi")dbSendQuery(con,'SETNAMESgbk')#注意該行代碼是告訴通過什么字符集來(lái)獲取數(shù)據(jù)庫(kù)字段,gbk或者utf8與你當(dāng)初設(shè)置保持一致。res<-dbSendQuery(con,"select*fromhiorderbyage")dat<-fetch(res)datdbSendQuery(con,"insertintohivalues('阿明',28,'男')")res<-dbSendQuery(con,"select*fromhiorderbyage")dat<-fetch(res)dbDisconnect(con)2.1.5導(dǎo)入其他統(tǒng)計(jì)工具數(shù)據(jù)可以通過foreign包來(lái)對(duì)其他統(tǒng)計(jì)工具中的數(shù)據(jù)進(jìn)行導(dǎo)入。如導(dǎo)入SPSS數(shù)據(jù)可以用read.spss(),導(dǎo)入SAS數(shù)據(jù)用read.ssd(),導(dǎo)入Stata數(shù)據(jù)用read.dta(),示例如下:library(foreign)mydata<-read.dta(“myfile.dta”)2.1.6包含在R中的數(shù)據(jù)R的基本包里有一個(gè)datasets,里面包含了示例數(shù)據(jù)集,同時(shí)在其他一些包中也常含有一些數(shù)據(jù)集用于代碼的測(cè)試,使用data()函數(shù)可以查看所有已加載了的包的數(shù)據(jù)集:如果想調(diào)用數(shù)據(jù)集中的數(shù)據(jù),只需要通過data函數(shù),傳入數(shù)據(jù)集的名稱及其所在包名(如果此包已被加載,可省略這個(gè)packages參數(shù))。如調(diào)用上圖中最后一個(gè)數(shù)據(jù)集women:data(“women”)可以直接利用這些數(shù)據(jù)進(jìn)行繪圖操作:plot(women)2.1.7導(dǎo)入互聯(lián)網(wǎng)數(shù)據(jù)XML包中readHTMLTable()函數(shù)readHTMLTable(doc,header=NA,colClasses=NULL,skip.rows=integer(),trim=TRUE,elFun=xmlValue,as.data.frame=TRUE,which=integer(),...)download.file()函數(shù)download.file(url,destfile,method,quiet=FALSE,mode="w",cacheOK=TRUE,extra=getOption("download.file.extra"))主要的參數(shù)為:url:文件的所在地址destfile:下載后文件的保存地址,默認(rèn)為工作目錄method:提供"internal","wget","curl"和"lynx"四種method2.2數(shù)據(jù)輸出write.table()write.xlsx()sink()write.foreign()2.3圖形格式pdf()ggsave()Rstudio中的Export菜單常見的保存圖像輸出的函數(shù)列表函數(shù)輸出圖形pdf("filename.pdf")PDF文件win.metafile("filename.wmf")Windows圖元文件png("filename.png")PBG文件jpeg("filename.jpg")JPEG文件bmp("filename.bmp")BMP文件postscript("filename.ps")PostScript文件第三章基本繪制基本繪制圖形工具是R環(huán)境的一個(gè)重要組成部分。R提供了多種繪圖相關(guān)的命令,分成三類:高級(jí)繪圖命令:在圖形設(shè)備上產(chǎn)生一個(gè)新的圖區(qū),它可能包括坐標(biāo)軸,標(biāo)簽,標(biāo)題等等。低級(jí)繪圖命令:在一個(gè)已經(jīng)存在的圖上加上更多的圖形元素,如額外的點(diǎn),線和標(biāo)簽。交互式圖形命令:允許交互式地用鼠標(biāo)在一個(gè)已經(jīng)存在的圖上添加圖形信息或者提取圖形信息。R提供了非常豐富的繪圖功能,可以通過命令library(help="graphics")來(lái)體查看R的全部繪圖函數(shù)。散點(diǎn)圖plot(x,y)(其中x,y是向量)對(duì)兩個(gè)變量畫散點(diǎn)圖。用plot(z)(其中z是一個(gè)定義了x變量和y變量的列表,或者一個(gè)兩列的矩陣)也可以達(dá)到同樣目的。如果x是一個(gè)時(shí)間序列對(duì)象(時(shí)間序列對(duì)象用ts()函數(shù)生成),plot(x)繪制時(shí)間序列曲線圖。如果x是一個(gè)普通向量,則繪制x的值對(duì)其下標(biāo)的散點(diǎn)圖。如果x是復(fù)數(shù)向量則繪制虛部對(duì)實(shí)部的散點(diǎn)圖。如果f是一個(gè)因子,則plot(f)繪制f的條形圖(每個(gè)因子水平的個(gè)數(shù))。如果f是因子,y是同長(zhǎng)度的數(shù)值向量,則plot(f,y)對(duì)f的每一因子水平繪制y中相應(yīng)數(shù)值的盒形圖。如果d是一個(gè)數(shù)據(jù)框,則plot(d)對(duì)d的每?jī)蓚€(gè)變量之間作圖(散點(diǎn)圖等)plot(1:60,type="l",main="type=l")plot(1:60,type="p",main="type=p")餅圖

pie(x,lables=names(x),edges=200,radius=0.8,density=NULL,angle=45,col=NULL,border=NULL,lty=NULL,main=NULL….)參數(shù)x向量,非負(fù)值,描述餅圖中的扇形面積或者扇形面積的比例。labels表達(dá)式或字符串,描述扇形的名稱,默認(rèn)值為names(x)。radius數(shù)值,餅圖的半徑,默認(rèn)值為0.8.clockwise邏輯變量,F(xiàn)ALSE為逆時(shí)針,TRUE為順時(shí)針init.angle數(shù)值,描述餅圖開始的角度,逆時(shí)針的默認(rèn)值為0(3點(diǎn)位置),順時(shí)針默認(rèn)為90(12點(diǎn)位置)density正整數(shù),陰影線條的密度,表示每英寸的線條個(gè)數(shù)。angle數(shù)值或向量,描述扇形陰影線條傾斜角度。x<-c(10,20,60,80)label<-c("北京","上海","廣州","深圳")pie(x,labels=label)箱線圖

boxplot(x,...,range=1.5,width=NULL,varwidth=FALSE,notch=FALSE,outline=TRUE,names,plot=TRUE,border=par("fg"),col=NULL,log="",pars=list(boxwex=0.8,staplewex=0.5,outwex=0.5),horizontal=FALSE,add=FALSE,at=NULL)range這決定了圖線從盒子里延伸出多遠(yuǎn)。如果范圍是正的,圖線延伸到最極端值點(diǎn),不超過盒子四分位線的范圍。值為零導(dǎo)致圖線擴(kuò)展到數(shù)據(jù)極端值。width表示畫圖的箱子的相對(duì)寬度的向量。varwidth如果方框?qū)挼闹凳钦?,盒子是用與觀察組的數(shù)量的平方根成正比的寬度來(lái)繪制。notch如果缺口值是真,缺口被畫在盒子的每條邊上。如果兩張圖的缺口不重疊,說(shuō)明這兩個(gè)中位數(shù)不同。outline如果輪廓值不真,異常值不會(huì)被畫出來(lái)。X1<-c(10,20,33,78,90,22)X2<-c(80.22,98.01,77.45,87.12,33.56)boxplot(X1,X2,names=c("X1","X2"),col=c(2,3))條形圖

Barplot(height,width=1,space=NULL,names.arg=NULL,legend.text=NULL,beside=FALSE,horiz=FALSE,height向量或矩陣,描述條形的長(zhǎng)度。width數(shù)值或向量,描述條形的寬度(默認(rèn)1)space數(shù)值,描述條形之間的空白的寬度,默認(rèn)值為NULLlegend.text字符串,圖例說(shuō)明。beside邏輯變量,F(xiàn)ALSE重疊,TRUE平行排列horiz邏輯變量,F(xiàn)ALSE豎條,TRUE橫條

require(grDevices)#forcolours[對(duì)色彩]tN<-table(Ni<-stats::rpois(100,lambda=8))barplot(tN,col=rainbow(30))barplot(tN,space=2.5,axisnames=FALSE,sub="barplot(space=2.5,axisnames=FALSE)")barplot(tN,border="darkblue",sub="borderdarkblue")barplot(tN,col=heat.colors(12),log="y",sub="日志尺度")直方圖

hist(x,breaks="Sturges",freq=NULL,probability=!freq,include.lowest=TRUE,right=TRUE,density=NULL,angle=45,col=NULL,main=paste("Histogramof",xname),

xlim=range(breaks),ylim=NULL,xlab=xname,ylab,axes=TRUE,plot=TRUE,labels=FALSE,nclass=NULL,warn.unused=TRUE,...)x直方圖所需的矢量的值,breaks可以取以下值代表直方圖單元之間的斷點(diǎn)的向量計(jì)算斷點(diǎn)向量的函數(shù)提供直方圖的單元格數(shù)的單一數(shù)字用來(lái)命名計(jì)算單元格數(shù)目算法的字符串(見“細(xì)節(jié)”)一個(gè)計(jì)算單元格數(shù)目的函數(shù)。

freq這是一個(gè)邏輯值;如果是真,直方圖圖表則表示頻率,結(jié)果的計(jì)數(shù)部分;如果假,概率密度,組件密度,被繪制出來(lái)(因此,直方圖有一個(gè)總面積)。當(dāng)且僅當(dāng)中斷等距時(shí)默認(rèn)為真(和概率不確定)。hist(mtcars$mpg,breaks=20)

QQ圖

qqnorm(y,ylim,main="NormalQ-QPlot",xlab="TheoreticalQuantiles",ylab="SampleQuantiles",plot.it=TRUE,datax=FALSE,...)qqline(y,datax=FALSE,distribution=qnorm,probs=c(0.25,0.75),qtype=7,...)qqplot(x,y,plot.it=TRUE,xlab=deparse(substitute(x)),ylab=deparse(substitute(y)),...)x

QQ圖的首個(gè)樣本y第二個(gè)或唯一一個(gè)數(shù)據(jù)樣本xlab,ylab,main圖標(biāo)簽。當(dāng)數(shù)據(jù)x=TRUE時(shí),xlab和ylab分別指的是x和y軸plot.it邏輯值,結(jié)果是否應(yīng)該被畫圖datax邏輯值。數(shù)據(jù)值是否應(yīng)該在X軸上distribution分位數(shù)函數(shù)參見理論分布probs長(zhǎng)度為2的數(shù)值向代表概率。相應(yīng)的分位數(shù)對(duì)定義繪制的線qtype分位數(shù)計(jì)算中使用分位數(shù)的類型y<-rt(200,df=5)qqnorm(y);qqline(y,col=2)qqplot(y,rt(300,df=5))協(xié)同圖

coplot(formula,data,given.values,panel=points,row,columns,show.given=TRUE,col=par(“fg”),pch=par(“pch”),bar.bg=c(num=gray(0.8),fac=gray(0.95)),xlab=c(,paste(“Given:”,)),ylab=c(,paste(Given:”,s)),subscripts=FALSE,axlabs=function(f)abbreviate(levels(f)),number=6,overlap=0.5,xlim,ylim)formula公式如“y~x|a*b”表示兩個(gè)條件變量。data數(shù)據(jù)框panel函數(shù),繪制面板數(shù)據(jù)的方法,默認(rèn)為points如果z是一個(gè)數(shù)值型變量,則coplot()先對(duì)z的取值分組,然后對(duì)z的每一組取值分別繪圖。甚至可以用如coplot(y~x|x1+x2)表示對(duì)x1和x2的每一水平組合繪圖。x=1:9y=5:13z=x+ycoplot(x~y|z)星相圖

stars(x,full=TRUE,scale=TRUE,radius=TRUE,labels=dimnames(x)[[1]],locations=NULL,nrow=NULL,ncol=NULL,len=1,key.loc=NULL,key.labels=dimnames(x)[[2]],key.xpd=TRUE,xlim=NULL,ylim=NULL,flip.labels=NULL,draw.segments=FALSE,col.segments=1:n.seg,col.stars=NA,col.lines=NA,axes=FALSE,frame.plot=axes,main=NULL,sub=NULL,xlab="",ylab="",cex=0.8,lwd=0.25,lty=par("lty"),xpd=FALSE,mar=pmin(par("mar"),1.1+c(2*axes+(xlab!=""),2*axes+(ylab!=""),1,0)),add=FALSE,plot=TRUE,...)x矩陣或數(shù)據(jù)幀的數(shù)據(jù)。一個(gè)星或部分圖將為每一行生成x。缺失值(NA)是允許的,但他們被視為0(縮放后,如果相關(guān))full邏輯標(biāo)志:如果是真,這部分圖會(huì)占據(jù)一個(gè)完整的圓形。否則,他們只占據(jù)(上)半個(gè)圓形。scale邏輯標(biāo)志:如果是真,數(shù)據(jù)矩陣獨(dú)立分割,這樣每一列的最大值為1,最小值為0。如果是假,假設(shè)數(shù)據(jù)已經(jīng)被其他一些其他算法擴(kuò)展到范圍[0,1]。radius邏輯標(biāo)志:如果是真,半徑對(duì)應(yīng)每個(gè)向量的數(shù)據(jù)。labels字符串的向量標(biāo)識(shí)圖。與S函數(shù)星不同,如果標(biāo)簽=NULL沒有嘗試構(gòu)建標(biāo)簽len半徑長(zhǎng)或段長(zhǎng)比例因子key.loc單元鍵x和y坐標(biāo)的向量key.xpd斷開單元鍵的轉(zhuǎn)換(圖和標(biāo)簽),參見par(xpd)require(grDevices)stars(mtcars[,1:7],key.loc=c(14,2),main="MotorTrendCars:stars(*,full=F)",full=FALSE)stars(mtcars[,1:7],key.loc=c(14,1.5),main="MotorTrendCars:fullstars()",flip.labels=FALSE)熱度圖

heatmap(x,Rowv=NULL,Colv=if(symm)"Rowv"elseNULL,distfun=dist,hclustfun=hclust,reorderfun=function(d,w)reorder(d,w),add.expr,symm=FALSE,revC=identical(Colv,"Rowv"),scale=c("row","column","none"),na.rm=TRUE,margins=c(5,5),ColSideColors,

RowSideColors,cexRow=0.2+1/log10(nr),cexCol=0.2+1/log10(nc),

labRow=NULL,labCol=NULL,main=NULL,xlab=NULL,ylab=NULL,keep.dendro=FALSE,

verbose=getOption("verbose"),...)x繪圖值的數(shù)字矩陣Rowv確定是否以及如何計(jì)算行系統(tǒng)樹圖和重新排序。要么是系統(tǒng)樹圖或一個(gè)數(shù)值向量的值被用于重新排序行系統(tǒng)樹圖或NA抑制任何行系統(tǒng)樹圖(和重新排序)或在默認(rèn)情況下空。Colv確定系統(tǒng)樹圖如何以及是否應(yīng)該重新排序。有和如上Rowv參數(shù)相同的選項(xiàng)或者當(dāng)x是一個(gè)方陣,Colv=“Rowv”意味著列應(yīng)該與行被相同對(duì)待(如果是沒有行系統(tǒng)樹圖將也沒有一列)。distfun用于計(jì)算兩種行和列之間的距離(不同)的函數(shù)。默認(rèn)為距離。hclustfun當(dāng)Rowv或Colv不是系統(tǒng)樹圖用于計(jì)算分層聚類的函數(shù)。默認(rèn)為hclust。應(yīng)該拿來(lái)作為參數(shù)distfun的結(jié)果并且返回一個(gè)對(duì)象。系統(tǒng)樹圖可以被應(yīng)用。require(graphics);require(grDevices)x<-as.matrix(mtcars)rc<-rainbow(nrow(x),start=0,end=.3)cc<-rainbow(ncol(x),start=0,end=.3)hv<-heatmap(x,col=cm.colors(256),scale="column",RowSideColors=rc,ColSideColors=cc,margins=c(5,10),xlab="specificationvariables",ylab="CarModels",main="heatmap(<Mtcarsdata,...,scale=\"column\")")密度圖

density(x,...)##DefaultS3method:density(x,bw="nrd0",adjust=1,kernel=c("gaussian","epanechnikov","rectangular","triangular","biweight","cosine","optcosine"),weights=NULL,window=kernel,width,give.Rkern=FALSE,n=512,from,to,cut=3,na.rm=FALSE,...)x估計(jì)計(jì)算的數(shù)據(jù)。bw使用的平滑帶寬。內(nèi)核被擴(kuò)展,致使平滑的標(biāo)準(zhǔn)差內(nèi)核。bw也可以提供選擇帶寬的規(guī)則的字符串。參見bw.nrd默認(rèn),“nrd0”,保持著默認(rèn)歷史和兼容性的原因,而不是一個(gè)一般建議,例如,“SJ”更適合,參見Venables和Ripley(2002)。指定(或計(jì)算)的bw值調(diào)整加倍。adjust所使用的帶寬實(shí)際上是*bw。這使得它更容易成為指定值像“默認(rèn)一半“的帶寬。kernel,window一個(gè)字符串表示平滑內(nèi)核。這部分必須匹配“高斯”之一,“矩形”、“三角形”,“epanechnikov”、“biweight”,“余弦”或“optcosine”,默認(rèn)“高斯”,可能縮寫成一個(gè)獨(dú)特的前綴(單個(gè)字母)?!坝嘞摇北取皁ptcosine”平滑,這是通常在文獻(xiàn)中的余弦內(nèi)核,并且總是MSE-

efficient。然而,“余弦”是S使用的版本。plot(density(rnorm(1000)))其他函數(shù)

除了上述的plot函數(shù),R語(yǔ)言還提供了更多的plot函數(shù),主要如下matplot(x,y)二元圖,其中x的第一列對(duì)應(yīng)y的第一列,x的第二列對(duì)應(yīng)y的第二列,依次類推。coplot(x~y|z)關(guān)于z的每個(gè)數(shù)值(或數(shù)值區(qū)間)繪制x與y的二元圖interaction.plot(f1,f2,y)如果f1和f2是因子,作y的均值圖,以f1的不同值作為x軸,而f2的不同值對(duì)應(yīng)不同曲線;可以用選項(xiàng)fun指定y的其他的統(tǒng)計(jì)量(缺省計(jì)算均值,fun=mean)fourfoldplot(x)用四個(gè)四分之一圓顯示2X2列聯(lián)表情況(x必須是dim=c(2,2,k)的數(shù)組,或者是dim=c(2,2)的矩陣,如果k=1)assocplot(x)Cohen–Friendly圖,顯示在二維列聯(lián)表中行、列變量偏離獨(dú)立性的程度sunflowerplot(x,y)同上,但是以相似坐標(biāo)的點(diǎn)作為花朵,其花瓣數(shù)目為點(diǎn)的個(gè)數(shù)mosaicplot(x)列聯(lián)表的對(duì)數(shù)線性回歸殘差的馬賽克圖contour(x,y,z)等(畫曲線時(shí)用內(nèi)插補(bǔ)充空白的值)image(x,y,z)同上,但是實(shí)際數(shù)據(jù)大小用不同色彩表示persp(x,y,z)同上,但為透視圖stars(x)如果x是矩陣或者數(shù)據(jù)框,用星形和線段畫出symbols(x,y,...)在由x和y給定坐標(biāo)畫符號(hào)(圓,正方形,長(zhǎng)方形,星,溫度計(jì)式或者盒形圖),符號(hào)的類型、大小、顏色等由另外的變量指定termplot(mod.obj)回歸模型(mod.obj)的(偏)影響圖第四章參數(shù)控制基本繪制鑒于繪制有特殊需要的圖形是R語(yǔ)言繪圖的一個(gè)強(qiáng)項(xiàng),而使用圖形參數(shù)是完成此類任務(wù)的重要手段,我們?cè)诒菊略敿?xì)地介紹R繪圖的各種圖形參數(shù)。這些圖形參數(shù)可以大體上分為以下的幾個(gè)大類,我們將分別介紹:圖形參數(shù)文本參數(shù)圖例參數(shù)網(wǎng)格參數(shù)坐標(biāo)軸參數(shù)圖形參數(shù)

par(...,no.readonly=FALSE)<highlevelplot(...,<tag=<value)函數(shù)par()中的參數(shù)可以分為三大類:只能讀取,不能進(jìn)行設(shè)置。包括參數(shù)cin,cra,csi,cxy,din。只能通過函數(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()外,還可以通過各種高級(jí)繪圖函數(shù)進(jìn)行設(shè)置,如函數(shù)plot,points,lines,abline,title,text,axis,image,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ù)值沖突)。具體參數(shù)

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)整圖中字符的相對(duì)位置;取值:長(zhǎng)度為2的數(shù)值向量,分別表示字符邊界矩形框的左下角相對(duì)坐標(biāo)點(diǎn)(x,y)位置的調(diào)整,向量的兩個(gè)數(shù)值一般都在[0;1]范圍中(有些圖形設(shè)備中也可以超出此范圍),表示字符串以左下角為基準(zhǔn)、根據(jù)自身的寬度和高度分別向左和向下移動(dòng)的比例,默認(rèn)為c(0.5,0.5)。例如c(0,0)表示整個(gè)字符(串)的左下角對(duì)準(zhǔn)設(shè)定的坐標(biāo)點(diǎn),而c(1,0)則表示字符串橫向移動(dòng)了自身寬度的距離,而縱向不受影響。但是在text中該參數(shù)的值影響的是對(duì)點(diǎn)的標(biāo)記,對(duì)函數(shù)mtext和title來(lái)說(shuō),參數(shù)adj的值影響的是整個(gè)圖像或設(shè)備區(qū)域。取負(fù)值時(shí)對(duì)齊位置在文本左邊的地方;如果給出兩個(gè)值(例如c(0,0)),第二個(gè)只控制關(guān)于文字基線的垂直調(diào)整。axes是否畫坐標(biāo)軸;注意只會(huì)影響到是否畫出坐標(biāo)軸線和刻度,不會(huì)影響坐標(biāo)軸標(biāo)題。asp圖形縱橫比y=x;通常情況下這個(gè)比率不是1,有些情況下需要設(shè)置以顯示更好的圖形效果,例如需要從角度表現(xiàn)直線的斜率:若asp不等于1,那么45_的角可能看起來(lái)并不像真實(shí)的45_然后我們看看默認(rèn)的散點(diǎn)圖函數(shù)plot.default()。對(duì)于一般的散點(diǎn)圖(兩個(gè)數(shù)值變量之間),我們只需要調(diào)用plot()即可,如plot(x,y),而不必寫明plot.default(x,y),原因就是plot()是泛型函數(shù),它會(huì)自動(dòng)判斷傳給它的數(shù)據(jù)類型從而采取不同的作圖方式。plot.default()的參數(shù)當(dāng)然包含了前面介紹的plot()中那些參數(shù),此外還有:x,y欲作散點(diǎn)圖的兩個(gè)向量;如果y缺失,那么就用x對(duì)它的元素位置(1:n的整數(shù))作散點(diǎn)圖,lim,ylim設(shè)置坐標(biāo)系的界限,兩個(gè)參數(shù)都取長(zhǎng)度為2的向量,它們的作用類似par()中的usr參數(shù)。bg用于設(shè)定繪圖區(qū)域的背景顏色。當(dāng)通過函數(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ù),但是代表的含義是不同的。這里設(shè)置的只是可以畫背景色的點(diǎn)的背景色,而不是設(shè)置整幅圖形的背景色,bg指定背景色(例如bg="red",bg="blue";用colors()可以顯示657種可用的顏色名)。Bty控制圖形邊框形狀,可用的值為:"o","l","7","c","u"和"]"(邊框和字符的外表相像);這些字符本身的形狀對(duì)應(yīng)著邊框樣式,比如(默認(rèn)值)o表示四條邊都顯示,而c表示不顯示右側(cè)邊如果bty="n"則不繪制邊框。box()在當(dāng)前的圖上加上邊框。cex控制缺省狀態(tài)下符號(hào)和文字大小的值,用于表示對(duì)默認(rèn)的繪圖文本和符號(hào)放大多少倍。需要注意一些繪圖函數(shù)如plot.default等也有一個(gè)相同名字的參數(shù),但是此時(shí)表示在函數(shù)par()的參數(shù)cex的基礎(chǔ)上再放大多少倍,此外還有函數(shù)points等接受一個(gè)數(shù)值向量par(cex.axis=4,col.axis="red")plot(1:6)plot(1:8,type="n",ylim=c(1,6))x0<-c(1,2,3,5,6)y0<-rep(1,5)x1<-x0y1<-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")y0<-seq(1.6,4.6,1)y1<-y0segments(x0,y0,x1,y0,lwd=10,col="green",lend=1)y0<-seq(1.9,4.9,1)y1<-y0x0<-x1x1<-c(2,8,5,3)segments(x0,y0,x1,y0,lwd=10,col="blue",lend=2)plot(0:6,type='n')for(iinc(0:6)){abline(h=i,lty=i,lwd=i)}文本參數(shù)

text(x,y=NULL,labels=seq_along(x),adj=NULL,pos=NULL,offset=0.5,vfont=NULL,cex=1,col=NULL,font=NULL,...)mtext(text,side=3,line=0,outer=FALSE,at=NA,adj=NA,padj=NA,cex=NA,col=NA,font=NA,...)x,y文本標(biāo)簽表示坐標(biāo)的數(shù)值向量。labels一個(gè)特征向量或表達(dá)式指定文本編寫。通過作為特征向量試圖迫使其他語(yǔ)言對(duì)象(姓名和電話)變成表達(dá)式,和向量和其他分類對(duì)象。adj一個(gè)或兩個(gè)在[0,1]的值,指定的x(和可選y)調(diào)整標(biāo)簽。pos說(shuō)明文本的位置。如果指定,它將覆蓋adj表示的任何值。值1、2、3和4分別顯示位置下面,左邊,右邊,和上面指定的坐標(biāo)。offset當(dāng)pos指定時(shí),這個(gè)值表示指定坐標(biāo)的標(biāo)簽偏移字符寬度的分?jǐn)?shù)vfont空為當(dāng)前的字體集合,或者一個(gè)長(zhǎng)度為2的Hershey字體的特征向量。向量選擇字體的第一個(gè)元素和第二個(gè)元素選擇一個(gè)風(fēng)格。如果標(biāo)簽是一個(gè)表達(dá)式忽略。plot(-1:1,-1:1,type="n",xlab="Re",ylab="Im")K<-16;text(exp(1i*2*pi*(1:K)/K),col=2)圖例參數(shù)

legend(x,y=NULL,legend,fill=NULL,col=par("col"),border="black",lty,lwd,pch,angle=45,density=NULL,bty="o",bg=par("bg"),box.lwd=par("lwd"),box.lty=par("lty"),box.col=par("fg"),pt.bg=NA,cex=1,pt.cex=cex,pt.lwd=lwd,xjust=0,yjust=1,ersp=1,ersp=1,adj=c(0,0.5),text.width=NULL,text.col=par("col"),text.font=NULL,merge=do.lines&&has.pch,trace=FALSE,plot=TRUE,ncol=1,horiz=FALSE,title=NULL,inset=0,xpd,title.col=text.col,title.adj=0.5,seg.len=2)x,yX,y用于定位圖例,也可用單鍵詞"bottomright","bottom","bottomleft","left","topleft","top","topright","right"and"center"legend

字符或表達(dá)式向量fill

用特定的顏色進(jìn)行填充col

圖例中出現(xiàn)的點(diǎn)或線的顏色border

當(dāng)fill=參數(shù)存在的情況下,填充色的邊框c6<-terrain.colors(10)[1:6]for(iin1:4){plot(1,type="n",axes=FALSE,ann=FALSE);title(paste("text.font=",i))legend("top",legend=LETTERS[1:6],col=c6,ncol=2,cex=2,lwd=3,text.font=i,text.col=c6)}網(wǎng)格參數(shù)

grid(nx=NULL,ny=nx,col="lightgray",lty="dotted",lwd=par("lwd"),equilogs=TRUE)nx,ny網(wǎng)格在x和y方向單元格的數(shù)量。當(dāng)為空L,按默認(rèn)情況下,網(wǎng)格上的刻度線與對(duì)應(yīng)的默認(rèn)軸(即。由axTicks,tickmarks計(jì)算)。當(dāng)NA,在相應(yīng)的方向不繪制網(wǎng)格線。col

字符或數(shù)字(整數(shù));網(wǎng)格線的顏色lty

字符或數(shù)字(整數(shù));網(wǎng)格線的線類型lwd網(wǎng)格線寬的非負(fù)數(shù)字plot(1:3)grid(NA,5,lwd=2)坐標(biāo)軸參數(shù)

axis(side,at=NULL,labels=TRUE,tick=TRUE,line=NA,pos=NA,outer=FALSE,font=NA,lty="solid",lwd=1,lwd.ticks=lwd,col=NULL,col.ticks=NULL,hadj=NA,padj=NA,...)side一個(gè)指定的哪一邊畫軸的整數(shù)。軸放置如下:1=下面,2=左面3上面=4=右面at繪制刻度線的點(diǎn)。非限定的(無(wú)限,NAN或NA)值省略。在默認(rèn)情況下(當(dāng)出現(xiàn)空)計(jì)算軸線位置,請(qǐng)參見下面的“細(xì)節(jié)labels這可以是一個(gè)邏輯值指定(數(shù)值)注釋是否是tickmarks,或在tickpoints放置的一個(gè)字符或標(biāo)簽的表達(dá)向量。(其他對(duì)象由as.graphicsAnnot決定。)如果這不是邏輯值,還應(yīng)該提供相同的長(zhǎng)度。如果強(qiáng)制后長(zhǎng)度為零的標(biāo)簽,當(dāng)出現(xiàn)真,它有同樣的效果。tick

一個(gè)邏輯值指定tickmarks和軸心線是否應(yīng)該被繪制plot(1:10,xaxt="n")axis(1,xaxp=c(2,9,7))綜合示例

x<-c(1:6);y<-x;z<-6/xpar(mar=c(5,4,4,8)+0.1)plot(x,y,type="b",pch=21,col="red",yaxt="n",lty=3,xlab="",ylab="")lines(x,z,type="b",pch=22,col="blue",lty=2)axis(2,at=x,labels=x,col.axis="red",las=2)axis(4,at=z,labels=round(z,digits=2),col.axis="blue",las=2,cex.axis=0.7,tck=-.01)mtext("y=1/x",side=4,line=3,cex.lab=1,las=2,col="blue")title("參數(shù)控制綜合示例",xlab="X",ylab="Y=X")第五章低級(jí)繪圖

常用的低級(jí)圖形函數(shù)points(x,y)lines(x,y)在當(dāng)前圖形上疊加一組點(diǎn)或線??梢允褂胮lot()的type=參數(shù)來(lái)指定繪制方法,缺省時(shí)points()畫點(diǎn),lines()畫線。text(x,y,labels,...)在由坐標(biāo)x和y給出的位置標(biāo)出由labels指定的字符串。labels可以是數(shù)值型或字符型的向量,labels[i]在x[i],y[i]處標(biāo)出。abline(a,b)abline(h=y)abline(v=x)abline(lm.obj)在當(dāng)前圖形上畫一條直線。兩個(gè)參數(shù)a,b分布給出截距和斜率。指定h=參數(shù)時(shí)繪制水平線,指定v=參數(shù)時(shí)繪制垂直線。以一個(gè)最小二乘擬合結(jié)果lm.obj作為參數(shù)時(shí)由lm.obj的$coefficients成員給出直線的截距和斜率。polygon(x,y,...)以由向量x給出的橫坐標(biāo)和向量y給出的縱坐標(biāo)為頂點(diǎn)繪制多邊形??梢杂胏ol=參數(shù)指定一個(gè)顏色填充多邊形內(nèi)部。點(diǎn)和線

points(x,y=NULL,type="p",...)lines(x,y=NULL,type="l",...)x,y數(shù)值向量,表示點(diǎn)的坐標(biāo)type字符串,表示類型plot(-4:4,-4:4,type="n")points(rnorm(200),rnorm(200),col="red")points(rnorm(100)/2,rnorm(100)/2,col="blue",cex=1.5)直線和線段

abline(a=NULL,b=NULL,h=NULL,v=NULL,reg=NULL,coef=NULL,untf=FALSE,...)segments(x0,y0,x1=x0,y1=y0,col=par("fg"),lty=par("lty"),lwd=par("lwd"),...)a,b截距和斜率,單一值untf邏輯值,問是否轉(zhuǎn)換。h水平線的y值(s)v垂直線的x值(s)coef長(zhǎng)度為2表示截距和斜率的向量

reg系數(shù)方法下的對(duì)象。x0,y0繪制的點(diǎn)的坐標(biāo)。x1,y1繪制點(diǎn)的坐標(biāo)。至少有一個(gè)必須提供col,lty,lwd標(biāo)準(zhǔn)圖形參數(shù)plot(c(-2,3),c(-1,5),type="n",xlab="x",ylab="y",asp=1)abline(h=0,v=0,col="gray60")text(1,0,"abline(h=0)",col="gray60",adj=c(0,-.1))abline(h=-1:5,v=-2:3,col="lightgray",lty=3)abline(a=1,b=2,col=2)矩形

rect(xleft,ybottom,xright,ytop,density=NULL,angle=45,col=NA,border=NULL,lty=par("lty"),lwd=par("lwd"),...)xleft表示左邊x的位置一個(gè)向量(或標(biāo)量)

ybottom表示底部y位置一個(gè)向量(或標(biāo)量)。xright表示右邊x的位置一個(gè)向量(或標(biāo)量)

ytop表示頂部Y的位置一個(gè)向量(或標(biāo)量)

density陰影線每英寸的密度,。NULL的默認(rèn)值意味著沒有繪制陰影線。零值密度意味著沒有陰影線,負(fù)值(NA)抑制陰影(所以允許顏色填充)。##setuptheplotregion:plot(c(100,250),c(300,450),type="n",xlab="",ylab="",main="矩形繪制示例")i<-4*(0:10)##drawrectangleswithbottomleft(100,300)+i##andtopright(150,380)+irect(100+i,300+i,150+i,380+i,col=rainbow(11,start=0.7,end=0.1))rect(240-i,320+i,250-i,410+i,col=heat.colors(11),lwd=i/5)多邊形

polygon(x,y=NULL,density=NULL,angle=45,border=NULL,col=NA,lty=par("lty"),...,fillOddEven=FALSE)x,y包含多邊形頂點(diǎn)坐標(biāo)的向量density每英寸陰影線的密度。NULL的默認(rèn)值意味著沒有陰影線。零值密度意味著沒有陰影沒有填充。angle陰影線的斜率,用度表示的角(逆時(shí)針)。col填充多邊形的顏色。默認(rèn)保持多邊形不被填充,除非指定密度。如果指定密度為正值,表示陰影線的顏色border繪制邊界的顏色。默認(rèn)使用標(biāo)準(zhǔn)(fg)。使用邊界=NA則忽略邊界。x<-c(1:9,8:1)y<-c(1,2*(5:3),2,-1,17,9,8,2:9)op<-par(mfcol=c(3,1))for(xpdinc(FALSE,TRUE,NA)){plot(1:10,main=paste("xpd=",xpd))box("figure",col="pink",lwd=3)polygon(x,y,xpd=xpd,col="blue",lty=2,lwd=2,border="green")}par(op)綜合示例

require(stats)sale5<-c(6,4,9,7,6,12,8,10,9,13)plot(sale5,new=T)abline(lsfit(1:10,sale5))abline(lsfit(1:10,sale5,intercept=FALSE),col=4)abline(h=6,v=8,col="gray60")text(8,6,"abline(h=6)",col="gray60",adj=c(0,-.1))abline(h=4:8,v=6:12,col="lightgray",lty=3)abline(a=1,b=2,col=2)text(5,11,"abline(1,2)",col=2,adj=c(-.1,-.1))segments(6,4,9,5,col="green")text(6,5,"segments(6,4,9,5)")lines(sale5,col="pink")第六章面板調(diào)整

面板調(diào)整R語(yǔ)言中的面板調(diào)整主要包含屏幕和布局。屏幕Screen:

用x11()等函數(shù)打開圖形設(shè)備之后,就可以使用相應(yīng)的screen函數(shù)了。比如split.screen(c(2,2))該函數(shù)用于將screen分成2行2列,標(biāo)識(shí)符按行分別從1到2*2標(biāo)記,參數(shù)向量用于指定每個(gè)screen的標(biāo)識(shí)符,注意不能分割太多,會(huì)造成圖畫不下的情況。split.screen(c(1,2),screen=2)可以將子screen再次進(jìn)行分割screen這個(gè)參數(shù)用于指定需要再次分割的標(biāo)識(shí)符。下去就是畫圖了。screen(2)用于選中標(biāo)識(shí)符為2的子屏幕,以后的畫圖函數(shù)都在2這個(gè)子屏幕中生效,如果2這個(gè)子屏幕中已經(jīng)被畫過了,它會(huì)清空已經(jīng)畫過的。如果不想清空只需screen(2,FALSE)即可。erase.screen(n=)用于清空指定標(biāo)識(shí)符上的圖形,close.screen(n,all.screens=FALSE)關(guān)閉屏幕,相當(dāng)于清空了標(biāo)識(shí)符,因此再也不能定位到相應(yīng)的屏幕了。布局Layout:相比screen函數(shù),還有一個(gè)Layout,比screen更加靈活(理論上可以設(shè)置出任意的布局),也更加方便。layout(mat,widths,heights):mat用于劃分整個(gè)布局,如果mat中兩塊數(shù)字相同則布局顯示時(shí)候會(huì)將那兩塊顯示在一起。Widths和heights都是一個(gè)向量,長(zhǎng)度分別和列數(shù)和行數(shù)相同,用來(lái)表示每一塊列或者行的相對(duì)長(zhǎng)度。如果要用絕對(duì)的,可用lcm(5)這個(gè)函數(shù),返回5cm。layout.show(n)用來(lái)顯示子窗口的個(gè)數(shù)。在畫圖的時(shí)候,Layout中默認(rèn)是bycolonm的,即畫圖時(shí)候,先畫a[1,1].再a[1,2],再a[2,1]a[2,2],如果要a[1,1]之后是a[1,2]只要在matrix這個(gè)參數(shù)中指定byrow=TRUE即可。屏幕

split.screen(figs,screen,erase=TRUE)screen(n=,new=TRUE)erase.screen(n=)close.screen(n,all.screens=FALSE)figs在一個(gè)屏幕矩陣或有4列的矩陣下,描述行數(shù)和列數(shù)的雙元素向量。如果一個(gè)矩陣,每一行用左邊,右邊,底部和頂部來(lái)描述一個(gè)屏幕,0在圖案表面的左下角,1在右上角。screen表示分割屏幕的數(shù)量。如果有一個(gè)它默認(rèn)為當(dāng)前屏幕上,否則表示整個(gè)圖案區(qū)域。erase邏輯值:屏幕是否應(yīng)該被清除。n指示準(zhǔn)備繪制(屏幕)哪個(gè)屏幕的數(shù)字,擦掉(erase.screen)或關(guān)閉(close.screen)。(close.screen將會(huì)接受一個(gè)表示屏幕數(shù)字的向量。)new邏輯值,指示屏幕是否應(yīng)該被刪除作為準(zhǔn)備繪制在屏幕上的一部分。all.screens邏輯值,指出是否應(yīng)該關(guān)閉所有的屏幕par(bg="whit

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論