web-dev-qa-db-ja.com

scale_fill_discreteおよびscale_fill_manual-凡例オプションの混乱

_ggplot2_オブジェクトに2つの異なる変更を適用することに問題があります。 3つのグループを含むバープロットがあります。したい:

  1. 各グループの色を設定します
  2. 凡例ラベルの順序を並べ替える

上記の問題に対する次の解決策を見つけました。

  1. + scale_fill_manual(values = c("red", "green", "blue"))
  2. + scale_fill_discrete(guide = guide_legend(reverse=TRUE))

問題は、2番目のアプリケーション(+ scale_fill_discrete(...))が最初のアプリケーションをオーバーライドしていることです。

_Scale for 'fill' is already present. Adding another scale for 'fill', which will replace the existing scale.
_

(別々に両方ともうまく機能します)。どのように対処しますか?

18
Marta Karas

二重にする必要はありません、これは動作するはずです:

  scale_fill_manual(values = c("red", "green", "blue"),name= "My name", guide = guide_legend(reverse = TRUE))
29
BBrill