Tôi muốn đặt các đường vuông góc ở đầu của râu như chức năng boxplot
tự động cung cấp.Đặt đầu ria trên ô vuông
Trả lời
Có thể sử dụng stat_boxplot
để tính toán kết thúc râu, nhưng tôi không đủ trình hướng dẫn ggplot2
, vì vậy tôi sử dụng hàm cơ sở cho điều đó.
set.seed(42)
df <- data.frame(cond = factor(rep(c("A","B"), each=500)),
value = c(rnorm(500,mean=1,sd=0.2),rnorm(500, mean=1.5,sd=0.1)))
whisk <- function(df,cond_col=1,val_col=2) {
require(reshape2)
condname <- names(df)[cond_col]
names(df)[cond_col] <- "cond"
names(df)[val_col] <- "value"
b <- boxplot(value~cond,data=df,plot=FALSE)
df2 <- cbind(as.data.frame(b$stats),c("min","lq","m","uq","max"))
names(df2) <- c(levels(df$cond),"pos")
df2 <- melt(df2,id="pos",variable.name="cond")
df2 <- dcast(df2,cond~pos)
names(df2)[1] <- condname
df2
}
library(ggplot2)
plot1 <- ggplot(df, aes(x=cond))
plot1 <- plot1 + geom_errorbar(aes(ymin=min,ymax=max),data=whisk(df),width = 0.5)
plot1 <- plot1 + geom_boxplot(aes(y=value))
plot1
Như lời đề nghị nhưng không được thực hiện bởi @Roland, bạn có thể sử dụng stat_boxplot
để thực hiện điều này. Bí quyết gọi _boxplot
hai lần và là đặt geom
thành errorbar
cho một trong các cuộc gọi.
Lưu ý rằng khi R
sử dụng phương pháp tiếp cận bút và giấy, bạn nên triển khai các thanh lỗi trước tiên vẽ ô mẫu truyền thống lên trên cùng.
Sử dụng @ dữ liệu giả Roland df
ggplot(df, aes(x=cond, y = value)) +
stat_boxplot(geom ='errorbar') +
geom_boxplot() # shorthand for stat_boxplot(geom='boxplot')
Sự giúp đỡ cho stat_boxplot
(?stat_boxplot
) chi tiết các giá trị khác nhau tính toán và lưu trong một data.frame
Cảm ơn bạn đã dành thời gian giải thích điều này! :) – gaelgarcia
làm cách nào tôi có thể thay đổi kích thước các dòng râu này nếu tôi sử dụng 'geom_boxplot (width = .2)'? – Produnis
@ Produnis Để thay đổi kích thước các dòng râu, hãy thêm đối số 'stat_params = list (width = 0.5)' bên trong hàm: 'stat_boxplot'. Xem kết quả trong câu trả lời của tôi. – mpalanco
Để thay đổi kích thước râu đường chúng ta có thể sử dụng đối số width = 0.5
bên trong hàm: stat_boxplot
set.seed(42)
df <- data.frame(cond = factor(rep(c("A", "B"), each = 500)),
value = c(rnorm(500, mean = 1, sd = 0.2),
rnorm(500, mean = 1.5, sd = 0.1)))
library(ggplot2)
ggplot(df, aes(x = cond, y = value)) +
stat_boxplot(geom = "errorbar", width = 0.5) +
geom_boxplot()
Điều này dường như không hiệu quả đối với tôi; Tôi nhận được 'Lỗi: Tham số không xác định: stat_params'. Bạn đang sử dụng phiên bản R nào? – Will
@Tôi đã sửa đổi câu trả lời chưa. Phiên bản mới ggplo2 2.0.0 không chấp nhận đối số đó 'stat_params'. Bây giờ nó sẽ hoạt động. – mpalanco
Tuyệt vời, đã hoạt động! Cảm ơn! – Will
- 1. matplotlib: inset trục cho nhiều ô vuông
- 2. CSS - Lưới có ô vuông hoàn hảo
- 3. Hai ô vuông ít nhất trong R
- 4. R: Làm cách nào để đặt hai ô ô vuông cạnh nhau, giữ cùng phạm vi y cho cả hai?
- 5. Danh sách các số có hình vuông là tổng của hai ô vuông
- 6. làm ô vuông trục với thang log2 trong matplotlib
- 7. R: ô vuông với phút và giây theo trục y
- 8. Tham gia phương tiện trên một ô vuông với một đường thẳng (ggplot2)
- 9. Làm thế nào để tìm tất cả các ô vuông trên một dòng?
- 10. Tạo jpeg tiến bộ trên iOS với ImageIO tạo ra kết quả khối ô vuông trên thiết bị
- 11. Đặt chiều rộng ô/cột trên bảng Prawn
- 12. Đặt nền của DataGridRow dựa trên nội dung của ô
- 13. Làm cách nào để đặt màu ô theo giá trị ô trên ooo-calc?
- 14. Đặt colspan/rowspan cho ô
- 15. Có bao nhiêu ô vuông có thể được đóng gói thành một vòng tròn?
- 16. Cách nhanh nhất để lấy mẫu lát các mảng khối ô vuông là gì?
- 17. đặt văn bản đầu tiên trên UISearchBar
- 18. tạo một ô vuông trong R có nhãn hộp có kích thước mẫu (N)
- 19. Vẽ hai ô vuông tại một vị trí x bằng cách sử dụng R và ggplot2
- 20. Tùy chỉnh DataAnnotations với RIA Services
- 21. Cài đặt tỷ lệ co của ô 3D
- 22. Hình vuông hoàn hảo giữa hai số
- 23. c: forEach vòng lặp in dấu ngoặc vuông vuông
- 24. MVVM-light + RIA Các phương pháp hay nhất về Dịch vụ RIA
- 25. Đặt tất cả ảnh thành hình vuông qua css
- 26. Đặt hàng 1:17 theo cặp hình vuông hoàn hảo
- 27. Không gian trong các ô vuông có ý nghĩa khác với không gian chỉ?
- 28. Tìm tất cả các ô vuông hoàn hảo là hoán vị của khoảng 300 chữ số
- 29. Làm thế nào để thay đổi thứ tự ô vuông khi sử dụng ggplot2?
- 30. đặt kiểu ô không hoạt động
bạn có thể làm điều này bằng cách tính toán quantile nơi ggplot vẽ các đường và vẽ 'geom_segment' của riêng bạn hoặc 'geom_crossbar'. xem [câu hỏi này] (http://stats.stackexchange.com/questions/8137/how-to-add-horizontal-lines-to-ggplot2-boxplot) – Justin
Có một số lý do tại sao điều này phải được thực hiện trong ggplot2, và không sử dụng 'boxplot' mà đã làm những gì bạn muốn, hoặc là câu hỏi này hoàn toàn quan tâm học tập ...? –
@Justin Cảm ơn, tôi đã kiểm tra câu hỏi đó nhưng nó quá tiên tiến đối với tôi và tôi vẫn gặp lỗi, tôi không biết bit nào cần thay thế bằng cái gì, xin lỗi:/ – user1762299