2011-06-24 132 views
2

我在使用ggplot製作barplot時遇到問題。 我嘗試了qplot和gplot的不同組合,但我得到一個直方圖,或者它交換了我的小節,或者它決定使用logscaling。ggplot中的barplot

使用普通繪圖函數。 我會不喜歡它

d<-1/(10:1) 
names(d) <-paste("id",1:10) 
barplot(d) 

感謝

回答

15

要繪製在GGPLOT2條形圖,您必須使用geom="bar"geom_bar。你有沒有試過geom_bar example on the ggplot2 website

爲了讓您的示例工作,請嘗試以下操作:

  • ggplot需要一個data.frame作爲輸入。所以把你的輸入數據轉換成data.frame。
  • 使用`aes(x = x,y = y)將數據映射到圖上的美學。這告訴ggplot數據中的哪些列映射到圖表上的哪些元素。使用geom_plot創建條形圖。在這種情況下,您可能想要告訴ggplot已使用stat="identity"彙總數據,因爲默認值是創建直方圖。

(請注意,您在示例中使用的功能barplot是基礎R顯卡部分,不ggplot

代碼:

d <- data.frame(x=1:10, y=1/(10:1)) 
ggplot(d, aes(x, y)) + geom_bar(stat="identity") 

enter image description here