一連の水平方向にグループ化された棒グラフを作成する必要があります。棒グラフ機能は、プロットの余白を自動的に調整しないため、テキストが切り取られます。
graphics.off() # close graphics windows
test <- matrix(c(55,65,30, 40,70,55,75,6,49,45,34,20),
nrow =3 ,
ncol=4,
byrow=TRUE,
dimnames = list(c("Subgroup 1", "Subgroup 2", "Subgroup 3"),
c(
"Category 1 Long text",
"Category 2 very Long text",
"Category 3 short text",
"Category 4 very short text"
)))
barplot(test,
las=2,
beside = TRUE,
legend=T,
horiz=T)
R dotchart関数のようにプロットを自動的に右に移動するオプションが見つかりません((SASのbarchartプロシージャも自動的にマージンを調整します)。明らかに、par関数を使用して手動でマージンを調整できます。 。
par(mar=c(5.1, 13 ,4.1 ,2.1))
プロットを右に移動します
テキストの長さに応じて、プロットを自動的に右に移動する(つまり、余白を調整する)オプションはありますか?
プログラムでそれを行うための2つの関連するアプローチを考えることができます:1)最長のテキスト文字列の長さを計算し、それに応じて左マージンを調整します2)データのドットチャートプロットを作成し、どういうわけかマージンをキャプチャし、棒グラフで同じマージンを使用します。
それを行う簡単な方法はありますか?ありがとう!