我想根据两个因素(Tiefe)和(Ort)制作变量(Theta..vol ..)的箱线图。
> str(data)
'data.frame': 30 obs. of 6 variables:
$ Nummer : int > 1 2 3 4 5 6 7 8 9 10 ...
$ Name : int 11 12 13 14 15 16 17 18 19 20 ...
$ Ort : Factor w/ 2 levels "NNW","S": 2 2 2 2 2 2 2 2 2 2 ...
$ Tiefe : int 20 20 20 20 20 50 50 50 50 50 ...
$ Gerät : int 2 2 2 2 2 2 2 2 2 2 ...
$ Theta..vol..: num 15 16.4 14.9 16.6 10.6 22.1 17.6 10 18 20.3 ...
我的代码是:
ggplot(data, aes(x = Tiefe, y = Theta..vol.., fill=Ort))+geom_boxplot()
由于变量(Tiefe)有3个等级而变量(Ort)有2个等级,我希望看到三个成对的箱形图(每一对(Tiefe))。 但我只看到一对(一个“Ort”级别的箱形图和“Ort”第二级的另一个箱形图) 我应该改变什么来为每个“Tiefe”获得三对?谢谢
答案 0 :(得分:0)
在您的代码中,Tiefe
被读取为整数而不是因子。
使用dplyr
与ggplot2
进行轻松修复:
首先我制作了一些虚拟数据:
library(dplyr)
data <- tibble(
Ort = ifelse(runif(30) > 0.5, "NNW", "S"),
Tiefe = rep(c(20, 50, 75), times = 10),
Theta..vol.. = rnorm(30,15))
接下来,我们会在导入Tiefe
:
ggplot
列
data %>%
mutate(Tiefe = factor(Tiefe)) %>%
ggplot(aes(x = Tiefe, y = Theta..vol.., fill = Ort)) +
geom_boxplot()