2

Rで次のヒストグラムを生成しました:

ヒストグラム

hist()この呼び出しを使用して生成しました:

hist(x[,1], xlab='t* (Transition Statistic)',
     ylab='Proportion of Resamples (n = 10,000)',
     main='Distribution of Resamples', col='lightblue',
     prob=TRUE, ylim=c(0.00,0.05),xlim=c(1725,max(x[,1])+10))

プラス以下abline()

abline(v=1728,col=4,lty=1,lwd=2)

この垂直線は、検定統計量の実際の位置を示しており、順列サンプルの結果と比較しています。

私の質問は次のとおりです。ご覧のとおり、x スケールは垂直線まで伸びていません。そうしないと奇妙に見えると思うので、そうしてほしいと思います。どうすればこれを実現できますか?

私はすでにxaxs="i"パラメータを試しましたが、効果はありません。私も独自の軸を作成しようとしましaxis()たが、これには両方の軸を最初から作成する必要があり、結果はそれほど良くありません。したがって、これを行うためのより簡単な方法があるに違いないと思います。ある?そうでない場合は、すべてを基本的に同じに見せたいと仮定して、どのaxis()コマンドがうまく機能するかを誰かが提案できますが、x スケールは長くなりますか?

4

2 に答える 2

7

通常の R プロットは、プロットの周りにフレームを描画します。これを追加するには、次のようにします。

box()

プロットの後。

それが望ましくない場合は、軸のプロットを抑制してから、後で独自のものを追加する必要があります。

hist(...., axes = FALSE) ## .... is where your other args go
axis(side = 2)
axis(side = 1, at = seq(1730, 1830, by = 20))

それは垂直線に完全には行きませんが、十分に近いかもしれません. 垂直線に目盛りが必要な場合は、別の目盛りを選択します。

axis(side = 1, at = seq(1725, 1835, by = 20))
于 2012-09-02T20:51:25.553 に答える
6

ここで R は x 軸に 20 のギャップを使用しているため、下限に 1725 ではなく 1720 を使用して必要な拡張を取得できますxlim=c(1720,max(x[,1])+10)

ここに画像の説明を入力

于 2012-09-03T01:24:06.640 に答える