ggplot产生较小的箱形图

时间:2020-03-19 02:12:28

标签: r ggplot2

我有一个数据框,其中保存着这样的数据:

Variant variable    value
1         I  Flutter 76.14708
2         I  Flutter 76.23548
3         I  Flutter 76.07839
4         I  Flutter 76.29594
5         I  Flutter 76.25026
6         I  Flutter 76.27906
7         I  Flutter 76.23952
8         I  Flutter 76.18824

该图的R代码如下:

mydata <- read.csv("NBAccuracy.csv",header=TRUE)
dfm <- melt(mydata, id.var = "Variant")
dfm
ggplot(data = dfm, aes(x=variable, y=value)) + geom_boxplot(aes(fill=Variant),width=0.5)+ xlab("Dataset") + ylab("Accuracy(%)")

但是,箱形图的大小太小,需要找到一种方法来放大它们

enter image description here

有什么建议吗?

1 个答案:

答案 0 :(得分:1)

您图表上的问题与一些标准偏差较小的变量有关(在您的示例中,您的Flutter变量I的大多数值似乎接近76)

一种放大这些值的可能方法是通过使用facet_wrap将这些值放大得太小来对图形进行分面:

df <- data.frame(variant = rep(c("I","II","III"), each = 300),
                 variable = rep(rep(c("Flutter","MyTracks","ThreeNow"), each = 100), 3),
                 value = c(rnorm(100, mean = 76, sd = 1),
                           rnorm(100, mean = 60, sd = 15),
                           rnorm(100,mean = 75, sd = 25)))

ggplot(df, aes(x = variable, y = value, fill = variant))+
  geom_boxplot()+
  facet_wrap(~variable, scales = "free")

enter image description here