superponer - tamaño de la leyenda en r
Eliminar el espacio alrededor del área de trazado en r (2)
Hay un argumento en la plot
función que maneja eso: xaxs
(y yaxs
para el eje y). De forma predeterminada, se establece en xaxs="r"
lo que significa que el 4% del valor del eje se deja en cada lado. Para establecer esto en 0: xaxs="i"
. Vea la sección de xaxs
en el ?par
para más información.
plot(c(1,2.75),c(1,2.75),type="n",main="title",xlab="site.x",ylab="ylab", xaxs="i", yaxs="i")
rect(xleft,ybottom,xright,ytop,col=c("blue","red","green"))
Cuando creo el siguiente gráfico, obtengo un espacio no deseado entre el área de trazado y el eje (es decir, el espacio en blanco entre el cuadro azul y el eje x. ¿Cómo puedo eliminar este espacio y hacer que el área de trazado esté al ras con los ejes del trazado?
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"))
ACTUALIZACIÓN Probé la sugerencia de plannapus con mis datos reales, pero solo puedo lograr que el eje y se comporte. ¿Hay alguna otra cosa en este fragmento de código que esté agregando espacio a los lados del área de trazado?
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)
produce
plot(c(1,2.75),c(1,2.75),type="n",main="title",xlab="site.x",ylab="ylab",axes=F) # ann
axis(1,pos=1)
axis(2,pos=1)
Todos los ejes se eliminan, entonces puede agregar nuevos ejes a la pos
que desee.