1
geom_barを使って、sum(.. counts ..)で除算するのではなく、正規化係数で除算するようにしようとしています。ggplot2でgeom_barの 'パーセント'形式を変更する
n=200
df = data.frame(let = letters[sample(1:26,n,replace=TRUE)],
cat=letters[sample(1:2,n,replace=TRUE)],
norm = as.integer(1+round(runif(n)*10))
d <- ggplot(df, aes(let,fill=cat)) +
geom_bar(aes(y = ((..count..)/sum(..count..))),position='dodge')
代わりに、私は正規化係数で除算したいと思います:
d <- ggplot(df, aes(let,fill=cat)) +
geom_bar(aes(y = ((..count..)/norm)),position='dodge')
しかし、これはエラーを生成します。
> d
Error in (count)/norm : non-numeric argument to binary operator
これは単なるおもちゃの一例です。
> ggplot(droplevels(dfR[keep,]), aes(x=loc_breakBinned,fill=amalgamated_group)) +
geom_bar(aes(y = ((..count..)/subject_count_ASDvTD)),position='dodge')
Error in eval(expr, envir, enclos) :
object 'subject_count_ASDvTD' not found
ggplot2はsubject_count_ASDvTD
は、DFRの一部ではないと主張しているが、迅速なルックスは、それが明確であることを示しています:
> str(dfR[keep,c('amalgamated_group','loc_breakBinned','subject_count_ASDvTD')])
'data.frame': 3694 obs. of 3 variables:
$ amalgamated_group : Factor w/ 6 levels "ASD","CONTRAST",..: 1 1 1 1 1 1 1 1 1 1 ...
$ loc_breakBinned : Factor w/ 18 levels "pos:(10.7,12.8]_totExonD:(-0.00822,1.64]",..: 14 1 8 8 14 4 8 13 8 14 ...
$ subject_count_ASDvTD: int 213 213 213 213 213 213 213 213 213 213 ...
は何である私の実際のコードは、私がまだ複製することができなかったさまざまなエラーが発生しましたここにいる?なぜggplotはsubject_count_ASDvTD
と表示されますか?
注:溶液がAES内で変数を定義である
ggplot(droplevels(dfR[keep,]), aes(x=loc_breakBinned,fill=amalgamated_group,y = ((..count..)/subject_count_ASDvTD))) +
geom_bar(position='dodge')
それは、あなただけの重量にしたいことは可能です= 1/norm'を 'aes'に入れますか? (グループごとに集計された)カウントを(ノルムのように)集計されていないものでどのように分けることができるか分かりません。 [この質問](http://stackoverflow.com/questions/17832608/how-to-use-earlier-declared-variables-within-aes-in-ggplot-with-special-operator)は、関連する可能性がありますが、それは定数によって。もう一つの選択肢は、ggplot2の外にグラフ化したい値を計算することです - それは簡単です。 – aosmith
私は重量が私が探しているとは思わない。私は取得しようとしています:座っている座席の数/合併グループのgroup_i内の件数 – user3030872
私は重量が私が探しているものではない。私は得ようとしている:amalgamated_groupsのgroup_i内で観察された座席数/件名。 パーセントは私に与えます:amalgamated_groupsのgroup_i内の遺伝子座の数/遺伝子座の数。 weight = subject_countとすると、amalgamated_groupsのgroup_i内の件数/ amalgamated_groupsのgroup_i内のlociの数?それは私が探しているものの逆です。それから、この作品は? geom_bar(position = 'dodge') ' – user3030872