9

2つの曲線の違いを説明するために、いくつかの累積経験密度関数を重ねてプロットしたいと思います。前の質問で指摘したように、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)

ただし、私の曲線は時々少し重なっていて、このグラフを生成する上記の例のように、どれがどれであるかを判断するのが難しい場合があります。

ここに画像の説明を入力してください

この2つのCDFの色を本当に変えたいと思います。しかし、その方法がわかりません。任意のヒント?

4

3 に答える 3

13

記憶が役立つなら、私は過去にこれをしました。私が覚えているように、あなたはそれを騙す必要がありましたEcdf()。これは単なるステップ関数のプロットであることを示唆していると思います。help(ecdf)したがって、2つ以上のecdfを推定し、1つをプロットしてから、を介して注釈を付けることができますlines()

編集 それは同じくらい簡単であることがわかります

  R> Ecdf(c(rnorm(20), rnorm(20)), group=g, col=c('blue', 'orange'))

ヘルプページがcol=議論を明確に述べているように。plot.stepfun()しかし、明示的に使用したスクリプトレットもいくつか見つかりました。

于 2011-06-14T13:20:22.100 に答える
7

各曲線を一度に1つずつ追加できます(それぞれに独自のスタイルがあります)。

Ecdf(rnorm(20), lwd = 2)
Ecdf(rnorm(20),add = TRUE, col = 'red', lty = 1)
于 2011-06-14T13:31:36.917 に答える
0

使用Ecdfせずに(利用できるようには見えませんHmisc):

set.seed(3)
mat <- cbind(rnorm(20), rnorm(20))
matplot(apply(mat, 2, sort), seq(20)/20, type='s')
于 2020-03-09T06:39:18.163 に答える