2016-04-13 52 views
5

Tôi đang cố gắng biện minh cho nhiều chú thích trong ggplot nhưng không thành công thực sự. Khi hiển thị chú thích bên ngoài khu vực âm mưu (khu vực màu xám) biện minh là chính xác. Tuy nhiên, khi hiển thị truyền thuyết bên trong khu vực cốt truyện, truyền thuyết là trung tâm (và tôi muốn làm cho chúng được căn trái). Tôi đã cố gắng theo dõi this thread nhưng nó vẫn không hoạt động bình thường.Giải thích nhiều chú thích

dụ của tôi:

library(ggplot2) 

ggplot(mtcars, aes(wt, mpg)) + 
    geom_point(aes(colour = factor(cyl), size = qsec)) + 
    geom_point(aes(colour = factor(cyl), size = qsec)) + 
    theme(legend.justification = c(1,0), 
     legend.position = c(1,0), 
     legend.margin = unit(0,"lines"), 
     legend.box = "vertical", 
     legend.key.size = unit(1,"lines"), 
     legend.text.align = 0, 
     legend.title.align = 0) 

Trả lời

5

Chúng tôi cần thêm legend.box.just = "left" vào hiện tại của bạn theme().

ggplot(mtcars, aes(wt, mpg)) + 
    geom_point(aes(colour = factor(cyl), size = qsec)) + 
    geom_point(aes(colour = factor(cyl), size = qsec)) + 
    theme(legend.box.just = "left", 
     legend.justification = c(1,0), 
     legend.position = c(1,0), 
     legend.margin = unit(0,"lines"), 
     legend.box = "vertical", 
     legend.key.size = unit(1,"lines"), 
     legend.text.align = 0, 
     legend.title.align = 0) 

enter image description here

+0

Cảm ơn bạn đã trả lời nhanh chóng. Điều này hoàn toàn giải quyết vấn đề của tôi! – Adela

1

Bạn có thể thử này:

library(ggplot2) 
data("mtcars") 
g <- ggplot(mtcars, aes(wt, mpg)) 
g <- g + geom_point(aes(colour = factor(cyl), size = qsec)) 
g <- g + geom_point(aes(colour = factor(cyl), size = qsec)) 
g <- g + theme(legend.justification=c(0,0), legend.position=c(0,0)) 

Đối với các vị trí khác bạn có thể thử từ tài liệu này http://www.cookbook-r.com/Graphs/Legends_(ggplot2)/

enter image description here

Có lẽ bạn sẽ tìm thấy lời giải thích tốt hơn cũng trong ab liên kết ove.

+0

Nếu bạn xem các truyền thuyết chặt chẽ không được căn chỉnh ở phía bên trái, đó là vấn đề của OP. – zx8754

+0

@ zx8754 Tôi không hiểu bạn hoàn toàn, điều đó có nghĩa là truyền thuyết nên chạm vào ranh giới bên trong lô ở phía bên trái? –

+0

@krishna: Thật không may, bài đăng của bạn không giải quyết được vấn đề của tôi, bởi vì tôi cần cả hai truyền thuyết để căn chỉnh theo chiều trái. Như zx8754 đã viết, nếu bạn nhìn kỹ hơn, bạn có thể thấy rằng chúng vẫn ở giữa - chỉ vị trí của truyền thuyết đã bị thay đổi. zx8754 đã giải quyết được vấn đề của tôi (xem bài trước). Dù sao, cảm ơn bạn đã cố gắng! – Adela