1、簡(jiǎn)單折線圖
- 折線圖的x既可以對(duì)應(yīng)離散性變量,也可以對(duì)應(yīng)連續(xù)型變量
- 當(dāng)x對(duì)應(yīng)因子變量時(shí),必須使用group=1映射確保數(shù)據(jù)點(diǎn)屬于一個(gè)分組;否則可能會(huì)報(bào)錯(cuò)
BOD1 <- BOD
BOD1$Time <- factor(BOD1$Time)
ggplot(BOD1, aes(x=Time, y=demand, group=1)) + geom_line()
2、多重折線圖(分組折線圖)
在指定x和y映射參數(shù)的同時(shí),將另一個(gè)離散型變量映射給colour參數(shù)或linetype參數(shù)即可
與堆積條形圖不同的是,這里沒(méi)有使用填充
fill而是使用colour或者linetype
library(plyr) #使用ddplyr函數(shù)
library(gridExtra) #將圖形整合
tg <- ddply(ToothGrowth,c("supp","dose"),summarize,
length=mean(len)) #對(duì)數(shù)據(jù)集匯總
p1 <- ggplot(tg, aes(x=dose, y=length, colour=supp)) +
geom_line();p1
p2 <- ggplot(tg, aes(x=dose, y=length, linetype=supp)) +
geom_line();p2
grid.arrange(p1, p2, ncol=2)
當(dāng)將x作為分類(lèi)變量處理時(shí),將x轉(zhuǎn)化為因子后,還要對(duì)group進(jìn)行映射,否則會(huì)報(bào)錯(cuò)
group的映射與填色的映射變量指定是一樣的
如果分組不正確還會(huì)出現(xiàn)錯(cuò)誤的折線圖
有時(shí)數(shù)據(jù)標(biāo)記(shape)會(huì)重疊,需要使用
position=position_dodge(#)選項(xiàng)來(lái)將其偏離
3、樣式修改
3.1 基本樣式
線條樣式可以分別由linetype 、size、colour來(lái)設(shè)定
geom_line(...., linetype=" ", size=#, colour=" ")
3.2手動(dòng)修改填色
與bar chart的手動(dòng)修改填色函數(shù)類(lèi)似,使用以下函數(shù)可以手動(dòng)設(shè)定顏色:
scale_colour_brewer()
scale_colour_manual()
4、繪制面積圖
geom_area()
4.1堆積面積圖
使用fill參數(shù)對(duì)面積圖geom_area()進(jìn)行映射填充即可
- 需要注意的是堆積面積圖的基礎(chǔ)數(shù)據(jù)為寬格式,而ggplot2則要求長(zhǎng)格式
- 可能需要注意圖例反轉(zhuǎn)問(wèn)題
4.2堆積百分比面積圖
步驟類(lèi)似于堆積百分比條形圖,最主要的一步是將要展示的數(shù)據(jù)轉(zhuǎn)換成百分比形式
5、置信區(qū)間
使用geom_ribbon()函數(shù),然后分別映射一個(gè)變量給ymin與ymax
- 需要注意的是,先繪制置信區(qū)間再繪制折線圖可以使得折線圖覆蓋在上面
- 如果模糊不清可以通過(guò)設(shè)定透明度來(lái)調(diào)整
- 對(duì)于上下置信區(qū)間,可以使用linetype來(lái)指定繪制區(qū)間線條的樣式
5.1 使用線條來(lái)繪制置信區(qū)間
可以分別使用geom_line()來(lái)分別對(duì)置信區(qū)間的上界和下界進(jìn)行映射,即可繪制出沒(méi)有填充的置信區(qū)間線條
ggplot(climate, aes(x=Year, y=Anomaly10y)) +
geom_line(aes(y=Anomaly10y-Unc10y), colour="grey50", linetype="dotted") +
geom_line(aes(y=Anomaly10y+Unc10y), colour="grey50", linetype="dotted") +
geom_line()