2017-12-21 20 views
1
xlab(expression(paste("CO"^"2", " concentration", "\n Lolium perenne"))) 

これは私の現在のコーディングです。 私のxlabではCO^2の濃度を1行にしたいと思っていますが、その下には "Lolium perenne"がありますが、イタリック体で表示する必要もあります。現在、このコードは "CO^2"と "Lolium Perenne"の上の行に "濃度"を置きます。 助けてください!ggplot2で数式を使って複数行のx軸タイトルを作成する方法

+0

再現可能な例を示します。作成方法については、[here](https://stackoverflow.com/questions/5963269/how-to-make-a-great-r-reproducible-example)を参照してください。 – Ashish

+2

ネイティブで 'expression(...) 'を使って改行することはできませんが、' expression(atop(CO^2 * "濃度"、italic( "Lolium perenne"))) ' – Brian

+0

再現可能な例で答えてください。お気軽に質問にコピーしてください。私はあなたの質問を完全に書き換えたくはありませんでした。私は答えとして@ Brianの提案も含めました。一般的に、SO上では、「解答」の部分に役立つ解答をコメントとして求めています。コメントはいつでも削除することができます。 –

答えて

1

これを再現可能な例にして、@Brianのアプローチを使って答えてみましょう。

以下は動作しません。私たちは、タイプセットしている

ggplot(d, aes(x, y)) + geom_point() + 
    xlab(expression(atop(CO[2]*" concentration", italic("Lolium perenne")))) 

enter image description here

library(ggplot2) 
set.seed(124) 
d <- data.frame(x = rnorm(50), 
       y = rnorm(50)) 

ggplot(d, aes(x, y)) + geom_point() + 
    xlab(expression(paste("CO"^"2", " concentration", "\n Lolium perenne"))) 

enter image description here

しかし、atop()機能を使用して、我々はこの結果を得ることができます:x軸のタイトルはすべて1行ですitalic()機能を使用するイタリック体の "Lolium perenne"。おそらくここで必要とされるかもしれない下付き文字でCO2を書きました。

+0

一般的にお勧めできるほど多くの欠点を持つ回避策だと思うので、回答として投稿しませんでした。そのような問題を解決しようとしているのはしばらくの間、私のバックバーナーになっています。お疲れ様でした。 (今でもレンダリングされていることがわかりますが、 'CO^2 'ではなく' CO [2]'でなければなりません)。 – Brian

+0

私は 'CO [2]'に変更を加えました。 –

関連する問題