2017-02-03 30 views
1

テーブルの複数の数値列の計算に基づく集計値の棒グラフとggplot(R) )を含む。複数の列を使用したR/ggplot2集計関数

表:

V1 V2 categorical 3 4 c1 5 6 c2 7 3 c2 3 8 c3

私はこのような何かをしたい:fun.yに詰め関数はその行を受け入れ、

ggplot(Table, aes(categorical)) + stat_summary_bin(aes="V1 * V2"), fun.y = function(r) r$V1 * r$V2)

は、その対応するV1及びV2にアクセス値を使用して、y軸にマップされるものを返します。 所望の結果は、C1 3つのバーのプロットのようになります。12、C2:51、およびC3:24

+0

フォローアップの質問は[こちら](HTTP: //stackoverflow.com/q/42036505/2019874) – juanchito

答えて

2

限り、あなたは、単にそれぞれの行からの結果を追加したいと、position = "stack"geom_barだけで罰金を行います。 aes()は、列の機能の点でそれに渡すことができるものについて非常に自由です。

また
ggplot(df, aes(x = categorical, y = V1 * V2)) + 
    geom_bar(stat = "identity", position = "stack") 

enter image description here

2

stat_summary_binで動作するように、あなたはsumとしてfun.yパラメータを指定することができます。

ggplot(df, aes(x = categorical)) + 
    stat_summary_bin(aes(y = V1 * V2), fun.y = "sum", geom = "bar") 

enter image description here

関連する問題