Изменить размер шрифта в легенде

у меня есть легенда в моем сюжете, но я пытаюсь увеличить размер шрифта, чтобы он соответствовал легенде. Когда я пытаюсь увеличить cex Как определено ниже. Поле становится больше, в то время как текст все еще мал.

код:

legend(0,16, c("Available vCPUs","Added vCPUs (1 per iteration ) "),col=c('red','black'),cex=0.39,lty=1:1,lwd=2)

отрывок из сюжета:

enter image description here

3 ответов


первый подход:

попробуйте установить размер шрифта перед построением легенды.

 x <- y <- rnorm(100, 0, 1)
 plot(x, y, type = "n")

## here you set the font size default to `x`, in this example 0.5
## save defaults in `op`

 op <- par(cex = 0.5)

 legend("topright", legend = "foo legend", pch = 1, bty = "n")

enter image description here

## here you set cexto 1.5
## save new defaults in `op`

 op <- par(cex = 1.5)

 legend("topright", legend = "foo legend", pch = 1, bty = "n")

enter image description here

второй подход:

удерживая pt.cex параметр до 1, при попытке различных значений для cex внутри вызов легенды. Не забудьте удалить op.

x <- rnorm(100, 10, 4)
y <- rnorm(100, 10, 4)
plot(x, y, type = "n")

## I tried to feed cex with 1.5 and 0.5. The font size changes while the points remain unchanged.

legend("topleft", "Legend", cex=0.5, pch=1, pt.cex = 1)

enter image description here


вы можете использовать cex для определения размера шрифта, использовать bty= ' n ' для указания линий вокруг легенды, а затем нарисовать прямоугольник отдельно на графике с помощью rect(). Например:

with(data, legend(-10,7, legend=c("Name_of_Legend"), bty = 'n', col=c("red"), lty=0, pch=20, cex=0.75))
with(data, rect(-10,6.2,-3,7))

Я думаю, вы можете попробовать использовать y.intersp в легенде при уменьшении интервалов между различными строками текста можно увеличить размер текста без изменения размера поля легенды.

legend(0,16, c("Available vCPUs","Added vCPUs (1 per iteration )
"),col=c('red','black'),cex=0.39,lty=1:1,lwd=2, y.intersp = 0.3)