2012-02-20 34 views
9

Truyền thuyết mà R tạo ra khi bạn gọi legend() có các ký hiệu (hoặc các loại đường, v.v ..) ở bên trái và các nhãn ở bên phải. Tôi muốn nó theo cách khác, tức là các nhãn ở bên trái (bên phải) và các biểu tượng ở bên phải.Làm cách nào để trao đổi nhãn và biểu tượng trong chú giải trong R?

Tôi biết rằng tôi có thể sử dụng adj để điều chỉnh vị trí của nhãn, nhưng với điều này chúng không được căn chỉnh chính xác nữa. Ví dụ: nếu tôi đặt adj=2, các nhãn nằm ở bên trái của các biểu tượng, nhưng phần cuối của văn bản không được căn chỉnh với các ký hiệu.

Bất kỳ con trỏ nào về cách thực hiện việc này bằng chức năng tiêu chuẩn legend() hoặc gói sẽ được đánh giá cao.

Trả lời

13

Nếu bạn đặt trace = TRUE và sau đó lưu kết quả, bạn có thể rút ra những huyền thoại và sau đó thêm các nhãn với một cuộc gọi đến text() sử dụng các tọa độ do trace, thiết pos = 2 cho sự liên kết đúng. Dưới đây là một ví dụ:

set.seed(1) 
    plot(1:10,runif(min=0,max=10,10),type='l',ylim=c(0,10),xlim=c(0,10),col=1) 
    lines(1:10,runif(min=0,max=10,10),col=2,lty=2) 
    lines(1:10,runif(min=0,max=10,10),col=3,lty=2) 
    a <- legend(1,10,lty=1:3,col=1:3,legend=c("","",""),bty="n",trace=TRUE) 
    text(a$text$x-1,a$text$y,c("line 1","line 2","line 3"),pos=2) 

enter image description here

Các vấn đề liên quan