使用moderndive包和碗数据集比较不同的表示方法。设置边界似乎会更改数据分布的位置,我在函数使用中遗漏了什么?
vs <- bowl %>%
rep_sample_n(size = 50, reps = 10000) %>%
group_by(replicate) %>%
summarise(num_red = sum(color=="red")) %>%
mutate(prop_red = num_red/ 50) %>%
mutate(prop_white = 1 - prop_red)
c1 <-ggplot(vs, aes(x=prop_red)) +
geom_histogram(color = "white", binwidth = 0.025) + labs(title="c1")
c2 <-ggplot(vs, aes(x=prop_red)) +
geom_histogram(color = "white", binwidth = 0.025, boundary = 0.4)
grid.arrange(c1,c2,nrow = 1)

发布于 2020-11-09 09:40:42
boundary参数是一个bin位置说明符。您在c2图上强制在0.4处进行二进制断点,而c1绘图会根据0.025的二进制数自动分配二进制点断点。
由于您的分布是不连续的(尽管在使用0.025的绑定宽度时无法理解这一点),因此柱状图的位置会在直方图计数中产生很大的差异。请参阅下面的第三个图,将以下内容添加到您的代码中:
c3 <-ggplot(vs, aes(x=prop_red)) +
geom_histogram(color = "white", binwidth = 0.0125)added third plot with smaller binwidth to show discontinuity
https://stackoverflow.com/questions/61989220
复制相似问题