从ggplot2中x的列名称构建所有数据框列的箱形图

Rom*_*man 10 r ggplot2

我有一个my.df以下结构的数据框:

   A B  C
1  1 1  2
2  2 3  4
3  3 5  6
4 NA 7  8
5 NA 9 NA
Run Code Online (Sandbox Code Playgroud)

如何使用x轴上的列名和y上的所有值构建一个箱形图?

有很多答案,如:

ggplot(melt(my.df), aes(variable, value)) + geom_boxplot()
Run Code Online (Sandbox Code Playgroud)

但我不明白,我实际应该传递的是"变量"和"价值".我尝试了x=colnames(my.df)),这部分有效,但我仍然不知道如何处理y.

Sve*_*ein 18

您可以使用stack转换数据框:

library(ggplot2)
ggplot(stack(df), aes(x = ind, y = values)) +
  geom_boxplot()
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

  • @Roman`ggplot(堆栈(df),aes(x =因子(ind,水平=名称(df)),y =值))+ geom_boxplot()` (2认同)