2010-09-21 41 views
17

Điều này có vẻ là một câu hỏi đơn giản, vì vậy tôi hy vọng một câu trả lời đơn giản của nó. Tôi vẽ đồ thị các điểm của mình và lắp một mô hình tuyến tính, mà tôi có thể làm được. Sau đó tôi muốn vẽ một số thống kê tóm tắt, ví dụ giá trị R bình phương, trên cốt truyện cũng vậy. Tôi chỉ có thể nhận được giá trị R Squared tại dòng lệnh. Bất kỳ lời khuyên nào; tôi có cần phải nhìn vào ggplot hay bất cứ thứ gì khác không? Cảm ơn trước.Làm thế nào tôi có thể vẽ giá trị R bình phương của tôi trên phân tán của tôi bằng cách sử dụng R?

#Does the plot 
plot(df$VAR1, df$VAR2) 
#Adds the line 
abline(lm(df$VAR2~df$VAR1), col="red") 
#Shows stats on command line 
summary(lm(df$VAR2~df$VAR1)) 

Trả lời

28

Bạn có thể lạm dụng legend() vì nó có vị trí hợp lý tiện dụng:

R> DF <- data.frame(VAR1=rnorm(100), VAR2=rnorm(100)) 
R> with(DF, plot(VAR1, VAR2)) 
R> abline(fit <- lm(VAR2 ~ VAR1, data=DF), col='red') 
R> legend("topright", bty="n", legend=paste("R2 is", 
+   format(summary(fit)$adj.r.squared, digits=4))) 

Đây bty="n" ngăn chặn hộp, và bạn cần format() để rút ngắn màn hình. Các số khác text() là tốt, cũng như các đối số main=sub= đến plot().

+0

Cảm ơn bạn đã phản hồi nhanh. Dường như làm việc, đừng nghĩ rằng tôi sẽ nghĩ về điều đó một cách nhanh chóng! – phrozenpenguin

+1

Hãy chấp nhận điều này làm câu trả lời :) –

+0

Xin lỗi - vẫn đang quen với cách thức hoạt động của tất cả. Tôi nghĩ rằng thats chấp nhận bây giờ .. – phrozenpenguin

7

Chức năng text đặt văn bản vào ô hiện tại, đó là một tùy chọn để thêm giá trị bình phương vào một ô. Ngoài ra, hãy xem các hàm grconvertXgrconvertY để biết cách tìm vị trí để đặt văn bản.

Các chức năng corner.labelemptyspace trong gói plotrix cũng có thể hữu ích.

+0

Cảm ơn bạn đã lựa chọn thay thế. Tôi đã quen với việc sử dụng truyền thuyết, vì vậy sẽ gắn bó với điều đó ngay bây giờ. – phrozenpenguin

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