2016-10-24 14 views
0

annotate()を使用してggplotオブジェクトにテキストを追加できます。しかし、アスタリスクを印刷する方法はわかりません。なぜなら、私が理解する限り、アスタリスクが解析に使用されているからです。ggplotのannotate()内のアスタリスク

ここは例です。私がノンパラメトリックテストを実行したと仮定し、テスト統計量を星印で測定した有意水準で印刷したいとします。残念ながら、これは機能しません。

library(ggplot2) 
ggplot(iris, aes(Sepal.Length, Sepal.Width, color=Species)) + 
    geom_point() + 
    annotate('text', x = 7, y = 4, label="chi^2 == 2.50***", parse=TRUE) 

Error in parse(text = as.character(lab)) : <text>:1:16: unexpected '*' 
1: chi^2 == 2.50*** 

プロットオブジェクトの外にラベルを定義します。 lab <- paste0("chi^2 == 2.5","***", sep="")、その後annotate('text', x = 7, y = 4, label=lab, parse=TRUE)を呼び出しても機能しません。

アスタリスクをannotate()と併用することはできますか?

を編集します。申し訳ありませんが、私はギリシャ文字を編集したいと言いました。理想的には、テキストはダブルとシングル引用符の組み合わせを使用して

答えて

3

は、トリックを行います*** $$カイ^ 2 = 2.50 $$のように表示されます。

library(ggplot2) 
ggplot(iris, aes(Sepal.Length, Sepal.Width, color=Species)) + 
    geom_point() + 
    annotate('text', x = 7, y = 4, label='chi^2 == "2.50***"', parse=TRUE) 

あなたはlabel =のための単一引用符を使用することができ、かつannotateを解析したくない文字列を二重引用符で囲みます。二重引用符の外側ではあるが、一重引用符の中にあるものはすべて解析されます。

enter image description here

+0

私はRは、ギリシャ文字($ CH^2 $)OK – invictus

+0

@invictusをコンパイルしたいことを言及することを怠っ、私のアカウントにそれを取るために私の答えを編集しました。 – useR

関連する問題