原文鏈接:http://www.statmethods.net/advgraphs/ggplot2.html
ggplot2 是由Hadley Wickham創(chuàng)建的提供了強(qiáng)大的圖形語(yǔ)言來(lái)用于創(chuàng)建復(fù)雜而優(yōu)雅的繪圖。近年來(lái),它在R社區(qū)的受歡迎程度在爆炸式增長(zhǎng)。
基于Leland Wilkinson的圖形語(yǔ)法,ggplot2允許您以直接的方式創(chuàng)建表示單變量和多變量數(shù)值和分類數(shù)據(jù)的圖形。可以通過(guò)顏色,符號(hào),大小和透明度表示來(lái)分組,創(chuàng)建一張網(wǎng)格圖就會(huì)變得簡(jiǎn)單。
qplot()
qplot()函數(shù)可以用來(lái)創(chuàng)建最常見(jiàn)的圖表類型。它不能展示所有g(shù)gplot的功能,它可以創(chuàng)建一個(gè)非常廣泛的有用的圖形。格式是:
qplot(x, y, data=, color=, shape=, size=, alpha=, geom=, method=, formula=, facets=, xlim=, ylim= xlab=, ylab=, main=, sub=)
下面是參數(shù)內(nèi)容:
參數(shù) 描述
alpha Alpha透明度為重疊元素表示為一個(gè)分?jǐn)?shù)在0(完整的透明度)和1之間(完全不透明)
color, shape 將變量的水平與象征的顏色,形狀,或大小。對(duì)于線路圖,顏色將水平的變量與線的顏色。密度和盒陰謀,填補(bǔ)associates顏色填充一個(gè)變量。據(jù)說(shuō)是自動(dòng)繪制。
size, fill
data 指定的一個(gè)數(shù)據(jù)集
facets 通過(guò)指定條件變量創(chuàng)建一個(gè)格子圖。它的值表示為rowvar ~ colvar。創(chuàng)建格子圖基于一個(gè)可調(diào)節(jié)變量,使用rowvar ~或者~ colvar)。
geom 指定圖形幾何實(shí)例來(lái)定義圖形類型。geom選項(xiàng)表示了一個(gè)特征向量與一個(gè)或多個(gè)條目的關(guān)系。幾何值觀包括“點(diǎn)”、“順滑”、“箱線圖”,“行”,“直方圖”、“密度”、“長(zhǎng)條”,“抖動(dòng)”。
main, sub 特征向量指定標(biāo)題和副標(biāo)題
method, formula 當(dāng)觀測(cè)的數(shù)量大于1000年,采用更有效的平滑算法。方法包括“l(fā)m”回歸,為廣義可加模型“gam”,“使用rlm”的回歸。公式參數(shù)需要給適合的形式。
x, y 指定變量放置在水平和垂直軸。對(duì)單變量(例如,直方圖),省略y
xlab, ylab 特征向量指定水平和垂直軸標(biāo)簽
xlim,ylim 雙元素?cái)?shù)值向量給出的最小值和最大值分別對(duì)應(yīng)水平軸和垂直軸
注意:
目前,ggplot2不能用于創(chuàng)建3 d圖形或鑲嵌的圖形需求。 使用I(值)來(lái)表示一個(gè)特定的值。例如 size= z 使繪制點(diǎn)或線的大小proporational變量的值z(mì)。相比之下,size=I(3)每個(gè)點(diǎn)或線設(shè)置為默認(rèn)大小的三倍。 下面有一些例子使用了包含在mtcars數(shù)據(jù)集中的汽車數(shù)據(jù)(汽車行駛里程、重量、數(shù)量的齒輪,缸數(shù),等等)中。
# ggplot2 examples
library(ggplot2)
# 創(chuàng)建因子與標(biāo)簽
mtcars$gear <- factor(mtcars$gear,levels=c(3,4,5),
labels=c("3gears","4gears","5gears"))
mtcars$am <- factor(mtcars$am,levels=c(0,1),
labels=c("Automatic","Manual"))
mtcars$cyl <- factor(mtcars$cyl,levels=c(4,6,8),
labels=c("4cyl","6cyl","8cyl"))
# 每加侖汽油行駛的里程數(shù)的核密度圖
# 通過(guò)齒輪數(shù)來(lái)分組 (通過(guò)顏色來(lái)指明)
qplot(mpg, data=mtcars, geom="density", fill=gear, alpha=I(.5),
main="Distribution of Gas Milage", xlab="Miles Per Gallon",
ylab="Density")
顯示結(jié)果如下:
# 齒輪和氣缸的組合因素分別對(duì)mpg和hp的影響散點(diǎn)圖
#每個(gè)層面下,通過(guò)形狀和顏色來(lái)代表作用類型
qplot(hp, mpg, data=mtcars, shape=am, color=am,
facets=gear~cyl, size=I(3),
xlab="Horsepower", ylab="Miles per Gallon")
結(jié)果如下:
# 重量對(duì)不同齒輪數(shù)在每加侖油耗的里程數(shù)的回歸曲線
qplot(wt, mpg, data=mtcars, geom=c("point", "smooth"),
method="lm", formula=y~x, color=cyl,
main="Regression of MPG on Weight",
xlab="Weight", ylab="Miles per Gallon")
結(jié)果如下:
# 不同齒輪數(shù)下的mpg的箱型圖
# 觀察每個(gè)值的結(jié)果和抖動(dòng)情況
qplot(gear, mpg, data=mtcars, geom=c("boxplot", "jitter"),
fill=gear, main="Mileage by Gear Number",
xlab="", ylab="Miles per Gallon")
下面是顯示結(jié)果圖:
定制ggplot2圖
和基本R圖形不同的是,ggplot2 圖形不受 par() 函數(shù)中眾多選項(xiàng)的影響,ggplot2繪制的圖形可以通過(guò)theme()函數(shù)來(lái)修改,也可以通過(guò)在gqlot()函數(shù)中增加圖形參數(shù)來(lái)修改。為了更好的操控,可以使用其他包提供的 ggplot()和函數(shù),ggplot2函數(shù)可以通過(guò)使用"+"來(lái)鏈?zhǔn)缴勺罱K的圖形
library(ggplot2)
p <- qplot(hp, mpg, data=mtcars, shape=am, color=am,
facets=gear~cyl, main="Scatterplots of MPG vs. Horsepower",
xlab="Horsepower", ylab="Miles per Gallon")
# 白色背景和黑色網(wǎng)格線
p + theme_bw()
# 大號(hào)棕色加粗斜體的標(biāo)簽放置在圖形的頂部
p + theme(axis.title=element_text(face="bold.italic",
size="12", color="brown"), legend.position="top")
圖形結(jié)果如下:
想要獲取ggplot2更多詳細(xì)內(nèi)容請(qǐng)參考
http://ggplot2.tidyverse.org/reference/