私は画像の上部にあるようなdata.frameを持っています。data.frameからbarplotを作成します
画像の下部にあるようなバープロットを作成する可能性はありますか?ここで、あなたはASCII出力を望んでいないことを、仮定し
私は画像の上部にあるようなdata.frameを持っています。data.frameからbarplotを作成します
画像の下部にあるようなバープロットを作成する可能性はありますか?ここで、あなたはASCII出力を望んでいないことを、仮定し
:
mydf <- data.frame(X1=c(A=2, B=4, C=1), X2=c(3,2,NA), X3=c(4,1,NA))
barplot(t(as.matrix(mydf)), beside=TRUE)
をaxis
への追加の呼び出しを使用するには、より多くの問題のようにラベル付けを与えることができます。
これは容認された答えでなければなりません - なぜこのような単純な作業を行うために2つのライブラリを使用しますか? –
大きなdfを使用している場合は、行列に変換してから表に変換するとオーバーヘッドが大きくなる可能性があります。 – wordsforthewise
@ wordsforthewise、dfが非常に大きいので、このオーバーヘッドが目立つ(問題はもちろんですが)場合は、バープロットはおそらくそれの最良の視覚化ではありません。 –
がggplot2
を使用したソリューションです。詳細については
# load/generate your data
mydf <- data.frame(X1 = c(2,4,1), X2 = c(3,2,NA), x3 = c(4,1,NA), row.names=c("A","B","C"))
mydf$Category <- row.names(mydf)
# bring your data to long format as needed by ggplot
library(reshape2)
mydf.molten <- melt(mydf, value.name="Count", variable.name="Variable", na.rm=TRUE)
# plot and facet by categories
library(ggplot2)
qplot(data=mydf.molten, x = Variable, y = Count, geom="bar", stat = "identity") + facet_wrap("Category")
、私は相談することをお勧めしたいですggplot2 manual、特に約geom_bar
およびfacet_wrap
に関する章。あなたは、単にこれを行うことができますベースのグラフィックスを使用して
私のために働いた!ありがとうございました! – ElPatzo
'> mydf.molten < - melt(mydf、value.name =" Count "、variable.name =" Variable "、na.rm = TRUE) id変数としてカテゴリを使用 > エラー:stat_count()は、美的には使用しないでください。エラー:stat_count()を使用してはなりません。 さらに:警告メッセージ: 'stat'は非推奨です' –
@Mona Jalal; 'ggplot2'は2013年から変更されました。特にverからアップグレードしたときに変更されました。 1.xxxから2.xxx。 – cuttlefish44
アスキー出力を意味する場合は、 'txtplot'パッケージを試してみてください。 –
申し訳ありません、これは単なる例でした)私はbarplot関数で得たようなプロットを持っています – ElPatzo
おそらくあなたの質問のタイトルを変更したいですか?実際には、data.frameからバープロットを作成したいのですが、その逆もありません。 – Beasterfield