1. ホーム
  2. r

対数スケールとカスタムブレークを用いたヒストグラム

2023-08-27 02:40:20

質問

私はRでyの対数スケールでヒストグラムを生成しようとしています。

hist(mydata$V3, breaks=c(0,1,2,3,4,5,25))

これでヒストグラムができましたが、0から1の間の密度が非常に大きく(約100万値の差)、他のバーをほとんど確認することができません。

では、こうしてみました。

mydata_hist <- hist(mydata$V3, breaks=c(0,1,2,3,4,5,25), plot=FALSE)
plot(rpd_hist$counts, log="xy", pch=20, col="blue")

これは私が欲しいものを与えてくれますが、下は0, 1, 2, 3, 4, 5, 25ではなく、1-6の値を示しています。 また、データを棒グラフではなく、点グラフで表示しています。 barplot は動作しますが、その後、私は任意の下軸を得ることはありません。

どのように解決するのですか?

ヒストグラムは貧乏人の密度推定値です。 あなたの呼び出した hist() を呼び出すと、デフォルトの引数で 周波数 を得ますが、確率ではありません。 ,prob=TRUE を追加してください。

対数軸の問題については、X軸を変換したくない場合は'x'を使用しないでください。

plot(mydata_hist$count, log="y", type='h', lwd=10, lend=2)

は、log-y スケールで棒グラフを表示します -- 見た目はまだ少し違いますが、おそらく微調整が可能です。

最後に、次のようにすることもできます。 hist(log(x), ...) を実行すると、データのログのヒストグラムが得られます。