【R語(yǔ)言】--- 散點(diǎn)圖

散點(diǎn)圖是將所有的數(shù)據(jù)以點(diǎn)的形式展現(xiàn)在直角坐標(biāo)系上,以顯示變量之間的相互影響程度,點(diǎn)的位置由變量的數(shù)值決定,每個(gè)點(diǎn)對(duì)應(yīng)一個(gè) X 和 Y 軸點(diǎn)坐標(biāo)。散點(diǎn)圖可以用R自帶的plot()函數(shù)繪制,也可以用ggplot2包的geom_point()和 geom_dotplot()函數(shù)來(lái)繪制,當(dāng)使用geom_dotplot()繪圖時(shí),point的形狀是dot,不能改變點(diǎn)的形狀,因此,geom_dotplot 叫做散點(diǎn)圖(Scatter Plot),通過(guò)繪制點(diǎn)來(lái)呈現(xiàn)數(shù)據(jù)的分布,對(duì)點(diǎn)分箱的方法有兩種:點(diǎn)密度(dot-density )和直方點(diǎn)(histodot)。當(dāng)使用點(diǎn)密度分箱(bin)方式時(shí),分箱的位置是由數(shù)據(jù)和binwidth決定的,會(huì)根據(jù)數(shù)據(jù)進(jìn)行變化,但不會(huì)大于binwidth指定的寬度;當(dāng)使用直方點(diǎn)分箱方式時(shí),分箱有固定的位置和固定的寬度,就像由點(diǎn)構(gòu)成的直方圖(histogram)。

plot()函數(shù)繪制

基本語(yǔ)法:

plot(x, y, type="p", main, xlab, ylab, xlim, ylim, axes)

具體參數(shù)如下:

x 橫坐標(biāo) x 軸的數(shù)據(jù)集合;
y 縱坐標(biāo) y 軸的數(shù)據(jù)集合;
type:繪圖的類(lèi)型,p 為點(diǎn)、l 為直線(xiàn), o 同時(shí)繪制點(diǎn)和線(xiàn),且線(xiàn)穿過(guò)點(diǎn);
main:圖表標(biāo)題;
xlab、ylab x 軸和 y 軸的標(biāo)簽名稱(chēng);
xlim、ylim x 軸和 y 軸的范圍;
axes 布爾值,是否繪制兩個(gè) x 軸。

type 參數(shù)可選擇值:

p:點(diǎn)圖;
l:線(xiàn)圖;
b:同時(shí)繪制點(diǎn)和線(xiàn);
c:僅繪制參數(shù) b 所示的線(xiàn);
o:同時(shí)繪制點(diǎn)和線(xiàn),且線(xiàn)穿過(guò)點(diǎn);
h:繪制出點(diǎn)到橫坐標(biāo)軸的垂直線(xiàn);
s:階梯圖,先橫后縱;
S:階梯圖,先縱后豎;
n: 空?qǐng)D。

案例

# 創(chuàng)建數(shù)據(jù)
data = data.frame(
  x=seq(1:100) + 0.1*seq(1:100)*sample(c(1:10) , 100 , replace=T),
  y=seq(1:100) + 0.2*seq(1:100)*sample(c(1:10) , 100 , replace=T)
)
# 基本散點(diǎn)圖
plot(x=data$x, y=data$y)
基本散點(diǎn)圖

美化后的散點(diǎn)圖

plot(x=data$x, y=data$y, type="p",
     xlab="地下生物量 (g/m^2)",
     ylab="地上生物量(g/m^2)",
     main="地上生物量與地下生物量間關(guān)系",
     xlim=c(0, 200),
     ylim=c(0, 300))
美化后的散點(diǎn)圖

散點(diǎn)圖矩陣

散點(diǎn)圖矩陣是借助兩變量散點(diǎn)圖的作圖方法,它可以看作是一個(gè)大的圖形方陣,其每一個(gè)非主對(duì)角元素的位置上是對(duì)應(yīng)行的變量與對(duì)應(yīng)列的變量的散點(diǎn)圖。而主對(duì)角元素位置上是各變量名,這樣,借助散點(diǎn)圖矩陣可以清晰地看到所研究多個(gè)變量?jī)蓛芍g的相關(guān)關(guān)系。散點(diǎn)圖矩陣就是把數(shù)據(jù)集中的每個(gè)數(shù)值變量?jī)蓛衫L制散點(diǎn)圖,這里我們用pairs()函數(shù)繪制。

pairs(iris[1:4], main = "Anderson's Iris Data -- 3 species",
      pch = 21, bg = c("red", "green3", "blue")[unclass(iris$Species)])
散點(diǎn)圖矩陣

把直方圖放在對(duì)角線(xiàn)上

panel.hist <- function(x, ...)
{
  usr <- par("usr"); on.exit(par(usr))
  par(usr = c(usr[1:2], 0, 1.5) )
  h <- hist(x, plot = FALSE)
  breaks <- h$breaks; nB <- length(breaks)
  y <- h$counts; y <- y/max(y)
  rect(breaks[-nB], 0, breaks[-1], y, col = "cyan", ...)
}
pairs(USJudgeRatings[1:5], panel = panel.smooth,
      cex = 1.5, pch = 24, bg = "light blue", horOdd=TRUE,
      diag.panel = panel.hist, cex.labels = 2, font.labels = 2)
帶有直方圖的散點(diǎn)圖矩陣

geom_point()函數(shù)繪制

geom_point()函數(shù)用于創(chuàng)建散點(diǎn)圖。散點(diǎn)圖對(duì)于顯示兩個(gè)連續(xù)變量之間的關(guān)系最有用。它可以用于比較一個(gè)連續(xù)變量和一個(gè)類(lèi)別變量,或者兩個(gè)類(lèi)別變量,但是像geom_jitter()、geom_count()或geom_bin2d()這樣的變體通常更合適。氣泡圖是一個(gè)散點(diǎn)圖,第三個(gè)變量映射到點(diǎn)的大小。

#安裝ggplot2包
install.packages("ggplot2")
#調(diào)用ggplot2包
library(ggplot2)
#繪制散點(diǎn)圖
p <- ggplot(mtcars, aes(wt, mpg))
p + geom_point()
geom_point()函數(shù)繪制的散點(diǎn)圖
為散點(diǎn)圖形添加不同顏色和性狀的映射
p + geom_point(aes(colour = factor(cyl)))
p + geom_point(aes(shape = factor(cyl)))
繪制氣泡形式的散點(diǎn)圖
p + geom_point(aes(size = qsec))
#繪制一個(gè)根據(jù)物種設(shè)置顏色的散點(diǎn)圖
ggplot(iris, aes(x=Sepal.Length, y=Sepal.Width, color=Species)) + 
  geom_point(size=6) +
  theme_bw()
按照物種繪制散點(diǎn)圖
#散點(diǎn)圖的美化
ggplot(iris, aes(x=Sepal.Length, y=Sepal.Width, color=Species)) + 
  geom_point(size=6) +#設(shè)置點(diǎn)大小
  theme_bw()+#去除灰色背景
  xlab("Sepal.Length") + #設(shè)置x軸標(biāo)題
  ylab("Sepal.Width")+#設(shè)置y軸標(biāo)題
  theme(axis.text.x = element_text(size = 12, color = "black"))+##設(shè)置x軸字體大小
  theme(axis.text.y = element_text(size = 12, color = "black"))+##設(shè)置y軸字體大小
  theme(title=element_text(size=14))##設(shè)置x軸和y軸標(biāo)簽字體大小
美化后的散點(diǎn)圖

參考文獻(xiàn)

https://www.r-graph-gallery.com/

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 228,786評(píng)論 6 534
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 98,656評(píng)論 3 419
  • 文/潘曉璐 我一進(jìn)店門(mén),熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人,你說(shuō)我怎么就攤上這事?!?“怎么了?”我有些...
    開(kāi)封第一講書(shū)人閱讀 176,697評(píng)論 0 379
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)。 經(jīng)常有香客問(wèn)我,道長(zhǎng),這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 63,098評(píng)論 1 314
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 71,855評(píng)論 6 410
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著,像睡著了一般。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上,一...
    開(kāi)封第一講書(shū)人閱讀 55,254評(píng)論 1 324
  • 那天,我揣著相機(jī)與錄音,去河邊找鬼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播,決...
    沈念sama閱讀 43,322評(píng)論 3 442
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 42,473評(píng)論 0 289
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 49,014評(píng)論 1 335
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 40,833評(píng)論 3 355
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 43,016評(píng)論 1 371
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情,我是刑警寧澤,帶...
    沈念sama閱讀 38,568評(píng)論 5 362
  • 正文 年R本政府宣布,位于F島的核電站,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 44,273評(píng)論 3 347
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧,春花似錦、人聲如沸。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 34,680評(píng)論 0 26
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 35,946評(píng)論 1 288
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 51,730評(píng)論 3 393
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 48,006評(píng)論 2 374