Powiedzmy mam zestaw danych o wydajności marchew z różnych dziedzin i różnych ras:ggplot2: Legenda nakładająca się na obszar wykresu - czy możliwe jest ręczne dopasowanie pozycji legendy?
carrots<-list(Yield=c(345,226,74,559,288,194),
Field=c("A","B","C","D","E","F"),
Breed=rep(c("Long","Short"),each=3))
carrots<-data.frame(carrots)
Chcę wykreślić wykres słupkowy pokazujący wydajność dla każdego pola, kolorowy o rasie:
ggplot(carrots,aes(y=Yield,x=Field,fill=Breed)) +
geom_bar() +
opts(legend.direction = "horizontal",
legend.position = "top") +
labs(fill="")
ale legenda jest zawsze nieco zachodząc na działki:
plot with slight legend overlap http://users.utu.fi/susjoh/Rplot.png
ja już trie d ręcznej regulacji położenia legendy być poza obszar działki, na przykład z
opts(legend.position=c(0.5,1.1)
ale wtedy marże działka odciąć legendę i nie jestem pewien, w jaki sposób można je dostosować. Czy istnieje bardziej subtelne rozwiązanie tego problemu?
+1 dla powtarzalny przykład , mimo że możesz usunąć drugi etap przygotowania danych, wywołując 'data.frame' zamiast' list'. –
Dzięki Roman, każda rada R jest zawsze doceniana :) – susjoh