11

2 つの学生グループの数学の平均点を示す 2 つの棒を含む単純な棒グラフを作成しようとしています。平均は 363.2 と 377.4 です。棒グラフの作成は簡単です。私がやりたいのは、y 軸を 0 ではなく 340 から開始することです。y 軸の制限を変更する方法は知っていますが、y 軸の制限を c( 340, 380)、R はまだバー全体を描画しますが、そのほとんどは x 軸の下にあります!

これが私のコードです:

barplot(c(363.2, 377.4), beside = T, ylim = c(340,380), col = c("orange", "blue"))

プロットも添付しました:

4

2 に答える 2

14

水平軸の追加xpd=FALSEと再追加は機能します。

b <- barplot(c(363.2, 377.4), beside = TRUE, 
   ylim = c(340,380), col = c("orange", "blue"),xpd=FALSE)
axis(side=1,at=b,labels=c("group 1", "group 2"))
box(bty="l")

グーグルの「棒グラフのゼロ軸」は有用なものを思い付くようですが、おそらく他の人がチャイムを鳴らしますが、明確な参照を示すことはできません)垂直軸が行う場所に棒グラフを描くことは悪い習慣ですゼロを含めない:議論は、視聴者が棒グラフが原点に固定されていると想定することです(この議論は、Rが棒グラフに対数軸を簡単に使用できない理由を説明するときによく行われます:ここのコメントを参照してください、例)。このように感じる人は、代わりにポイントを使用して値を示す必要があると言うでしょう。この場合、ゼロアンカーの暗黙の仮定はそれほど強くは成り立ちません。

言い換えれば、「これを行う方法は次のとおりですが、すべきではありません」...

于 2012-07-27T21:10:01.510 に答える
5

を参照すると、次のことがわかります?barplot

「xpd: 論理的です。バーは領域の外に出ることを許可する必要がありますか?」

xpd=FALSEバープロットのパラメーターに含める必要があるだけです。

于 2012-07-27T21:05:58.240 に答える