R:ggplot框图

时间:2017-02-18 21:38:38

标签: r ggplot2

我的数据框如下:

   Calories Protein TotalFat
1       717    0.85    81.11
2       717    0.85    81.11
3       876    0.28    99.48
4       353   21.40    28.74
5       371   23.24    29.68
6       334   20.75    27.68
7       300   19.80    24.26
9       403   24.90    33.14
11      394   23.76    32.11
12       98   11.12     4.30

我想使用boxplot制作ggplot。我可以使用基本R使用以下代码

来完成此操作
boxplot(df)

但我如何处理ggplot

1 个答案:

答案 0 :(得分:0)

要使用ggplot,您应该将数据从宽格式重新整理为长格式,以便它看起来像这样:

library(tidyverse)
df %>% gather %>% head(20)
#         key  value
# 1  Calories 717.00
# 2  Calories 717.00
# ...
# 11  Protein   0.85
# 12  Protein   0.85
# ...

你可以做到

df %>% 
  gather %>% 
  ggplot(aes(key, value)) + 
  geom_boxplot()

...并获得:

enter image description here

数据:

df <- read.table(header=T,text="   Calories Protein TotalFat
1       717    0.85    81.11
2       717    0.85    81.11
3       876    0.28    99.48
4       353   21.40    28.74
5       371   23.24    29.68
6       334   20.75    27.68
7       300   19.80    24.26
9       403   24.90    33.14
11      394   23.76    32.11
12       98   11.12     4.30")