1. 程式人生 > >《R語言實戰》之 圖形初階(第三章)-- 初識

《R語言實戰》之 圖形初階(第三章)-- 初識

space wid spa 開啟 display tps ping microsoft 目標

圖形初級

技術分享圖片

3.1 使用圖形

在交互式會話中,通過組條輸入語句構建圖形,直至得到想要的效果

attach(mtcars)                                 #綁定了數據框mtcars
plot(wt,mpg) #打開圖形窗口並生成一副散點圖,橫走表示車身重量,縱軸表示每加侖汽油形式的英裏數
abline(lm(mpt~wt))                         #根據前一句畫出的圖像求出擬合的函數
title("Regression of MPG on Weight") #加標題
detach(mtcars) #解除綁定

技術分享圖片技術分享圖片技術分享圖片

通過代碼保存圖形:

將繪圖語句夾在開啟目標圖形設備的語句和關閉目標圖形設備的語句之間即可

pdf("mygraph.pdf") #開啟目標圖形設備的語句

#繪圖語句

attach(mtcars)
plot(wt,mpg)
abline(lm(mpt~wt))
title("Regression of MPG on Weight")
detach(mtcars)

dev.off()#關閉目標圖形設備的語句

技術分享圖片

除了pdf(),還可以用win.metafile(),png(),jepg(),bmp(),tiff(),xfig(),postscript(),將圖形保存為其它格式

通過圖形界面保存圖形的方法:“另存為”

問題:執行如plot(),hist()或boxplot()這樣的高級繪圖命令創建一副圖形時,通常會覆蓋掉先前的圖形,如何創建多個圖形並且隨時查看每一呢?

解決

方法1:創建新圖形前打開新的圖形窗口

dev.new() #打開圖形設備窗口

創建圖語句

dev.new ( )

創建圖語句

...

方法2:通過圖習性用戶界面查看多個圖形

打開第一個圖形窗口後,”歷史(History)“-》”記錄(Recording)“--》使用菜單的”上一個(previous)“和”下一個(Nex)查看已經繪制的圖形。

方法3:(適用於全平臺)使用函數dev.new()、dev.next()、dev.prev()、dev.set()、dev.off()同時打開多個圖形窗口,並決定將哪個輸出發送到哪個窗口。具體參考help(dev.cur)

3.2 一個簡單的例子

先構造一個健翔的數據集,描述病人對兩種藥物五個劑量水平上的響應情況

dose<-c(20,30,40,45,60)
drugA<-c(16,20,27,40,60)
drugB<-c(15,18,25,31,40)
mydata1<-data.frame(dose,drugA,drugB)
mydata1<-rename(mydata1,c(dose="劑量",drugA="對藥物A的響應",drugB="對藥物B的響應"))

另一種方式

"劑量"<-c(20,30,40,45,60)
"對藥物A的響應"<-c(16,20,27,40,60)
"對藥物B的響應"<-c(15,18,25,31,40)
mydata<-data.frame(劑量,對藥物A的響應,對藥物B的響應)

結果如下

技術分享圖片

假設采用第一種方式繪制的數據框,下面創建描述藥物A與響應關系的圖形

plot(dose,drugA,type=‘b‘)

技術分享圖片

其中type=‘b‘表示同時繪制點和線

《R語言實戰》之 圖形初階(第三章)-- 初識