棒グラフ内の頻度を表示しようとしています...まあ、グラフのどこかにそれらが必要です:棒の下、棒の中、棒の上、または凡例領域。そして、私はそれがでできることを思い出します(私は間違っているかもしれません)ggplot2
。これはおそらく簡単なことです...少なくともそれは簡単なようです。コードは次のとおりです。
p <- ggplot(mtcars)
p + aes(factor(cyl)) + geom_bar()
周波数をグラフに埋め込むことができる可能性はありますか?
geom_text
text
ベースグラフィックスからの類似物です:
p + geom_bar() + stat_bin(aes(label=..count..), vjust=0,
geom="text", position="identity")
ラベルの y 位置を調整したい場合は、y=
内で美学を使用できますstat_bin
。たとえば、y=..count..+1
バーの 1 単位上にラベルを配置します。
geom_text
上記は、stat="bin"
内部で使用する場合にも機能します。
それを行うのは難しい方法です。より良いアプローチがあると確信しています。
ggplot(mtcars,aes(factor(cyl))) +
geom_bar() +
geom_text(aes(y=sapply(cyl,function(x) 1+table(cyl)[names(table(cyl))==x]),
label=sapply(cyl,function(x) table(cyl)[names(table(cyl))==x])))
別の情報を追加したい場合は、次のように機能します。
ggplot(mydata, aes(x=clusterSize, y=occurence)) +
geom_bar() + geom_text(aes(x=clusterSize, y=occurence, label = mydata$otherinfo))
ggplot2 に制限されていない場合は、ベース グラフィックスの ?text または plotrix パッケージの ?boxed.labels を使用できます。