R:将一个ECDF以不同颜色绘制在另一个上面

JD *_*ong 8 plot r ecdf

我有几个累积的经验密度函数,我想在彼此之上绘制,以说明两条曲线的差异.正如之前的一个问题所指出的那样,绘制ECDF的功能很简单plot(Ecdf()).当我阅读精细的手册页时,我确定我可以使用以下内容绘制多个ECDF:

require( Hmisc )
set.seed(3)
g <- c(rep(1, 20), rep(2, 20))  
Ecdf(c( rnorm(20), rnorm(20)), group=g)
Run Code Online (Sandbox Code Playgroud)

然而,我的曲线有时会重叠一点,很难说哪个是哪个,就像上面产生这个图的例子一样:

在此输入图像描述

我真的想让这两个CDF的颜色不同.但是,我无法弄清楚如何做到这一点.有小费吗?

Dir*_*tel 12

如果记忆服务,我过去就做过这个.我记得,你需要欺骗它,因为这Ecdf()是非常典型的.我认为help(ecdf)它暗示它只是一个阶梯函数的图,所以你可以估计两个或更多的ecdf,绘制一个然后注释via lines().

编辑 结果就像它一样简单

  R> Ecdf(c(rnorm(20), rnorm(20)), group=g, col=c('blue', 'orange'))
Run Code Online (Sandbox Code Playgroud)

因为帮助页面清楚地说明了这个col=论点.但我也发现了一些我plot.stepfun()明确使用的scriptlet .

  • 我手册中清楚地说明了这一点,我认为这是我读过的.显然,我的一杯吉尼斯正在阻挡屏幕的这一部分. (2认同)

nul*_*lob 7

您可以一次添加一条曲线(每条曲线都有自己的样式),例如

Ecdf(rnorm(20), lwd = 2)
Ecdf(rnorm(20),add = TRUE, col = 'red', lty = 1)
Run Code Online (Sandbox Code Playgroud)