一張統(tǒng)計圖形就是從數(shù)據(jù)到幾何對象(geometricobject,縮寫為geom,包括點、線、條形等)的圖形屬性(aestheticattributes,縮寫為aes,包括顏色、形狀、大小等)的一個映射。另外圖形中還可能包含數(shù)據(jù)的統(tǒng)計變換(statisticaltransformation,縮寫為stats),最后繪制在某個特定的坐標系(coordinatesystem,縮寫為coord)中,而分面(facet,指將繪圖窗口劃分為若干個子窗口)則可以用來生成數(shù)據(jù)中不同子集的圖形。源自ggplot2的作者[HadleyWickham]。1.數(shù)據(jù)data和映射mapping將數(shù)據(jù)中的變量映射到圖形屬性,映射控制了兩者之間關系。
設置完成后使用myeheme
9.存儲和輸出在ggplot2中,有更簡單的保存方法,ggsave()能更方便保存選項包括保存哪副圖形,保存在哪里,以什么形式保存。
即將myplot保存為名為mygraph.png的5英寸*4英寸PNG格式的圖片如果忽略plot=選項,最近創(chuàng)建的圖形會被保存。
1.數(shù)據(jù)在ggplot2中,所接受的數(shù)據(jù)集必須為數(shù)據(jù)框(data.frame)格式
注1:2、3步可合并為
注2:改變橫縱坐標名稱
注3:geom_point()中參數(shù)的用法
4.將年份映射到顏色/形狀/大小屬性(按年份分組)將分組變量(因子或字符變量,可通過factor()強制性將非因子變量轉為因子變量)賦值給顏色或形狀或大小屬性(變量賦值必須在aes里面),實現(xiàn)分組散點圖的繪制。①顏色
5.增加平滑曲線geom_smooth可以增加一條線,而stat_smooth是可以添加一個置信區(qū)間范圍的(利用方差值)。①stat_smoothggplot函數(shù)中賦予的值是全局性質的,如果不希望全局生效,放到后面+對應的圖層中去。如:CASE1:stat_smooth對不同顏色的點,各自擬合曲線
CASE2:stat_smooth對所有點,擬合一條曲線
更改平滑曲線為一條紅色虛線
其中l(wèi)inetype依次為1=實線,2=虛線,3=點,4=點破折號,5=長破折號,6=雙破折號
6.自定義顏色/形狀scale_color_brewer()或者scale_color_manual()函數(shù)自定義點的顏色;scale_shape_manual()函數(shù)自定義點的形狀;下面我們將分組變量year同時賦值給顏色和形狀屬性。①改變顏色
7.將連續(xù)型變量(排量)映射到顏色/大小屬性①大小
8.分面facet分面設置在ggplot2應該也是要經常用到的一項畫圖內容,在數(shù)據(jù)對比以及分類顯示上有著極為重要的作用。facet_wrap和facet_grid不同在于facet_wrap是基于一個因子進行設置,facets表示形式為:~變量而facet_grid是基于兩個因子進行設置,facets表示形式為:變量~變量(行~列),如果把一個因子用點表示,也可以達到facet_wrap的效果,也可以用加號設置成兩個以上變量例如:變量+變量~變量的形式,表示對三個變量設置分面。①facet_wrap
下面對參數(shù)進行說明:·nrow,ncol:分面所設置成的行和列,參數(shù)為數(shù)值,表示幾行或者幾列·scales:參數(shù)fixed表示固定坐標軸刻度,free表示反饋坐標軸刻度,也可以單獨設置成free_x或free_y(把scales設置成free之后,可以看出每個分面都有自己的坐標刻度,當然我們也可以單獨對x軸或y軸設置)·shrink:也和坐標軸刻度有關,如果為TRUE(默認值)則按統(tǒng)計后的數(shù)據(jù)調整刻度范圍,否則按統(tǒng)計前的數(shù)據(jù)設定坐標·drop:表示是否去掉沒有數(shù)據(jù)的分組,默認情況下不顯示,邏輯值為FALSECASE1:
facet_wrap()是關鍵,facet與wrap兩個詞組合,就是逐面地包起來。里面我們選擇按照year這個變量來分層,就可以將1999與2008分開。一定要注意!這里在year前面有個~,回歸中的用法。而最后的ncol=1代表著我們的小窗口是1列,指定了1列之后,默認就是兩行(因為年份一共只有兩種)。colour=class。class也是數(shù)據(jù)集中的一個變量,代表不同種類的汽車,而因為汽車的種類非常多,所以顏色也就變的很多。CASE2:
如果不加ncol=1,會默認橫著排列CASE3:
下面對參數(shù)進行說明:·scales、shrink、drop同上·as.table:和小圖排列順序有關的選項。如果為TRUE(默認)則按表格方式排列,即最大值(指分組level值)排在表格最后即右下角,否則排在左上角·margins:通過TRUE或者FALSE表示否設置而一個總和的分面變量,默認情況為FALSE,即不設置·space:表示分面空間是否可以按數(shù)據(jù)進行縮放,參數(shù)和scales一樣CASE1:
一行多列CASE2:
一列多行
9.其他調整①更改透明度alpha當數(shù)據(jù)量非常大時,會導致數(shù)據(jù)重疊點非常嚴重,可通過使用半透明的點避免。alpha參數(shù)控制點的透明度。從0(完全透明)到1(不透明)。
CASE2:轉換為極坐標系coord_polar()
CASE2:使用ggtitle,并居中hjust
hjust其實就是左右移動的意思,0.5CASE3:使用labs
等價形式
1.一般形式
2.內置的統(tǒng)計變換geom_histogram()默認使用stat_bin(按照區(qū)間統(tǒng)計頻數(shù))這個統(tǒng)計變換,而這個統(tǒng)計變換會生成(1)count:每個組里觀測值的數(shù)目,(2)density:每個組里觀測值的密度和(3)x:組的中心位置這三個變量①調整分箱(bin),即直方圖的寬度binwidth
3.調整每個年份對應一個直方圖facet_wrapCASE1:
CASE2:
注:這里的year如果改成factor(year),會報錯
4.元素位置的調整元素位置的調整共有5種包括了(1)dodge:并排方式;(2)fill:堆疊圖像元素,并將高度標準化為1,(3)identity:不做任何調整;(4)jitter:給點增加擾動避免重合和(5)stack:堆疊圖像元素。①fill=factor(year)fill=factor(year)表示按年進行填充顏色。為什么不用前面說到的colour=?這是ggplot繪圖中,對于線與點這種面積為0的結構,它的顏色就直接使用colour=進行指定,而對條形和密度區(qū)域,例如條形圖,柱狀圖,扇形圖(特殊的柱狀圖),箱線圖等等有面積的圖形,其面積的顏色,我們需要用fill=來指定。