[R] How to add space between main title to leave space for legend?

From: Paul Johnson <pauljohn32_at_gmail.com>
Date: Sat, 31 May 2008 14:06:50 -0500

Hello, everybody:

I recently encountered an example with in which the graph was placed in a way that did not leave room for a legend. Maybe you would describe it as "legend too big", I'm not sure. I found myself wishing I could force in some space after the title.

Here's working example where I'd like to make room for a legend.

x <- rnorm(100)

hist(x, freq=F, main="Different Meanings of Normality")

lines(density(x))

xseq1 <- seq( min(x), max(x), length.out=100)

m1 <- mean(x)

sd1 <- sd(x)

obsNormal <- dnorm(xseq1, mean=m1, sd=sd1)

lines( xseq1, obsNormal, lty=2, col="red")

truNormal <- dnorm(xseq1)

lines(xseq1, truNormal, lty=3, col="green")

legend(0,0.4, legend=c("observed density", "normal with observed mean & sd", "normal with 'true' mean and sd"), lty=c(1,2,3), col=c("black", "red", "green"))

I tried fiddling around with par to change the margins, but it has the bad effect of resizing the image and creating a blank space into which I'm not allowed to write the legend. Know what I mean? I try

par( mar=c(1,1,3,1)) or par(mai=c(1,1,4,1))

before the hist and it makes space, but useless space.

I've been considering something desperate, such as layout(). Isn't there a simpler way?

```--
Paul E. Johnson
Professor, Political Science
1541 Lilac Lane, Room 504
University of Kansas

______________________________________________
R-help_at_r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-help