2015-11-13 20 views
7

Có thể tạo một ô mẫu cho thấy cả trung bình và trung bình là một dòng có hàm hộp tiêu chuẩn của R không? Giải pháp hiện tại của tôi sẽ hiển thị giá trị trung bình như một cây thánh giá:Biểu đồ ô hiển thị có nghĩa là một dòng

set.seed(1234) 
values <- runif(10,0,1) 
boxplot(values) 
points(mean(values),col="red",pch=4,lwd = 4) 

Image of boxplot

Trả lời

9

Vì lợi ích của sự hoàn chỉnh, bạn có thể cũng overplot:

set.seed(753) 
df <- data.frame(y=rt(100, 4), x=gl(5, 20)) 
bx.p <- boxplot(y~x, df) 
bx.p$stats[3, ] <- unclass(with(df, by(y, x, FUN = mean))) 
bxp(bx.p, add=T, boxfill="transparent", medcol="red", axes=F, outpch = NA, outlty="blank", boxlty="blank", whisklty="blank", staplelty="blank") 

Giải thích qua @scs:

bxp$stats trả về ma trận có chứa râu thấp hơn, bản lề dưới, trung bình, bản lề trên và cực của râu trên cho mỗi ô. Giải pháp ở trên ghi đè trung vị được chỉ định trong bx.p$stats[3, ] với giá trị trung bình. Hàm bxp là một hàm để vẽ các đối tượng ô vuông.

Kết quả:

enter image description here

+0

Có lẽ nó chỉ là tôi, nhưng tôi muốn có một số dấu hiệu khác hơn là chỉ màu sắc mà sẽ phân biệt hai điều trên cùng một cốt truyện. Hãy tưởng tượng rằng đối với một số lý do mơ hồ tôi muốn đọc điều này trên giấy thực tế và máy in duy nhất mà tôi có thể in nó chỉ có mực đen. –

+0

Đặt trong một huyền thoại: 'huyền thoại ('topleft', lty = c (1, 1), lwd = đại diện (3, 2), col = c (" đen "," đỏ "), chú thích = c (" trung bình "," mean "), horiz = TRUE, bg =" trong suốt ")'. – lukeA

+0

Máy in của tôi cũng sử dụng mực đen cho chú giải. :-) –

9

Các âm mưu mặc định của boxplot làm cho chiều rộng của hộp đi từ 0.8 để 1.2 trong x-axis.

Bạn do đó có thể vẽ một đường cho giá trị trung bình với mã dưới đây:

lines(c(0.8, 1.2), rep(mean(values), 2), col="red", lwd = 2) 

enter image description here

+2

này giải quyết vấn đề thực tế, nhưng nó không phải là dễ dàng mở rộng với các giải pháp với nhiều boxplots trong cùng một cửa sổ hoặc lô với tùy chỉnh chiều rộng/chiều cao. Do đó, giải pháp chung chung hơn dưới đây đã được chọn làm câu trả lời được chấp nhận. – scs

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