簡體   English   中英

如何使用 ggplot 繪制條形圖 plot

[英]How to plot a barplot using ggplot

                 average
Young          0.01921875
Cohoused Young 0.07111951
Old            0.06057224
Cohoused Old   0.12102273

我正在使用上面的數據框來創建直方圖或條形圖,我的代碼如下:

C <-ggplot(data=c,aes(x=average))
C + geom_bar()

但這里附有 plot。

在此處輸入圖像描述 我希望條形高度反映我在 y 軸上的數據,而不是條形圖在 x 軸上的位置,但我不知道我的代碼有什么問題。

我們可以用rownames_to_column創建一個列

library(dplyr)
library(tibble)
library(ggplot2)
c %>%
    rownames_to_column('rn') %>%
    ggplot(aes(x = rn, y = average)) +
         geom_col()

或者直接在base R中創建一列

c$rn <- row.names(c)
ggplot(c, aes(x = rn, y = average)) +
     geom_col()

或者按照@user20650的建議

ggplot(data=c,aes(x=rownames(c) , y=average))

注意:最好不要用 function 名稱命名對象( c是一個函數)


base R中,通過barplot ,我們可以直接得到圖

barplot(as.matrix(c))

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM