私はggplot2でいくつかの結果をプロットしています。ggplot2のスケール関数で式を正しく使うにはどうすればいいですか?
category comparison value
1 A deltaXT/FT 6807
2 B deltaXT/FT 11894
3 C deltaXT/FT 1215
4 D deltaXT/FT 42862
5 E deltaXT/FT 34313
...
合計4つの比較カテゴリ-Eに細分それぞれ、同一のデータフレーム内(プロットはthisのように見える)がある:データは、このような構造化されたデータフレームに編成されます。 私の目的はDeltaのギリシャシンボルを使って、 "deltaXT/FT"を "ΔXT/ FT"と置き換えることです。
ggplot(data=vars, aes(x=category, y=value, fill=comparison)) +
...
scale_fill_manual(values=c("deltaXT/FT"="#6FA9BC"), ...)
私はscale_fill_manual
に「deltaXT/FT」を使用しながら、基本的に、すべてがうまく動作します:私はこのように、バーの色を定義するには、「比較」欄を使用しているプロットで
元のデータフレーム内にある。私はexpression(Delta * "XT/FT")="#6FA9BC", ...)
を使用しようとすると、私はこのエラーを取得:expression()
がそこにキーとして使用することができませんでした。
Error: unexpected '=' in:
...
scale_fill_manual(values=c(expression(Delta * "XT/FT"))="
問題がscale_fill_manual()
であると思われます。 StackOverflowで他のスレッドを読んだところ、bquote(expression()=value)
を使用するように勧められましたが、エラーは使用時に変更されませんでした。
この問題を回避し、凡例に素晴らしいΔXT/ FT名を付ける方法に関する提案はありますか?
EDIT:必要なところでRscriptにΔ文字をコピーして貼り付けますが、このような状況ではexpression()
をキーとして使用することができます。