SORU
8 AĞUSTOS 2009, CUMARTESİ


Yan yana araziler ggplot2 ile

Yan par(mfrow=c(1,2)) eşdeğer iki araziler yerleştirmek istiyorum.

Örneğin, aşağıdaki iki araziler Haritayı yan yana aynı ölçek ile olmasını isterim.

x <- rnorm(100)
eps <- rnorm(100,0,.2)
qplot(x,3*x eps)
qplot(x,2*x eps)

example data.frame aynı şekilde onları koymak gerekir mi?

qplot(displ, hwy, data=mpg, facets = . ~ year)   geom_smooth()

CEVAP
14 EKİM 2010, PERŞEMBE


Herhangi bir ggplots yan yana (ya da bir ızgara üzerinde n araziler)

gridExtra paketinde 10* *işlevi birden çok parsellerin bir araya getirecektir; bu yan tarafından iki yan koymak.

require(gridExtra)
plot1 <- qplot(1)
plot2 <- qplot(1)
grid.arrange(plot1, plot2, ncol=2)

Bu ise yeniden kullanmadan farklı değişkenleri çizmek istiyorsanız iki araziler aynı verilere dayalı değildir, örneğin faydalı olur().

Bu bir yan etki olarak çıktı arsa. Bir dosya için yan etkisi yazdırmak için aygıt sürücüsünü belirtin (pdf, png, vb gibi), örneğin

pdf("foo.pdf")
grid.arrange(plot1, plot2)
dev.off()

ya da, ggsave() ile birlikte arrangeGrob() kullanın

ggsave("foo.pdf", arrangeGrob(plot1, plot2))

Bu iki farklı araziler par(mfrow = c(1,2)) kullanarak yapmak eşdeğerdir. Bu sadece zaman kazandırır veri düzenlenmesi, iki farklı araziler istediğiniz zaman gereklidir.


Ek: Kullanma Yönü

Yönleri farklı gruplar için benzer oyunlar yapmak için faydalıdır. Bu birçok cevabı aşağıda, aşağıda işaret edilir, ama yukarıdaki örnekler araziler için eşdeğer bu yaklaşım vurgulamak istiyorum.

mydata <- data.frame(myGroup = c('a', 'b'), myX = c(1,1))

qplot(data = mydata, 
    x = myX, 
    facets = ~myGroup)

ggplot(data = mydata)   
    geom_bar(aes(myX))   
    facet_wrap(~myGroup)

Güncelleme

cowplot plot_grid işlevi grid.arrange alternatif olarak incelenmeye değer. @answer Noel Baba-wilke aşağıda ve eşdeğer bir yaklaşım this vignette bakın; ama işlevi this vignette dayalı arsa yeri ve boyutu üzerinde daha hassas bir kontrol sağlar,.

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • 07cadikiz07

    07cadikiz07

    17 EKİM 2007
  • fireflame65

    fireflame65

    27 Mart 2007
  • Kindness

    Kindness

    23 Ocak 2006