R有強(qiáng)大的繪圖功能,R提供的繪圖函數(shù)可以分為三種基本類型:高水平繪圖函數(shù)、低水平繪圖函數(shù)和交互式繪圖函數(shù)。
高水平繪圖函數(shù)是一類能夠直接創(chuàng)建圖形的函數(shù),該類函數(shù)可以自動(dòng)生成坐標(biāo)軸、坐標(biāo)刻度、標(biāo)題等元素。
在高水平繪圖函數(shù)中,plot()函數(shù)是一種常用的繪圖函數(shù),用其可以繪制散點(diǎn)圖、曲線圖等。
R語(yǔ)言中plot()函數(shù)的基本格式如下:
plot(x,y,...)
plot函數(shù)中,x和y分別表示所繪圖形的橫坐標(biāo)和縱坐標(biāo);
函數(shù)中的...為附加的參數(shù)。
plot函數(shù)默認(rèn)的使用格式如下:
plot(x, y = NULL, type = "p", xlim = NULL, ylim = NULL,
log = "", main = NULL, sub = NULL, xlab = NULL, ylab = NULL,
ann = par("ann"), axes = TRUE, frame.plot = axes,
panel.first = NULL, panel.last = NULL, asp = NA, ...)
其中,
(1)type為一個(gè)字符的字符串,用于給定繪圖的類型,可選的值如下:
"p":繪點(diǎn)(默認(rèn)值);
"l":繪制線;
"b":同時(shí)繪制點(diǎn)和線;
"c":僅繪制參數(shù)"b"所示的線;
"o":同時(shí)繪制點(diǎn)和線,且線穿過(guò)點(diǎn);
"h":繪制出點(diǎn)到橫坐標(biāo)軸的垂直線;
"s":繪制出階梯圖(先橫后縱);
"S":繪制出階梯圖(先縱后豎);
"n":作空?qǐng)D。
(2)main參數(shù)
字符串,給出圖形的標(biāo)題;
(3)sub參數(shù)
字符串,給出圖形的子標(biāo)題
(4)xlab參數(shù)
字符串,用于給出x軸的標(biāo)簽。
(5)ylab參數(shù)
字符串,用于給出y軸的標(biāo)簽。
(6)xlim參數(shù)
二維向量,表示x軸的范圍。
(7)ylim參數(shù)
二維向量,表示y軸的范圍。
下面舉幾個(gè)簡(jiǎn)單的例子用來(lái)說(shuō)明:
(1)繪制簡(jiǎn)單的一個(gè)點(diǎn)
plot(10,10) #直接給出數(shù)據(jù)
結(jié)果如下圖:

圖1
#使用變量的情況
x<-10
y<-10
plot(x,y)
繪圖結(jié)果如下:

圖2
(2)繪制一條線
x<-c(20,30)
y<-c(40,50)
plot(x,y)
結(jié)果如下:

圖3
(3)使用參數(shù)l——繪制一條直線
plot(x,y,'l')
結(jié)果如下:

圖4
(4)使用參數(shù)b——同時(shí)繪制點(diǎn)和線,線不穿過(guò)點(diǎn)
plot(x, y, 'b')
結(jié)果如下:

圖5
(5)使用參數(shù)c——僅繪制出參數(shù)為b時(shí)所示的直線
plot(x, y, "c")
結(jié)果如下圖所示:

圖6
對(duì)比圖4,圖5,圖6可知,圖4的線是直接從兩個(gè)點(diǎn)的坐標(biāo)開(kāi)始的,圖5中包括圈點(diǎn)和直線,而直線到圈點(diǎn)外,圖6是在圖5的基礎(chǔ)上,將點(diǎn)去掉而已。
(6)使用參數(shù)o
plot(x, y, "o")
結(jié)果如下圖:

圖7
(7)使用參數(shù)h
plot(x, y, "h")
結(jié)果如下:

圖8
(8)使用參數(shù)s——階梯圖,先橫再縱
plot(x, y, "s")
結(jié)果如下圖所示:

圖9
(9)使用參數(shù)S
plot(x, y, "S")
結(jié)果如下圖所示:

圖10
(10)使用main參數(shù)、xlab,ylab的情形
plot(x, y, "l",main="plot函數(shù)繪圖演示",xlab="x值",ylab="y值")
結(jié)果形式如下:

圖11
(11)xlim、ylim參數(shù)的使用
plot(x,y,xlim=c(10,50),ylim=c(10,50))
結(jié)果形式如下:

圖12
即x軸的坐標(biāo)范圍為10~50,y軸的坐標(biāo)范圍為:10~50
最后再舉一個(gè)例子:使用plot函數(shù)繪制散點(diǎn)圖
假設(shè)對(duì)10戶居民家庭的月可支配收入和消費(fèi)支出進(jìn)行調(diào)查,得到的原始資料如下:請(qǐng)繪制散點(diǎn)圖。
| 編號(hào) | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
| 消費(fèi)支出 | 20 | 15 | 40 | 30 | 42 | 60 | 65 | 70 | 53 | 78 |
| 可支配收入 | 25 | 18 | 60 | 45 | 62 | 88 | 92 | 99 | 75 | 98 |
繪制散點(diǎn)圖
x<-c(25,18,60,45,62,88,92,99,75,98) #定義向量x保存可支配收入
y<-c(20,15,40,30,42,60,65,70,53,78) #定義向量y保存消費(fèi)支出
#繪制散點(diǎn)圖
plot(x,y,xlab="可支配收入",ylab="消費(fèi)支出",main="消費(fèi)支出與可支配收入的散點(diǎn)圖")
如下圖所示:

新聞熱點(diǎn)
疑難解答