我正在尝试创建常规的箱形图,但是却得到了一个奇怪的虚线图。
您能告诉我我做错了什么以及如何纠正吗?
非常感谢您。
box_plot <- comb_rpt %>%
filter(!is.na(oracle_contract_desc.x),
service_mnth %in% c('2018-01', '2018-02', '2018-03', '2018-04',
'2018-05', '2018-06', '2018-07')) %>%
ggplot(aes(x = service_mnth, y = var_est_to_actual)) +
geom_boxplot()
我的怪异箱形图看起来像一个点:
正确的Boxplot看起来像一个实际的盒子,带有颜色填充
答案 0 :(得分:2)
我的猜测是,每个0
的{{1}}中有var_est_to_actual
个。
让我们复制“问题”。
首先,我们从一个广泛的法线生成数据并显示箱线图。
service_mnth
我们现在将set.seed(2018)
df <- setNames(data.frame(
rnorm(100, sd = 100),
rnorm(100, sd = 100)), c("2018-01", "2018-02"))
library(tidyverse)
df %>%
gather(service_mnth, var_est_to_actual) %>%
ggplot(aes(service_mnth, var_est_to_actual)) +
geom_boxplot()
中每个service_mnth
的观测值中的70%替换为0
,并再次显示修改后的数据的箱线图。
df %>%
gather(service_mnth, var_est_to_actual) %>%
group_by(service_mnth) %>%
mutate(frac = (1:n()) / n()) %>%
mutate(var_est_to_actual = if_else(frac < 0.7, 0, var_est_to_actual)) %>%
ggplot(aes(service_mnth, var_est_to_actual)) +
geom_boxplot()
请注意与您显示的箱线图相似。