2017-06-28 18 views
4

何らかの理由で、私のインタラクションプロットがRマークダウンのギリシャシンボル(ラテックス)をRスタジオを使って表示していないようです。私が使用しているコードは以下の通りです。 expression()関数が機能しないのはなぜですか?助言がありますか?R:プロットマスの表現記号がインタラクションプロットに表示されない

with(ba_results, interaction.plot(as.factor(f1), as.factor(f2), 
            y, 
            type = "b", 
            pch = c(18, 19, 24), 
            fixed = TRUE, 
            xlab = "Scale factor", 
            ylab = "Mean Response", 
            trace.label = expression(mu_e), 
            main = paste("Interaction plot of", 
               expression(mu[e]), 
               "f1"))) 
+0

がこれを実行できません。シミュレートされたデータも追加できますか? –

答えて

0

タイトルは、expressionにすべてをラップします。たとえば、main = expression(paste("Interaction plot of ", mu[e], " f1"))またはmain = expression(Interaction~plot~of~mu[e]~f1)です。

trace.labelの場合、expressionは正しく解析されていません。

text(xleg, ylim[2L] - 0.05 * yrng, paste(" ", trace.label), adj = 0) 

がそうtrace.labelは、テキスト文字列に戻す表現を回すpasteに包まれて:問題はinteraction.plotのコードでは、この行があるように見えます。たとえば:回避策として

expression(mu[e]) 
# expression(mu[e]) 

paste(" ", expression(mu[e])) 
# " mu[e]" 

、あなたがあるとしてtrace.label使用する機能を変更することができます。これを行うには、コンソールにinteraction.plotと入力してinteraction.plotのコードを取得します。コードを新しいRスクリプトファイルにコピーし、その関数にmy_interaction_plotのような新しい名前を割り当てます。そして、これに上記の行を変更します。この変更が正しく解析されexpression(mu[e])になります

text(xleg, ylim[2L] - 0.05 * yrng, trace.label, adj = 0) 

今、ちょうどこのようmy_interaction_plot代わりのinteraction.plot使用:

with(ba_results, 
    my_interaction_plot(as.factor(f1), as.factor(f2), y, type = "b", 
         pch = c(18, 19, 24), fixed = TRUE, 
         xlab = "Scale factor", ylab = "Mean Response", 
         trace.label = expression(mu_e), 
         main = expression(paste("Interaction plot of ", mu[e], " f1")))) 
関連する問題