2019-09-27 DAY-5 ggplot之統(tǒng)計(jì)變換與位置調(diào)整 孤傲的小籠包

關(guān)于diamonds數(shù)據(jù)集
ggplot2內(nèi)置數(shù)據(jù)集轩猩,包含53940顆鉆石的信息。
carat:克拉
cut:切割質(zhì)量
color:顏色等級(jí)
clarity:純凈度等級(jí)
depth:深度比例
table:鉆石頂部相對(duì)于最寬點(diǎn)的寬度
price:價(jià)格
"x" "y" "z" :長(zhǎng)寬深
↑以上來自幫助文檔?diamonds

diamonds

統(tǒng)計(jì)變換函數(shù)和幾何對(duì)象函數(shù)

統(tǒng)計(jì)變換:繪圖時(shí)用來計(jì)算新數(shù)據(jù)的算法叫做統(tǒng)計(jì)變換stat
geom_bar做出的圖縱坐標(biāo)為count吗氏,是計(jì)算的新數(shù)據(jù)。
geom_bar的默認(rèn)統(tǒng)計(jì)變換是stat_count柠衅,stat_count會(huì)計(jì)算出兩個(gè)新變量-count(計(jì)數(shù))prop(proportions合愈,比例)炸客。
每個(gè)幾何對(duì)象函數(shù)都有一個(gè)默認(rèn)的統(tǒng)計(jì)變換绒北,每個(gè)統(tǒng)計(jì)變換函數(shù)都又一個(gè)默認(rèn)的幾何對(duì)象适贸。
如:用幾何對(duì)象函數(shù)geom_bar作直方圖灸芳,默認(rèn)統(tǒng)計(jì)變換是stat_count,
用統(tǒng)計(jì)變換函數(shù)stat_count做計(jì)數(shù)統(tǒng)計(jì)圖拜姿,默認(rèn)幾何對(duì)象是直方圖烙样。

用幾何對(duì)象函數(shù)geom_bar作直方圖.png

用統(tǒng)計(jì)變換函數(shù)stat_count做計(jì)數(shù)統(tǒng)計(jì)圖.png

這兩者是等價(jià)的
得到同一張圖

為什么要使用某種統(tǒng)計(jì)變換?

1.覆蓋默認(rèn)的統(tǒng)計(jì)變換

直方圖默認(rèn)的統(tǒng)計(jì)變換是stat_count,也就是統(tǒng)計(jì)計(jì)數(shù)蕊肥。當(dāng)需要直接用原表格的數(shù)據(jù)作圖時(shí)就會(huì)需要覆蓋默認(rèn)的谒获。
demo <- tribble( ~cut, ~freq, "Fair", 1610, "Good", 4906, "Very Good", 12082, "Premium", 13791, "Ideal", 21551 )#新建表格并賦值給demo

image.png

ggplot(data = demo) + geom_bar(mapping = aes(x = cut, y = freq), stat = "identity")
這里直接用頻數(shù)表作圖不需要再統(tǒng)計(jì)變換了,于是用stat = "identity"覆蓋默認(rèn)的統(tǒng)計(jì)變換

頻數(shù)圖.png

2.Y軸可以用比例來表示

直方圖默認(rèn)的y軸是x軸的計(jì)數(shù)壁却。此例子中x軸是是五種cut(切割質(zhì)量)究反,直方圖自動(dòng)統(tǒng)計(jì)了這五種質(zhì)量的鉆石的統(tǒng)計(jì)計(jì)數(shù),當(dāng)你不想使用計(jì)數(shù)儒洛,而是想顯示各質(zhì)量等級(jí)所占比例的時(shí)候就需要用到prop
ggplot(data = diamonds) + geom_bar(mapping = aes(x = cut, y = ..prop.., group = 1))

比例圖.png

注意:1. y = ..prop..狼速;
2.group=1的意思是把所有鉆石作為一個(gè)整體琅锻,顯示五種質(zhì)量的鉆石所占比例體現(xiàn)出來。如果不加這一句向胡,就是每種質(zhì)量的鉆石各為一組來計(jì)算恼蓬,那么比例就都是100%,顯示五根大黑柱子僵芹。

3.在代碼中強(qiáng)調(diào)統(tǒng)計(jì)變換处硬。

以stat_summary為例。
ggplot(data = diamonds) + stat_summary( mapping = aes(x = cut, y = depth), fun.ymin = min, fun.ymax = max, fun.y = median )

image.png

(小潔碎碎念:stat_summary的默認(rèn)幾何圖形是geom_pointrange,而這個(gè)geom_pointrange默認(rèn)的統(tǒng)計(jì)變換卻是identity拇派,如果你不知道其中貓膩荷辕,就會(huì)發(fā)現(xiàn)他倆代碼竟然不可逆凿跳。。疮方。一夫多妻的節(jié)奏呀控嗜。)
因此要用幾何對(duì)象函數(shù)重復(fù)這個(gè)圖形,則需要指定stat_summary骡显。

ggplot(data = diamonds) + geom_pointrange( mapping = aes(x = cut, y = depth), stat = "summary", fun.ymin = min, fun.ymax = max, fun.y = median )

image.png

位置調(diào)整-position

在直方圖中疆栏,顏色映射是由color和fill之分的,表示邊框和填充惫谤。如果要設(shè)置無填充(也就是透明)壁顶,則fill=NA。NA在數(shù)據(jù)框里表示空值溜歪。

1.直方圖之堆疊式-fill

堆疊式就是在基礎(chǔ)條形圖上添加第三個(gè)變量若专,將這個(gè)變量映射給fill,就會(huì)在每個(gè)條形中分出不同顏色且不同比例的矩形痹愚。

ggplot(data = diamonds) + geom_bar(mapping = aes(x = cut,fill=clarity))

image.png

除了映射的方式以外富岳,position參數(shù)設(shè)置位置調(diào)整功能。position="fill"也可以設(shè)置拯腮,但這樣設(shè)置的每組堆疊條形具有相同的高度窖式。
ggplot(data = diamonds) + geom_bar(mapping = aes(x = cut, fill = clarity), position = "fill")

image.png

筆者補(bǔ)充:感覺這種堆疊方式并不如設(shè)置fill映射,因?yàn)樗怀龅氖潜壤溃拷M之間數(shù)值的差異被忽略了萝喘。

2.直方圖之對(duì)象直接顯示-identity

image.png

image.png

這個(gè)直方圖是重疊的

3.直方圖之并列式-dodge

ggplot(data = diamonds) + geom_bar(mapping = aes(x = cut, fill = clarity), position = "dodge")

image.png

image.png

3.散點(diǎn)圖之?dāng)_動(dòng)-jitter

ggplot(data = mpg) + geom_point(mapping = aes(x = displ, y = hwy))

image.png
看著點(diǎn)很少,因?yàn)橛行c(diǎn)是重疊的

添加擾動(dòng)

position參數(shù)設(shè)為jitter的快速實(shí)現(xiàn):geom_jitter()
ggplot(data = mpg) + geom_jitter(mapping = aes(x = displ, y = hwy))

image.png

4.stack-堆疊

image.png

三琼懊、坐標(biāo)系

(1)coord_flip#翻轉(zhuǎn)坐標(biāo)系

ggplot(data = mpg, mapping = aes(x = class, y = hwy)) + geom_boxplot() + coord_flip()

(2)coord_quickmap#為地圖設(shè)置長(zhǎng)寬比此處需要加載maps包阁簸,否則會(huì)報(bào)錯(cuò)。

nz <- map_data("nz")

ggplot(nz, aes(long, lat, group = group)) + geom_polygon(fill = "white", colour = "black")#geom_polygon 是多邊形圖

ggplot(nz, aes(long, lat, group = group)) + geom_polygon(fill = "white", colour = "black") + coord_quickmap()

(3)coord_polar #極坐標(biāo)系

bar <- ggplot(data = diamonds) + geom_bar( mapping = aes(x = cut, fill = cut), show.legend = FALSE, width = 1 ) + theme(aspect.ratio = 1) + labs(x = NULL, y = NULL)
bar + coord_flip()
bar + coord_polar()

image.png

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末哼丈,一起剝皮案震驚了整個(gè)濱河市启妹,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌醉旦,老刑警劉巖饶米,帶你破解...
    沈念sama閱讀 206,126評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異车胡,居然都是意外死亡檬输,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,254評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門匈棘,熙熙樓的掌柜王于貴愁眉苦臉地迎上來丧慈,“玉大人,你說我怎么就攤上這事主卫√幽” “怎么了鹃愤?”我有些...
    開封第一講書人閱讀 152,445評(píng)論 0 341
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)笑旺。 經(jīng)常有香客問我昼浦,道長(zhǎng),這世上最難降的妖魔是什么筒主? 我笑而不...
    開封第一講書人閱讀 55,185評(píng)論 1 278
  • 正文 為了忘掉前任关噪,我火速辦了婚禮,結(jié)果婚禮上乌妙,老公的妹妹穿的比我還像新娘使兔。我一直安慰自己,他們只是感情好藤韵,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,178評(píng)論 5 371
  • 文/花漫 我一把揭開白布虐沥。 她就那樣靜靜地躺著,像睡著了一般泽艘。 火紅的嫁衣襯著肌膚如雪欲险。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 48,970評(píng)論 1 284
  • 那天匹涮,我揣著相機(jī)與錄音天试,去河邊找鬼。 笑死然低,一個(gè)胖子當(dāng)著我的面吹牛喜每,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播雳攘,決...
    沈念sama閱讀 38,276評(píng)論 3 399
  • 文/蒼蘭香墨 我猛地睜開眼带兜,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了吨灭?” 一聲冷哼從身側(cè)響起刚照,我...
    開封第一講書人閱讀 36,927評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎喧兄,沒想到半個(gè)月后无畔,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 43,400評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡繁莹,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,883評(píng)論 2 323
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了特幔。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片咨演。...
    茶點(diǎn)故事閱讀 37,997評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖蚯斯,靈堂內(nèi)的尸體忽然破棺而出薄风,到底是詐尸還是另有隱情饵较,我是刑警寧澤,帶...
    沈念sama閱讀 33,646評(píng)論 4 322
  • 正文 年R本政府宣布遭赂,位于F島的核電站循诉,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏撇他。R本人自食惡果不足惜茄猫,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,213評(píng)論 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望困肩。 院中可真熱鬧划纽,春花似錦、人聲如沸锌畸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,204評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽潭枣。三九已至比默,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間盆犁,已是汗流浹背命咐。 一陣腳步聲響...
    開封第一講書人閱讀 31,423評(píng)論 1 260
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蚣抗,地道東北人侈百。 一個(gè)月前我還...
    沈念sama閱讀 45,423評(píng)論 2 352
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像翰铡,于是被迫代替她去往敵國和親钝域。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,722評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 統(tǒng)計(jì)變換 根據(jù)現(xiàn)有的數(shù)據(jù)锭魔,從新的角度進(jìn)行統(tǒng)計(jì)得出新的數(shù)據(jù)的算法叫做統(tǒng)計(jì)變換(stat)(例子:比如現(xiàn)有數(shù)據(jù)知道小朋...
    粥醬_ZZ閱讀 254評(píng)論 0 0
  • 使用GGPLOT2包進(jìn)行數(shù)據(jù)可視化 Introduction簡(jiǎn)介 geom_smooth可以用于散點(diǎn)圖例证,擬合一條直...
    一條很閑的咸魚閱讀 951評(píng)論 0 0
  • 劉小澤開始寫于18.9.4晚,這必定是一個(gè)持續(xù)性更新的過程昨天jimmy一發(fā)朋友圈迷捧,單篇閱讀量很快超過了我們的關(guān)注...
    劉小澤閱讀 1,179評(píng)論 0 12
  • 經(jīng)不住波士頓的暴風(fēng)雪侵襲织咧,跑到遙遠(yuǎn)的波多黎各,度過了新年漠秋。剛回到家中笙蒙,窗外依舊是零下二十度的天寒地凍,實(shí)在不想出門...
    ZealousLizard閱讀 1,876評(píng)論 0 3
  • 什么是愛庆锦? 我并不了解捅位,只是以我現(xiàn)在的年紀(jì),還不必過多追問。艇搀。尿扯。 有這樣一個(gè)故事 一個(gè)男孩很愛一個(gè)女孩,但女孩好像...
    安簡(jiǎn)影閱讀 127評(píng)論 0 0