2012-04-05 23 views
62

Bir ggplot2 göstergesini çizimin altına nasıl taşıyabilirim ve yatay olarak nasıl açabilirim?ggplot2 gösterge alt ve yatay

örnek kod:

library(reshape2) # for melt 
df <- melt(outer(1:4, 1:4), varnames = c("X1", "X2")) 
p1 <- ggplot(df, aes(X1, X2)) + geom_tile(aes(fill = value)) 
p1 + scale_fill_continuous(guide = guide_legend()) 

İstenilen (yaklaşık) sonuç: enter image description here

cevap

78

aşağıdaki kodu kullanabilirsiniz lütfen göstergenin konumunu taşımak isterseniz:

library(reshape2) # for melt 
df <- melt(outer(1:4, 1:4), varnames = c("X1", "X2")) 
p1 <- ggplot(df, aes(X1, X2)) + geom_tile(aes(fill = value)) 
p1 + scale_fill_continuous(guide = guide_legend()) + 
    theme(legend.position="bottom") 

Bu size des vermeli sonuç verdi. Legend at bottom

+0

biliyor musunuz? (bu yüzden aradaki sayı ile değil, üstte). Teşekkürler. – Janvb

+3

Geçerli 'ggplot' ile bu bana 'opts' seçeneğinin uyarıldığını bildirir. Bunun yerine 'temasını' kullanın. (Onaysız; en son sürüm 0.9.1). 'Tema' tarafından' opts' değiştirerek çalışır. – krlmlr

+0

Evet "ggplot" ın iç işleyişinde değişiklik olduğunu tahmin ediyorum –

17

Bu soran tam olarak ne size vermez, ama en azından bir araya renkleri koyacağız: Mümkün altta sürekli efsane çubuğu çizmek eğer

+theme(legend.position="bottom",legend.direction="vertical") 
+0

Bu teorik olarak soruya cevap verirken [tercih edilir] (// meta.stackoverflow.com/q/) 8259) burada cevabın önemli kısımlarını dahil etmek ve referans için bağlantıyı sağlamak. –