《R語言與數(shù)據(jù)可視化》課件-R語言可視化第八章_第1頁
《R語言與數(shù)據(jù)可視化》課件-R語言可視化第八章_第2頁
《R語言與數(shù)據(jù)可視化》課件-R語言可視化第八章_第3頁
《R語言與數(shù)據(jù)可視化》課件-R語言可視化第八章_第4頁
《R語言與數(shù)據(jù)可視化》課件-R語言可視化第八章_第5頁
已閱讀5頁,還剩25頁未讀, 繼續(xù)免費閱讀

下載本文檔

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

文檔簡介

Lattice包主要有以下常用的高級函數(shù)

函數(shù)圖形類型histogram直方圖densityplot核密度圖qqmatch理論分位數(shù)圖qqqq圖stripplot帶形圖bwplot盒形圖dotplot克利夫蘭點圖barchart條形圖xyplot散點圖splom散點圖陣列contourplot表面等高線圖levelplot表面?zhèn)紊蕡Dwireframe三維表面透視圖cloud三維散點圖parallel平行坐標圖你需要運行下面的命令來下載和安裝lattice軟件包。

install.packages("lattice")library(lattice)

Lattice的各種高級繪圖函數(shù)都服從以下格式:

graph_function(formula,data=,options)

graph_function是表8-1的第二欄列出的某個函數(shù)。formula指定要展示的變量和條件變量,即表達式。data指定一個數(shù)據(jù)框。options是逗號分隔參數(shù),用來修改圖形的內(nèi)容、擺放方式和標注。表達式形式通常為:

y~x|A*B

在豎線左邊的變量稱為主要(primary)變量,右邊的變量稱為條件(conditioning)變量。主要變量將變量映射到每個面板的坐標軸上,此處,y~x表示變量分別映射到縱軸和橫軸上。對于單變量繪圖,用~x代替y~x即可;對于三維圖形,用z~x*y代替y~x,而對于多變量繪圖(散點圖矩陣或平行坐標圖)用一個數(shù)據(jù)框代替y~x即可。注意,條件變量總是可以自行挑選的。根據(jù)上述的邏輯,~x|A即展示因子A各個水平下數(shù)值型變量x的分布情況;y~x|A*B即展示因子A和B各個水平組合下數(shù)值型變量x和y間的關(guān)系。而A~x則表示類別型變量A在縱軸上,數(shù)值型變量x在橫軸上進行展示。~x表示僅展示數(shù)值型變量lattice包中的圖形類型和相應(yīng)函數(shù)

圖形類型函數(shù)及說明表達式示例條形圖barchart()x~A或A~x箱線圖bwplot()x~A或A~x點圖dotplot()~x|A直方圖histogram()~x核密度圖densityplot()~x|A*B平行坐標圖parallelplot()在這個函數(shù)中可以設(shè)置alpha=0.01參數(shù)控制線條粗細dataframe散點圖xyplot()y~x|A散點圖矩陣splom()dataframe帶狀圖stripplot()A~x或x~A注意,在這些表達式中,小寫字母代表數(shù)值變量,大寫字母表示類型變量散點圖

xyplot(x,data,allow.multiple=is.null(groups)||outer,outer=!is.null(groups),auto.key=FALSE,aspect="fill",panel=lattice.getOption("panel.xyplot"),prepanel=NULL,scales=list(),strip=TRUE,groups=NULL,x這個參數(shù)在Lattice包中所有函數(shù)是通用,x是方法調(diào)度的對象對于“公式”,x必須是一個描述的主要變量的公式(用于每塊面板顯示)和可選的調(diào)節(jié)變量(在不同的面板定義繪制子集)在圖中使用data這個參數(shù)包括公式中的任何變量,同樣適用全集和子集。如果沒有找到數(shù)據(jù),或者數(shù)據(jù)不明,變量在環(huán)境中尋找。對于其他方法(其中x不是一個公式),這個參數(shù)通常被忽略,經(jīng)常在一個特定的警告當中allow.multiple邏輯標志,指定上述公式擴展接口是否應(yīng)該有效,默認值為TRUEouter邏輯標志,控制上述公式使用擴展接口所發(fā)生的狀況。默認值為FALSE,除非子集明確被指定或分組沒有意義的默認功能box.ratio適用于柱形圖表和bwplot。在空間指定矩形的寬度比horizontal邏輯標志,適用于bwplot、dotplot,stripplot等。確定哪些x和y是一個因素或shingle(y如果這是真的,或者x為真)。x<-rnorm(100)y<-x+rnorm(100,sd=0.5)f<-gl(2,50,labels=c("第一組","第二組"))xyplot(y~x|f)點圖

dotplot(x,data,panel=lattice.getOption("panel.dotplot"),default.prepanel=lattice.getOption("prepanel.default.dotplot"),...)dotplot(variety~yield|year*site,data=barley)箱線圖

bwplot(x,data,allow.multiple=is.null(groups)||outer,outer=FALSE,auto.key=FALSE,aspect="fill",panel=lattice.getOption("panel.bwplot"),prepanel=NULL,scales=list(),strip=TRUE,groups=NULL,bwplot(voice.part~height,data=singer,xlab="高度")條形圖

stripplot(voice.part~jitter(height),data=singer,aspect=1,jitter.data=TRUE,xlab="高度")帶形圖

barchart(x,data,panel=lattice.getOption("panel.barchart"),default.prepanel=lattice.getOption("prepanel.default.barchart"),box.ratio=2,...)barchart(yield~variety|site,data=barley,groups=year,layout=c(1,6),stack=TRUE,auto.key=list(space="right"),ylab="產(chǎn)量",scales=list(x=list(rot=45)))直方圖

histogram(x,data,allow.multiple,outer=TRUE,auto.key=FALSE,aspect="fill",panel=lattice.getOption("panel.histogram"),prepanel,scales,strip,groups,xlab,xlim,ylab,ylim,type=c("percent","count","density"),nint=if(is.factor(x))nlevels(x)elseround(log2(length(x))+1),endpoints=extend.limits(range(as.numeric(x),finite=TRUE),prop=0.04),histogram(~height|voice.part,data=singer,nint=18,endpoints=c(49.5,76.5),layout=c(2,4),aspect=1,xlab="高度")核密度圖

densityplot(x,data,allow.multiple=is.null(groups)||outer,outer=!is.null(groups),auto.key=FALSE,aspect="fill",panel=lattice.getOption("panel.densityplot"),prepanel,scales,strip,groups,weights,xlab,xlim,ylab,ylim,bw,adjust,kernel,window,width,give.Rkern,n=50,from,to,cut,na.rm,densityplot(~height|voice.part,data=singer,layout=c(2,4),xlab="高度",bw=4)QQ圖

qq(x,data,aspect="fill",panel=lattice.getOption("panel.qq"),prepanel,scales,strip,groups,xlab,xlim,ylab,ylim,f.value=NULL,drop.unused.levels=lattice.getOption("drop.unused.levels"),...,lattice.options=NULL,qtype=7,default.scales=list(),default.prepanel=lattice.getOption("prepanel.default.qq"),subscripts,subset)qq(voice.part~height,aspect=1,data=singer,subset=(voice.part=="Bass2"|voice.part=="Tenor1"))等高線圖

contourplot(x,data,panel=lattice.getOption("panel.contourplot"),default.prepanel=lattice.getOption("prepanel.default.contourplot"),cuts=7,labels=TRUE,contour=TRUE,pretty=TRUE,region=FALSE,...)require(stats)attach(environmental)ozo.m<-loess((ozone^(1/3))~wind*temperature*radiation,parametric=c("radiation","wind"),span=1,degree=2)w.marginal<-seq(min(wind),max(wind),length.out=50)t.marginal<-seq(min(temperature),max(temperature),length.out=50)r.marginal<-seq(min(radiation),max(radiation),length.out=4)wtr.marginal<-list(wind=w.marginal,temperature=t.marginal,radiation=r.marginal)grid<-expand.grid(wtr.marginal)grid[,"fit"]<-c(predict(ozo.m,grid))contourplot(fit~wind*temperature|radiation,data=grid,cuts=10,region=TRUE,xlab="風速",ylab="溫度")detach()平行坐標圖

parallelplot(x,data,auto.key=FALSE,aspect="fill",between=list(x=0.5,y=0.5),panel=lattice.getOption("panel.parallel"),prepanel,scales,strip,groups,parallelplot(~iris[1:4]|Species,iris)三維圖

除了二維繪制,lattice還提供了一些三維圖的繪制函數(shù)。主要有以下三個函數(shù)。下圖列出了函數(shù)名以及表達式的示例。其中l(wèi)evelplot用來繪制三維水平圖,cloud用來繪制三維散點圖,wireframe用來繪制三維線框圖。在散點圖矩陣中雖然可以同時觀察多個變量間的聯(lián)系,但是兩兩進行平面散點圖的觀察的,有可能漏掉一些重要的信息。三維散點圖就是在由3個變量確定的三維空間中研究變量之問的關(guān)系,由于同時考慮了3個變量,常??梢园l(fā)現(xiàn)在兩維圖形中發(fā)現(xiàn)不了的信息。圖形類型函數(shù)及說明表達式示例三維水平圖levelpolt()z~y*x三維散點圖cloud()z~x*y|A三維線框圖wireframe()z~y*xlevelplot(volcano)wireframe(volcano)圖形參數(shù)及選項控制

選項描述aspect數(shù)值,設(shè)定每個面板中圖形的寬高比col、pch、lty、lwd向量,分別設(shè)置圖形中的顏色、符號、線條類型和寬度

pch除了使用數(shù)值變量,還可以直接使用字符變量groups用來分組的變量(因子)index.cond列表,設(shè)置面板的展示順序key(或auto.key)函數(shù),添加分組變量的圖例符號layout兩元素數(shù)值型向量,設(shè)定面板的擺放方式(行數(shù)和列數(shù));如需要,可以添加第三個元素,以指定頁數(shù)main、sub字符向量,設(shè)定主標題和副標題panel函數(shù),設(shè)定每個面板要生成的圖形scales列表,添加坐標軸標注信息strip函數(shù),設(shè)定面板條帶區(qū)域split、position數(shù)值向量,在一頁上繪制多個圖形.

由于lattice函數(shù)不識別par()設(shè)置,因此你需要另辟蹊徑。最簡單的方法便是先將lattice圖形存儲到對象中,然后利用plot()函數(shù)中的split=或position=選項來進行控制。

type字符型向量,設(shè)定一個或多個散點圖的繪圖參數(shù)(如p=點、l=線、r=回歸、smooth=平滑曲線、g=格點)xla

溫馨提示

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

評論

0/150

提交評論