Khi tôi tạo lô sau, tôi nhận được không gian không mong muốn giữa vùng vẽ và trục (ví dụ khoảng trắng giữa hộp màu xanh lam và trục x. Làm cách nào tôi có thể xóa không gian này và tạo âm mưu diện tích ngang bằng với những âm mưu trục? Cảm ơn.Xóa khoảng cách xung quanh khu vực vẽ trong r
xleft<-c(1,2,2.5)
xright<-c(2,2.5,2.75)
ybottom<-c(1,2,2.5)
ytop<-c(2,2.5,2.75)
par(mar = c(15,15,2.75,2.75) + 0.1)
plot(c(1,2.75),c(1,2.75),type="n",main="title",xlab="site.x",ylab="ylab")
rect(xleft,ybottom,xright,ytop,col=c("blue","red","green"))
#Label position along axes
x.label.position<-(xleft+xright)/2
y.label.position<-(ybottom+ytop)/2
#Labels
x.label<-c("Long species Name1","Long species Name2","Long species Name3")
y.label<-c("Long species Name4","Long species Name5","Long species Name5")
text(par()$usr[1]-0.5,y.label.position,y.label,xpd=TRUE,adj=1)
text(y=par()$usr[3]-0.5,x=x.label.position,x.label,xpd=TRUE,adj=1,srt=90)
par(xpd=TRUE)
legend(-0.1,0,legend=c("Species A","Species B","Species C"),fill=c("blue", "red", "green"))
CẬP NHẬT tôi cố gắng gợi ý từ plannapus với dữ liệu thực tế của tôi, nhưng chỉ có thể nhận được các y-axis cư xử là có một số người khác trong này đoạn mã bổ sung khoảng trống cho các cạnh của khu vực vẽ đồ?
quartz("colour.plot")
par(mar=c(15,15,4,2)+0.1)#sets margins of plotting area
#create the data plot
plot(c(0,100), c(0,100), type = "n", main = paste(x,"vs",y," -",depth),xlab=paste("Species composition in remainder ",x),ylab=paste("Species composition in remainder ",y),asp=1,xaxs="i",yaxs="i")
#Add the rectangles
rect(mdf$xleft,mdf$ybottom,mdf$xright,mdf$ytop,col=mdf$colour)
sản xuất
"là có một số khác trong đoạn mã này được bổ sung thêm không gian để các bên của khu vực âm mưu?" Có: 'asp = 1'. Với điều này, bạn buộc trục x và y bằng nhau, có thể xung đột với kích thước của vùng ô của bạn. – plannapus
thêm 'par (pty =" s ")' trước khi cuộc gọi đến 'cốt truyện 'sẽ buộc khu vực ô phải là hình vuông (do đó' "s" ') và không hình chữ nhật như trên hình ảnh của bạn và do đó chính xác cho' asp' "trục trặc". – plannapus
Tôi nghĩ rằng bạn nên đi cho câu trả lời @plannapus, hoặc simly đặt 'xlim',' ylim' để khớp với khu vực bạn muốn vẽ. Mặc dù giải pháp của @ Alan cho sự xuất hiện đúng đắn nhưng nó không phải là khái niệm chính xác cho những gì bạn muốn làm ở đây. Nó chỉ "chữa khỏi triệu chứng" để nói. – Backlin