如何使用ggplot绘制条形图

x
                 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()

但情节附在这里。

在此处输入图片说明 我希望条形高度将数据反映在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))

注意:最好不要使用函数名称来命名对象(c是一个函数)


在中base Rbarplot我们可以直接获取图

barplot(as.matrix(c))

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章