2010-11-19 5 views
11

Sezgisel olarak bir şey arıyorum: facet_(scales="free_color")ggplot2: faset başına ayrı renk ölçeği

xzxx
p <- ggplot(mpg, aes(year, displ, color=model)) + facet_wrap(~manufacturer) 
p + geom_jitter() 
gibi bir şey yapıyorum: Bu, farklı türlere ( manufacturer) ait bireylerden ( model) ait 2d ölçümlerini gösteren bireye göre renk. Sorun şu ki, tüm bireyler aynı renk skalasını paylaşıyorlar - böylece bir yüzdeki noktalar çok benzer renklere sahipler.

Geom_line ile grup estetiğini kullanmak problemi çözer, ancak çizgiler noktalardan farklı bir hikaye anlatır.

Bir başka bariz çözüm, yüzleşmeyi bırakmak ve her bir alt set için ayrı bir çizim çizmek olacaktır. (Tek çözüm bu olsaydı: Bunu yapmak için hızlı, akıllı veya kanıtlanmış yollar var mı?)

cevap

5

Bunun bir faktör tarafından renklendirilirken kullanılabilir bir seçenek olduğundan emin değilim.

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() 
}) 

İlgili Yanıtlar:: Different legends and fill colours for facetted ggplot?

+0

Hadley belirtildiği gibi (ed) "Ayrı araziler çizerek çalışmak kolay" - bu nasıl gösterir. Teşekkürler! Ama yine de onları, yarattığım diğer yüzlü çizimlerle eşleşen bir şekilde birleştirmek için mücadele ediyorum. – ian

+0

Bize şu ana kadar neler olduğunu gösterebilir misiniz? Ve neyin eşleşmediğini tanımlamaya çalışın? –

+0

Aslında, belki de şu anda arsa (lar) nızda ne aradığınızı ve neyi aradığınızı gösteren yeni bir soru sormak en iyisi olurdu. –

2

Ben sadece her üretici çeşitli modeller yapar sınıfın, renklendirmek istediğiniz düşünüyorum her Ancak bireysel araziler üretmek için hızlı bir yoldur böyle bir şey olurdu sadece bir ya da sınıfın başına iki: bağlamak Yanıtta

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

alt text

+1

"mpg" veri kümesi sadece bir örnekti. Her bir türdeki ('faset') ağaç ('color' or' group') örneklerinin yoğunluk gradyanlarını ('x' vs' y') çizmek istiyorum. Her bir ağaç sadece bir türe aittir. – ian