ggplot2繪圖入門系列之三:位置調整與條形圖


    位置調整(Position adjustments)是針對同一圖層內元素的位置進行微調的方法。它包括五種設置,分別是stack、dodge、fill、identity、jitter。

我們用條形圖來展示其用法,仍使用mpg數據集,其中用到的變量是class,即生產汽車的類型,以及year生產年份。下面的條形圖是將各類型的汽車數量進行匯集,並以年份作為分組變量。我們首先載入擴展包,然后用頻數表對數據進行大致的了解,最后繪制了四種條形圖。

1 library(ggplot2) 2 with(mpg,table(class,year)) 3 p <- ggplot(data=mpg,aes(x=class,fill=factor(year))) 4 p + geom_bar(position='dodge') 5 p + geom_bar(position='stack') 6 p + geom_bar(position='fill') 7 p + geom_bar(position='identity',alpha=0.3)

 

可以看到dodge方式是將不同年份的數據並列放置;stack方式是將不同年份數據堆疊放置,這也是geom_bar的默認處理方式;fill方式和stack類似,但Y軸不再是計數,而是以百分比顯示;identity方式是不做任何改變直接顯示出來,所以需要設置透明度才能看得清楚。

geom_bar是繪制條狀幾何對象,所以也可以用不經匯集的原始數據進行繪圖。下面我們用2001到2010年間的美國GDP增長率舉個例子。

 1 y=c(1.1,1.8,2.5,3.6,3.1,2.7,1.9,-0.1,-3.5,3.0)  2 x=2001:2010
 3 data=data.frame(x,y)  4 p=ggplot(data,aes(x,y,fill=y))  5 p+geom_bar(stat="identity")+ 
 6     geom_abline(intercept = 0, slope = 0,size=1,colour='gray')+
 7     geom_text(aes(label=y),hjust=0.5, vjust=-0.5 )+
 8     scale_y_continuous(limits=c(-3.8,4.2))+
 9     labs(x='年份', y='GDP增長率%')+
10     opts(title = "美國GDP增長率")

 


轉載於:http://r-ke.info/2012/02/08/ggplot2-intro-3.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM