3

プロットで凡例をフォーマットしようとしていますが、ギリシャ語と上付き文字のため、expression()を使用する必要があります。ただし、r ^ 2 = 0.45、P <0.0001を表示したい場合、入力するとr ^ 2 = 0.45P<1e-04になります。

legend(expression(r^2==0.9230~~P<0.0001))

list()関数を検索しようとしましたが、コンマでは役に立ちません。expression()関数で小数を使用しても何も見つかりませんでした。

任意の提案をいただければ幸いです。

ありがとう

4

2 に答える 2

12

paste()(の呼び出し内で)を使用して、expression()文字列と引用符で囲まれていない式をつなぎ合わせることができます。引用符で囲まれていないビットは、とによって示される特別な規則を使用して評価されexample(plotmath)demo(plotmath)文字列は逐語的に印刷されます。

次に例を示します(オペレーターは左と右の両方に何かを期待/必要とするphantom()ため、これも使用します)。<

plot(1)
legend(x = "topleft", 
       legend = expression(paste(r^2==0.9230, ",  ", P<phantom(), "0.0001")))

ここに画像の説明を入力してください

于 2012-11-02T19:21:50.980 に答える
5

substituteこれを回避する別の方法は次のphantomとおりです。

plot(1)
options(scipen=10)
legend(x = "topleft", 
       legend = substitute(list(r^2 == r2, P < p), list(r2=0.923, p=0.0001)))

ここに画像の説明を入力してください

于 2012-11-02T19:38:01.093 に答える