我有一个数据集(测试),如下所示:

Type    Met1    Met2    Met3    Met4
TypeA   65  43  97  77
TypeA   46  25  76  77
TypeA   44  23  55  46
TypeA   46  44  55  77
TypeA   33  22  55  54
TypeB   66  8   66  47
TypeB   55  76  66  65
TypeB   55  77  88  46
TypeB   36  67  55  44
TypeB   67  55  76  65


我已经检查了很多箱形图上的链接,但是对于想要的箱形图类型,我仍然没有成功。我希望有一个箱形图,我的X轴的所有大都会(Met1,Met2,Met3,Met4)的类型均为A(黄色,橙色)。本质上,我想要类似以下内容(取自here):

r - 团体票吗?-LMLPHP

我正在尝试类似的东西,

boxplot(formula = len ~ Type , data = test, subset == "TypeA")
boxplot(formula = len ~ Type , data = test, subset == "TypeA", add=TRUE)
Legend(legend = c( "typeA", "typeB" ), fill = c( "yellow", "orange" ) )


但是我无法解决任何问题。谁能帮助我知道如何以正确的方式在测试数据上绘制此类箱形图?

最佳答案

ggplot2解决方案。

首先,使用test将数据框melt转换为长格式:

library(reshape2)
test.m <- melt(test)


绘制数据:

library(ggplot2)
ggplot(test.m, aes(x = variable, y = value, fill = Type)) +
  geom_boxplot() +
  scale_fill_manual(values = c("yellow", "orange"))

09-30 21:41