2014-11-06 74 views
8

我有這樣的數據:用ggplot繪製表格對象?

  No Yes 
Female 411 130 
Male 435 124 

這是使用標準table命令創建的。現在我情節可以繪製這個作爲這樣:

plot(table(df$gender, df$fraud))

並然後輸出一個2x2條形圖。

所以我的問題是,我怎樣才能做到這一點與ggplot2?有沒有辦法將表格對象轉換爲數據框?我會這樣做,但它變得一團糟,然後你需要重新命名列和行標題,它真的是一個非常簡單的事情變得混亂?

回答

14

喜歡的東西

ggplot(as.data.frame(table(df)), aes(x=gender, y = Freq, fill=fraud)) + geom_bar(stat="identity") 

獲取一個重新標號的最小量的類似圖表。

3

ggplot2與數據幀一起工作,因此,您必須將錶轉換爲一個幀。下面是一個示例代碼:

myTable <- table(df$gender, df$fraud) 
myFrame <- as.data.frame(table(myTable)) 

現在,你可以在使用GGPLOT2 myFrame:

ggplot(myFrame, aes(x=gender))+ 
    geom_bar(y = Freq) 

看到Coerce to a Data Frame以獲取更多信息。