2010-11-19 10 views
11
直感的に私は次のようなものを探しています: facet_(scales="free_color")

ggplot2:ファセットごとに別のカラースケール

私は

p <- ggplot(mpg, aes(year, displ, color=model)) + facet_wrap(~manufacturer) 
p + geom_jitter() 

のようなことをしていますそれは、種(manufacturer)色によって個体。 問題は、すべての人が同じ色のスケールを共有することです。その結果、ファセット内の点は非常に似た色になります。

グループの美しさをgeom_lineで使うと問題は解決しますが、行はドットとは別の話をします。

別の明らかな解決策は、ファセットを削除し、各サブセットごとに別のプロットを描くことです。 (これが唯一の解決策でなければならない場合:すばやく、スマートで、実証済みの方法がありますか?)

答えて

5

ファクタで色分けしているときにこれが利用可能なオプションであるとは確信していません。

d_ply(mpg, .(manufacturer), function(df) { 
jpeg(paste(df$manufacturer[[1]], ".jpeg", sep="")) 
plots <- ggplot(df, aes(year, displ, color=factor(model))) + geom_jitter() 
print(plots) 
dev.off() 
}) 

関連回答:しかし、個々のプロットを作成する簡単な方法は、このようなものになるだろう Different legends and fill colours for facetted ggplot?

+0

ハドレー述べたように( ed) "別のプロットを描くことで回避するのが簡単です" - これはどのように表示されますか?ありがとう!しかし、私はまだ作成した他の面取りされたプロットと一致するようにそれらを組み合わせるのに苦労しています。 – ian

+0

あなたはこれまでのものを私たちに見せてもらえますか?何がマッチングしていないかを記述しようとしますか? –

+0

実際には、プロットの点であなたが現在持っているものとあなたが実際に探しているものを示す新しい質問をするのが最善でしょう。 –

2

私は、あなたは、単にそれぞれ、各メーカーは、いくつかのモデルを作るクラスによって色にしたいと思います1つまたはクラスごとに2:あなたはリンクの答えで

p <- ggplot(mpg, aes(year, displ, color=class)) + facet_wrap(~ manufacturer) 
p + geom_jitter() 

alt text

+1

'mpg'データセットは単なる例でした。私は種( 'ファセット')ごとに樹木( '' '' '' '' '' '' ')の密度勾配(' x''''''''')をプロットしたい。それぞれのツリーは1つの種にしか属しません。 – ian

関連する問題