Вот мой код; в основном я помещаю четыре графика на одно и то же устройство и помещаю на них легенду. [edit: Я работаю с RStudio]R как сделать положение легенды независимо от размера графа
dev.new()
par(mfrow=c(2,2), oma=c(0,0,2,0))
#plot1
plot(parameters...)
par(new=TRUE)
plot(parameters, col="red")
legend("bottomright", c("seed match", "background"), bty="n", lty=c(1,1),
col=c("red","black"), cex=0.8, inset=0)
#plot2
plot(parameters...)
par(new=TRUE)
plot(parameters..., col="red")
legend("bottomright", c("seed match", "background"), bty="n", lty=c(1,1),
col=c("red","black"), cex=0.8,inset=0)
#etc. same for plot2 and plot 3
title("bla bla bla", outer=TRUE)
У меня есть две проблемы с этим. (1), хотя я указал «прямолинейно», легенда, похоже, не выровнена в нижнем правом углу, чем шире я изменяю размер по горизонтали, тем больше места между легендой и справа от графика.
(2) Объем пространства, занимаемого легендой, неадекватен. Я пробовал модифицировать cex =, но это только заботится о размере шрифта, общее пространство, занимаемое легендой, остается, что означает, что чем меньше шрифт, тем больше пространство между строками. Я бы хотел, чтобы легенда была немного меньше «распространена».
Иллюстрация Это выглядит вроде нормально, хотя я хотел бы, чтобы уменьшить расстояние между строками внутри легенды:
Но при изменении размера по горизонтали она не делает. Я хотел бы привязать легенду справа от графика.
Вы пробовали распечатать графики снова после изменения размера выходного устройства? – Roland
Geez, так что мне нужно, чтобы мое устройство вывода было точного размера, я хочу, чтобы мой график был экспортирован? Это делает его сверхпрочной работой на 11-дюймовом Mac Air ... – biohazard
Нет, используйте функции (устройства), такие как 'png' или' pdf', которые позволяют указать размер. – Roland