2016-05-25 11 views
2

私は複数の線でプロットを作ろうとしています。線が引かれる順序を制御して、ある線が他の線の上にくるようにしたいのです。例えば、以下のコードでは、BはAの上にプロットされます。私はgroupの因子レベルを再割り当てすることでこれを逆にすることができますが、これはまた、各行の色や伝説のグループ。線が他のものとは独立して、おそらく審美的にプロットされる順序を直接制御する方法はありますか?ggplot2で複数の行のz順を制御するにはどうしたらいいですか?

library(ggplot2) 
df <- data.frame(
    group=rep(c("A", "B"), each=2), 
    x=c(0,1,0,1), y=c(0,1,1,0)) 
ggplot(df) + 
    aes(x=x,y=y,color=group) + 
    geom_line(size=3) 

aes_group_orderと呼ばれるggplot2マンページがありますが、バージョン2.1.0のように、注文美的への参照を行いません。注文はan old versionのマンページに記載されているようですが、その動作は実際には文書化されておらず、ほんの少し有益な例でしか示されていません。

(編集:ggplot2 release notesによると、「order美的が正式に廃止されましたそれは本当に働いていない、と悪い文書化されたんでした。」)

+0

あなたが生成されgrobsの順序を調べることができます'ggplot'は確かに確定的です。それがあなたのニーズに合っていなければ、あなたの好みに合うように修正するのは難しいことではありません。 –

+0

それは、データ構造を見て、それは簡単ではありません:) –

答えて

0
last_plot() + aes(group=rev(group)) 
関連する問題