2013-04-22 9 views
7

Özür bu soru zaten yanıtlandı fakat ihtiyacım olanı bulmak görünmektedir olamaz eğer.değiştiren yüksekliği zaman sat_say = 1

ben şöyle grid.arrange kullanarak aynı şebekesine birleştirerek ediyorum ggplot2 iki araziler ürettiler

:

Side by side plots

: şöyle yan bana araziler yan verir

grid.arrange(p1,p2,main="Title", ncol=2) 

(Üzgünüm Birinin sana bir kenara harika olurdu! Ben bağlantıları kullanarak insanları rahatsız etmek istemiyorum olarak bu konuda bana yardımcı olabilir bu, yazı içinde benim resim göstermek için nasıl anlamıyorum.)

grafikleri hala yan yana olacak şekilde

nasıl bu kodu değiştirebilir ancak nesnenin tüm uzunluğu ince uzun değildir? Onların kare olmasını isterim.

Ben buna ihtiyacım ve burada bu durumda uygulamadan bir şey görmedim buysa ben bir argüman "yükseklikleri" ama emin değilim ekleyebilir biliyoruz.

Teşekkürler!

+0

dev.new (width = 10, height = 5) ' – baptiste

cevap

7

Ayrıca şöyle grid.arrange göre yükseklikleri ve heights ve widths argümanları kullanarak genişlikleri belirtebilirsiniz:

grid.arrange(p1 , p2 , widths = unit(0.5, "npc") , heights=unit(0.5, "npc") , main="Title", ncol=2) 

enter image description here

+0

Tam olarak ne istediğim için teşekkürler :) - Bunu yardım sayfalarından birinde gördüm, ama bana açık değildi. "Npc" ne anlama geliyor? – Nicki

+0

@NicolaCook Harika! npc = normalleştirilmiş ana koordinatlar - temel olarak çizim alanının bir oranına benzer şekilde, değerler 0'dan 1'e kadar değişir. –

4

sonra tek yol olacağını araziler yapmak için ggplot2 kullandığınız gibi ikinci dereceden parseller elde etmek için coord_fixed() kullanın ve sonra bunları düzenleyin. Sen ratio=x değerlerinin aralığına göre y değer aralığını bölünmesiyle hesaplanır coord_fixed() ile bunu başarabilirsiniz.

ratio.plot1<-abs(max(iris$Petal.Width)-min(iris$Petal.Width))/abs(max(iris$Petal.Length)-min(iris$Petal.Length)) 

ratio.plot2<-abs(max(iris$Sepal.Width)-min(iris$Sepal.Width))/abs(max(iris$Sepal.Length)-min(iris$Sepal.Length)) 

p1<-ggplot(iris,aes(Petal.Width,Petal.Length))+geom_point()+ 
    coord_fixed(ratio=ratio.plot1) 
p2<-ggplot(iris,aes(Sepal.Width,Sepal.Length))+geom_point()+ 
    coord_fixed(ratio=ratio.plot2) 
grid.arrange(p1,p2,main="Title",ncol=2) 
Bu sorunun en temel çözüm, "şişman" Grafik, düzenek penceresi, örn çizilecek olan

enter image description here