繪圖基礎
所有的ggplot2的繪圖都會先調用ggplot()
的實例,用aes()
來調用美化相關的函數。使用+
來獲得有關圖層,標尺和座標相關的。使用ggsave()
來將圖層保存。
函數 | 用法 | 方法 |
---|---|---|
ggplot |
ggplot(data=NULL,mapping=aes(),...,environment= |
創建一個新的ggplot對象 |
aes |
aes(x,y,...) |
創建美化圖層,是一個數據與美化圖層的map |
+.gg |
向繪圖中增加新的元素 | |
ggsave |
保存 | |
qplot quickplot |
快速畫圖 |
ggplot
參數
data
:是用來畫圖的數據集,必須是data.frame格式的。如果不是的話,需要用別的函數進行轉換。
mapping
:數據和美化圖層的一個map關係列表
environment
:默認爲ggplot中被調用時的環境
aes
參數
x,y,...
:美化圖層和變量的mapping關係列表
示例
在賦值時候可以給定函數名稱,也可以按順序賦值
> aes(x=mpg,y=wt)
* x -> mpg
* y -> wt
> aes(mpg,wt)
* x -> mpg
* y -> wt
也可以在數據上增加一些函數功能:
> aes(x=mpg^2,y=wt/cyl)
* x -> mpg^2
* y -> wt/cyl
aes常常和ggplot()
函數或者和圖層一起使用
放在ggplot()
中
ggplot(mpg,aes(displ,hwy))+geom_point()
或者放在圖層中
ggplot(mpg)+geom_point(aes(displ,hwy))
+.gg
參數
在ggplot2中,使用加號+
來一層層的構建複雜圖形,使用的形式可是爲以下兩種方法:
+(e1, e2)
# 或者
e1 + e2
其中e1
可以是一個ggplot類或者一個主題e2
是一個繪圖的元素,由以下幾個部分組成:
元素 | 含義 |
---|---|
aes() |
用戶自建的mapping關係,用來替換初始mapping關係 |
geom_ 、stat_ |
用來創建或者增加圖層 |
scale |
用來覆蓋已有的scale |
theme |
主題 |
coord |
覆蓋默認的座標系統 |
facet |
示例
base = ggplot(mpg,aes(displ,hwy))+geom_point()
base+geom_smooth()
使用%+%
來覆蓋原有的數據
base %+% subset(mpg,fl=="p")
base+list(subset(mpg,fl=="p"), geom_smooth())
ggsave
參數
filename
:文件名
plot=last_plot()
:需要被保存的圖,默認爲最後出現的那張圖
device=NULL
:後綴名
path
:文件路徑
scale=1
:乘子
width,heigth,units
:文件大小參數
dpi
:清晰度
limitsize=TRUE
:文件大小限制,默認爲大小不超過50X50
qplot
參數
x,y...
:aes傳入的數據
data
:需要使用的dataframe
facetes
:分面的選擇
margins
:grid分面參數
geom
:如果
xlim,ylim
:X軸和Y軸的限制
log
:選擇哪個變量做對數轉換
示例
從data.frame中使用數據
qplot(mpg,wt,data=mtcars)
qplot(mpg,wt,data=mtcars,colour=cyl)
qplot(mpg,wt,data=mtcars,size=cyl)