R語言之ggplot

https://www.cnblogs.com/xiaojikuaipao/p/11478780.html
http://blog.sina.com.cn/s/blog_15ff3b88f0102we75.html

一:ggplot基本語法

ggplot2的核心理念是將繪圖與數(shù)據(jù)分離躬厌,數(shù)據(jù)相關(guān)的繪圖與數(shù)據(jù)無關(guān)的繪圖分離。按圖層作圖竞帽,保有命令式作圖的調(diào)整函數(shù)扛施,使其更具靈活性,并將常見的統(tǒng)計(jì)變換融入到了繪圖中屹篓。
ggplot的繪圖有以下幾個(gè)特點(diǎn):第一疙渣,有明確的起始(以ggplot函數(shù)開始)與終止(一句語句一幅圖);其二抱虐,圖層之間的疊加是靠“+”號實(shí)現(xiàn)的昌阿,越后面其圖層越高。
ggplot2里的所有函數(shù)可以分為以下幾類:

  • 用于運(yùn)算(我們在此不講,如fortify_懦冰,mean_等)
  • 初始化灶轰、展示繪圖等命令(ggplot,plot刷钢,print等)
  • 按變量組圖(facet_等)
  • 真正的繪圖命令(stat_笋颤,geom_,annotate)内地,這三類就是實(shí)現(xiàn)一個(gè)函數(shù)一個(gè)圖層的核心函數(shù)伴澄。
  • 微調(diào)圖型:嚴(yán)格意義上說,這一類函數(shù)不是再實(shí)現(xiàn)圖層阱缓,而是在做局部調(diào)整非凌。
  • aes : 同樣適用于修改geom_XXX() aes參數(shù)控制了對哪些變量進(jìn)行圖形映射,以及映射方式
  • 圖形屬性(aes) 橫縱坐標(biāo)荆针、點(diǎn)的大小敞嗡、顏色,填充色等航背。
    完整公式總結(jié):
ggplot(data = , aes(x = , y = )) +
geom_XXX(...) + ... + stat_XXX(...) + ... +
annotate(...) + ... + labs(...) +
scale_XXX(...) + coord_XXX(...) + guides(...) + theme(...) +
facet_XXX(...)

一個(gè)完整ggplot實(shí)例:

library(ggplot2)
attach(iris)
p <- ggplot(data=iris,aes(x = Sepal.Length,y = Sepal.Width))
p + geom_point(aes(colour = Species)) + stat_smooth() + 
labs(title = "Iris of Sepal.length \n According to the Sepal.Width") +
theme_classic() + theme_bw() +annotate("text",x=7,y=4,parse = T,label = "x[1]==x[2]",size=6, family="serif",fontface="italic", colour="darkred")
  • geom :表示幾何對象喉悴,它是ggplot中重要的圖層控制對象,因?yàn)樗?fù)責(zé)圖形渲染的類型玖媚。
    幾何對象(geom_) 上面指定的圖形屬性需要呈現(xiàn)在一定的幾何對象上才能被我們看到箕肃,這些承載圖形屬性的對象可能是點(diǎn),可能是線今魔,可能是bar
  • stat :統(tǒng)計(jì)變換 比如求均值勺像,求方差等,當(dāng)我們需要展示出某個(gè)變量的某種統(tǒng)計(jì)特征的時(shí)候涡贱,需要用到統(tǒng)計(jì)變換.
  • annotate:添加注釋 #由于設(shè)置的文本會覆蓋原來的圖中對應(yīng)的位置咏删,可以改變文本的透明度或者顏色 例: annotate(geom='text')會向圖形添加一個(gè)單獨(dú)的文本對象 annotate("text",x=23,y=200,parse=T,label = "x[1]==x[2]")
  • labs : labs(x = "這是 X 軸", y = "這是 Y 軸", title = "這是標(biāo)題") ## 修改文字
  • scale_: 標(biāo)度是一種函數(shù)惹想,它控制了數(shù)學(xué)空間到圖形元素空間的映射问词。一組連續(xù)數(shù)據(jù)可以映射到X軸坐標(biāo),也可以映射到一組連續(xù)的漸變色彩嘀粱。一組分類數(shù)據(jù)可以映射成為不同的形狀激挪,也可以映射成為不同的大小,這就是與aes內(nèi)的各種美學(xué)(shape锋叨、color垄分、fill、alpha)調(diào)整有關(guān)的函數(shù)娃磺。
  • coord_:調(diào)整坐標(biāo)薄湿,控制了圖形的坐標(biāo)軸并影響所有圖形元素. 調(diào)整坐標(biāo) coord_flip()來翻轉(zhuǎn)坐標(biāo)軸。使用xlim()和ylim()來設(shè)置連續(xù)型坐標(biāo)軸的最小值和最大值 coord_cartesian(xlim=c(0,100),ylim=c(0,100))
  • guides:調(diào)整所有的text。
  • theme:調(diào)整不與數(shù)據(jù)有關(guān)的圖的元素的函數(shù)豺瘤。theme函數(shù)采用了四個(gè)簡單地函數(shù)來調(diào)整所有的主題特征:element_text調(diào)整字體吆倦,element_line調(diào)整主題內(nèi)的所有線,element_rect調(diào)整所有的塊坐求,element_blank清空蚕泽。theme(panel.grid =element_blank()) ## 刪去網(wǎng)格線
  • facet :控制分組繪圖的方法和排列形式

不指定數(shù)據(jù)集時(shí),data = NULL

一個(gè)圖形對象就是一個(gè)包含數(shù)據(jù)桥嗤,映射须妻,圖層,標(biāo)度泛领,坐標(biāo)和分面的列表荒吏,外加組件options
ggplot(數(shù)據(jù), 映射) geom_xxx(映射, 數(shù)據(jù)) stat_xxx(映射, 數(shù)據(jù))

通過“+”實(shí)現(xiàn)不同圖層的相應(yīng)累加,且越往后的圖層表現(xiàn)在上方

點(diǎn)(point, text):往往只有x渊鞋、y指定位置司倚,有shape但沒有fill
線(line,vline,abline,hline,stat_function等):一般是基于函數(shù)來處理位置
射(segment):特征是指定位置有xend和yend,表示射線方向
面(tile, rect):這類一般有xmax,xmin,ymax,ymin指定位置
棒(boxplot,bin,bar,histogram):往往是二維或一維變量篓像,具有width屬性
帶(ribbon,smooth):透明是特征是透明的fill
補(bǔ):包括rug圖动知,誤差棒(errorbar,errorbarh)
然后,就是按照你的需要一步步加圖層了(使用“+”)员辩。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末盒粮,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子奠滑,更是在濱河造成了極大的恐慌丹皱,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,290評論 6 491
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件宋税,死亡現(xiàn)場離奇詭異摊崭,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)杰赛,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,107評論 2 385
  • 文/潘曉璐 我一進(jìn)店門呢簸,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人乏屯,你說我怎么就攤上這事根时。” “怎么了辰晕?”我有些...
    開封第一講書人閱讀 156,872評論 0 347
  • 文/不壞的土叔 我叫張陵蛤迎,是天一觀的道長。 經(jīng)常有香客問我含友,道長替裆,這世上最難降的妖魔是什么校辩? 我笑而不...
    開封第一講書人閱讀 56,415評論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮辆童,結(jié)果婚禮上召川,老公的妹妹穿的比我還像新娘。我一直安慰自己胸遇,他們只是感情好荧呐,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,453評論 6 385
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著纸镊,像睡著了一般倍阐。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上逗威,一...
    開封第一講書人閱讀 49,784評論 1 290
  • 那天峰搪,我揣著相機(jī)與錄音,去河邊找鬼凯旭。 笑死概耻,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的罐呼。 我是一名探鬼主播鞠柄,決...
    沈念sama閱讀 38,927評論 3 406
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼嫉柴!你這毒婦竟也來了厌杜?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 37,691評論 0 266
  • 序言:老撾萬榮一對情侶失蹤计螺,失蹤者是張志新(化名)和其女友劉穎夯尽,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體登馒,經(jīng)...
    沈念sama閱讀 44,137評論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡匙握,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,472評論 2 326
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了陈轿。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片圈纺。...
    茶點(diǎn)故事閱讀 38,622評論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖济欢,靈堂內(nèi)的尸體忽然破棺而出赠堵,到底是詐尸還是另有隱情,我是刑警寧澤法褥,帶...
    沈念sama閱讀 34,289評論 4 329
  • 正文 年R本政府宣布,位于F島的核電站酬屉,受9級特大地震影響半等,放射性物質(zhì)發(fā)生泄漏揍愁。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,887評論 3 312
  • 文/蒙蒙 一杀饵、第九天 我趴在偏房一處隱蔽的房頂上張望莽囤。 院中可真熱鬧,春花似錦切距、人聲如沸朽缎。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,741評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽话肖。三九已至,卻和暖如春葡幸,著一層夾襖步出監(jiān)牢的瞬間最筒,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,977評論 1 265
  • 我被黑心中介騙來泰國打工蔚叨, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留床蜘,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,316評論 2 360
  • 正文 我出身青樓蔑水,卻偏偏與公主長得像邢锯,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子搀别,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,490評論 2 348