Problem here is a bit obvious I think. I’d like the legend placed (locked) in the top left hand corner of the ‘plotting region’. Using c(0.1,0.13) etc is not an option for a number of reasons.
Is there a way to change the reference point for the co-ordinates so they are relative to the plotting region?
mtcars$cyl <- factor(mtcars$cyl, labels=c("four","six","eight"))
ggplot(mtcars, aes(x=wt, y=mpg, colour=cyl)) + geom_point(aes(colour=cyl)) +
opts(legend.position = c(0, 1), title="Legend placement makes me sad")

Cheers
Update:
optshas been deprecated. Please usethemeinstead, as described in this answer.The placement of the guide is based on the plot region (i.e., the area filled by grey) by default, but justification is centered.
So you need to set left-top justification:
If you want to place the guide against the whole device region, you can tweak the gtable output: