Khi bạn đang sử dụng chức năng barplot2()
từ thư viện gplots
, sẽ cho ví dụ sử dụng phương pháp này.
Phông chữ đầu tiên, được làm như được đưa ra trong tệp trợ giúp của hàm barplot2()
. ci.l
và ci.u
là các giá trị khoảng tin cậy giả. Barplot nên được lưu dưới dạng đối tượng.
hh <- t(VADeaths)[1:2, 5:1]
mybarcol <- "gray20"
ci.l <- hh * 0.85
ci.u <- hh * 1.15
mp <- barplot2(hh, beside = TRUE,
col = c("grey12", "grey82"),
legend = colnames(VADeaths)[1:2], ylim = c(0, 100),
cex.names = 1.5, plot.ci = TRUE, ci.l = ci.l, ci.u = ci.u)
Nếu bạn nhìn vào đối tượng mp
, nó chứa x tọa độ cho tất cả các thanh.
mp
[,1] [,2] [,3] [,4] [,5]
[1,] 1.5 4.5 7.5 10.5 13.5
[2,] 2.5 5.5 8.5 11.5 14.5
Bây giờ tôi sử dụng giá trị khoảng tin cậy trên để tính tọa độ cho giá trị y của phân đoạn. Các phân đoạn sẽ bắt đầu ở vị trí cao hơn 1 lần rồi kết thúc khoảng tin cậy. y.cord
chứa bốn hàng - hàng đầu tiên và hàng thứ hai tương ứng với thanh đầu tiên và hai hàng khác vào thanh thứ hai. Giá trị y cao nhất được tính từ các giá trị tối đa của khoảng tin cậy cho mỗi cặp thanh. Giá trị x.cord
chỉ lặp lại các giá trị giống nhau trong đối tượng mp
, mỗi 2 lần.
y.cord<-rbind(c(ci.u[1,]+1),c(apply(ci.u,2,max)+5),
c(apply(ci.u,2,max)+5),c(ci.u[2,]+1))
x.cord<-apply(mp,2,function(x) rep(x,each=2))
Sau khi sử dụng vạch được tạo thành sapply()
để tạo năm phân đoạn (vì lần này có 5 nhóm) sử dụng tọa độ được tính toán.
sapply(1:5,function(x) lines(x.cord[,x],y.cord[,x]))
Để vẽ văn bản trên các phân đoạn tính toán tọa độ x và y, trong đó x là điểm giữa của hai thanh x giá trị và giá trị y được tính từ giá trị tối đa của khoảng tin cậy cho mỗi cặp thanh cộng với một số không đổi. Sau đó, sử dụng chức năng text()
để thêm thông tin.
x.text<-colMeans(mp)
y.text<-apply(ci.u,2,max)+7
text(c("*","**","***","NS","***"),x=x.text,y=y.text)
có một hàm plot.cld trong multcomp, nơi bạn có thể đặt các chữ cái phía trên các thanh của bạn cho biết ý nghĩa. Perhabs này cũng là một cái gì đó cho bạn ... – EDi
Ngoài ra còn có 'bar.group' từ gói' agricolae' đặt các chữ cái cho bạn. – mnel
Nếu bạn sử dụng 'barplot' của cơ sở R, bạn có thể lưu trữ các điểm trung tâm của các thanh như' barstore <- barplot (1: 3) '. Để xác minh, điều này hoạt động, hãy thử 'abline (v = barstore)' và lưu ý rằng các đường thẳng đứng tất cả cắt qua trung tâm của các thanh. Sử dụng 'phân đoạn', bạn có thể sử dụng các điểm được lưu trữ này để vẽ các đường so sánh/tương tác của mình. – thelatemail