在R中如何绘制表示长数据比例的条形图

时间:2016-09-28 03:50:28

标签: r plot graph

DF2

   Meal                           Contents apple banana beef berry blackberry    cantaloupe chicken mashpotatoes redberries rice strawberry stringbeans

1 Snack_1   redberries,strawberry,blackberry     0      0    0     0              1          0       0            0          1    0          1           0
2 Snack_2           banana,apple,strawberry,     1      1    0     0          0          0       0            0          0    0          1           0
3 Snack_3                       rice,chicken     0      0    0     0          0          0       1            0          0    1          0           0
4 Snack_4      beef,stringbeans,mashpotatoes     0      0    1     0          0          0       0            1          0    0          0           1
5 Snack_5 banana,strawberry,berry,cantaloupe     0      1    0     1          0          1       0

我运行一个功能来找出零食的顶级成分

 topn_v1  <- names(sort(colSums(df2[3:ncol(df2)]), decreasing=TRUE))[1:n]

所以它产生了这样的结果:

     Berry           10
     Strawberry     200
     Cantalopue      30

当我尝试绘制此值时,会在图上产生一个点。 但我希望它能显示条形图,以显示每种成分如何相互公平。这是否可能在R

1 个答案:

答案 0 :(得分:0)

基地R&amp; GGPLOT2:

df
     Fruit Count
1      Berry    10
2 Strawberry   200
3 Cantalopue    30

barplot(df$Count, names.arg=df$Fruit, ylab='Count')

library(ggplot2)
ggplot(df, aes(Fruit, Count)) + geom_bar(stat='identity')

enter image description here