Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Change the size of a plot when plotting multiple plots in R

Tags:

plot

r

I want to know if there is a way to define the size of a plot in R, when you are plotting different plots using the par(mfrow=c()) function.

As a simple example take this:

par(mfrow = c(3,1))
plot(1:2)
plot(1:2)
plot(1:2)

All plots will have the same size.

Is it possible, for instance, to make the size of the third plot different? For example make it half the size of the other plots?

If I use this:

par(mfrow = c(3,1))
plot(1:2)
plot(1:2)
plot(1:2, ylim =c(0,1))

The ylim axis changes but no the size of the plot.

Thank you.

like image 206
Javier2013 Avatar asked Jul 09 '15 14:07

Javier2013


1 Answers

Try layout for example

layout(matrix(c(1,1,2,3,4,4), nrow = 3, ncol = 2, byrow = TRUE))
plot(1,main=1)
plot(2,main=2)
plot(3,main=3)
plot(4,main=4)

enter image description here

layout(matrix(c(1,1,2,1,1,2,3,4,4), nrow = 3, ncol = 3, byrow = TRUE))
plot(1,main=1)
plot(2,main=2)
plot(3,main=3)
plot(4,main=4)

give you enter image description here

Also you can use par(fig= ) for example

par(mar=c(2,2,2,1))
par(fig=c(0,7,6,10)/10)
plot(1,main=1)
par(fig=c(7,10,6,10)/10)
par(new=T)
plot(2,main=2)
par(fig=c(0,7,0,6)/10)
par(new=T)
plot(3,main=3)
par(fig=c(7,10,0,6)/10)
par(new=T)
plot(4,main=4)

Give you enter image description here

but i think layout better for use

like image 142
Batanichek Avatar answered Oct 25 '22 16:10

Batanichek