2013-05-18 53 views
15

Tôi đang bối rối là tại sao boxplots không đặt trong âm mưu này:Sắp xếp lại() không sắp xếp lại một cách chính xác một biến tố trong ggplot

set.seed(200) 
x <- data.frame(country=c(rep('UK', 10), 
          rep("USA", 10), 
          rep("Ireland", 5)), 
       wing=c(rnorm(25))) 

ggplot(x, aes(reorder(country, wing, median), wing)) + geom_boxplot() 

enter image description here

Làm thế nào tôi có thể đặt hàng boxplots dựa trên cao nhất thấp nhất trung bình (trái sang phải)?

+3

Tại sao điều này có được một xuống bỏ phiếu? Câu hỏi cung cấp mã có thể tái sản xuất và hiển thị rõ ràng nỗ lực. – Roland

Trả lời

8

Vì bạn không đặt yếu tố đặt hàng. Hãy thử

ggplot(x, aes(reorder(country, wing, median, order=TRUE), wing)) + geom_boxplot() 

enter image description here

+3

bao gồm 'order = TRUE' là cho chính xác cùng một lô cho tôi – luciano

+0

Tôi đã thêm kết quả tôi nhận được với mã. Nếu bạn muốn thứ tự giảm dần, bạn cần sử dụng 'hàm (x) -median (x)'. – Roland

+0

Xóa không gian làm việc và khởi động lại R đã cho tôi âm mưu giống như bạn – luciano

0
ggplot(x, aes(reorder(country, wing, FUN = median), wing)) + geom_boxplot() 
+0

Trong khi mã này có thể trả lời câu hỏi, cung cấp ngữ cảnh bổ sung về cách thức và/hoặc lý do giải thích vấn đề này sẽ cải thiện giá trị lâu dài của câu trả lời. – Badacadabra

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