如何改变 的 X 轴stat_ecdf,但不改变 ecdf 的计算?
示例代码:
df <- data.frame(x=c(1,2,3,4,5))
# 1 to 5
ggplot(df, aes(x)) + stat_ecdf()
# 1 to 3, but stat_ecdf no longer calculated on the whole range
ggplot(df, aes(x)) + stat_ecdf() + scale_x_continuous(limits=c(NA,3))
Run Code Online (Sandbox Code Playgroud)
正如我所期望的那样,第一个图变为 1.0 x 5:
第二张图从 1 到 3(良好),但最终结果为 y=1 而不是 y=0.66:
这可能是因为 是stat_ecdf在可见窗口上计算的,但我希望它在所有数据上计算。
我很确定我以前问过这个问题,但我找不到。
小智 6
一般情况下,在计算汇总统计数据之前,会先删除这些点。使用coord_cartesian()可以解决这个问题。尝试:
ggplot(df, aes(x)) + stat_ecdf() +
coord_cartesian(xlim = c(0, 3))
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
621 次 |
| 最近记录: |