需要安裝包:ggforce,下面以R自帶數據做局部放大演示。
require(ggplot2) require(ggforce) require(reshape2) data(CO2) co2<-melt(CO2,id.vars=c("Plant","Type","Treatment"),variable.name = c("n1")) head(co2) ggplot(co2,aes(x=n1,y=value))+ geom_bar(aes(fill=Type),stat="identity")
直接出上圖的結果,可以看出兩組數據相差很大,小的數據根本看不清對應的Y值落在哪里,當然這里可以使用數字標識在條形圖頂部,要么局部放大。
ggplot(co2,aes(x=n1,y=value))+ geom_bar(aes(fill=Type),stat="identity")+ ggforce::facet_zoom(ylim=c(0,3000))
facet_zoom還有其他參數,如zoom.size = 0.5,可將放大部分的圖縮減為主圖的一半大小,默認2倍。
還有show.area 參數,默認True,主圖放大部分加上陰影,上圖可以看出來,不過很淡。