web-dev-qa-db-fra.com

Changer la taille de la police dans la légende

J'ai une légende dans mon intrigue, mais j'essaie d'augmenter la taille de la police pour qu'elle corresponde à la boîte de légende. Lorsque j'essaie d'augmenter le cex comme défini ci-dessous. La boîte s'agrandit, tandis que le texte est encore petit.

Code:

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

Extrait de l'intrigue:

enter image description here

9
user3580316

Première approche:

Essayez de définir la taille de la police avant de tracer la légende.

 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

Deuxième approche:

Tenir le pt.cex paramètre à 1, tout en essayant différentes valeurs pour cex dans l'appel de la légende. N'oubliez pas de supprimer 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

10
Worice

Vous pouvez utiliser cex pour déterminer la taille de la police, utilisez bty = 'n' pour indiquer aucune ligne autour de la légende, puis dessinez un rectangle séparément sur le graphique avec rect (). Par exemple:

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))
3
Kris

Je pense que vous pouvez essayer d'utiliser le y.intersp dans la légende, lorsque les intervalles entre les différentes lignes de texte sont réduits, vous pouvez augmenter la taille du texte sans modifier la taille de la zone de légende.

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)
1
Ting