Communes titre principal d'une figure panneau compilé avec par(mfrow)
J'ai une compilation de 4 parcelles dessinés avec par(mfrow=c(2,2))
. Je voudrais attirer un titre commun pour les 2 parcelles ci-dessus et un titre commun pour les 2 ci-dessous des panneaux qui sont centré entre les 2 à gauche et à droite de parcelles.
Est-ce possible?
- Le faire serait une sorte de obscure du "titre", ne serait-il pas? Pourquoi ne voulez-vous pas au-dessus de toutes les parcelles?
- Ce que je voulais dire, c'est un titre pour le 2 en haut des parcelles et un titre pour les 2 du bas des parcelles. J'ai corrigé mon Q
Vous devez vous connecter pour publier un commentaire.
Ce devrait travail, mais vous aurez besoin de jouer avec le
line
argument pour l'obtenir juste:mtext
signifie "texte de la marge".side = 3
dit de le placer dans le "top" de la marge.line = -21
dit pour compenser le placement de 21 lignes.outer = TRUE
dit que c'est OK d'utiliser l'extérieure de la zone de marge.Pour ajouter un autre "titre" en haut, vous pouvez l'ajouter à l'aide, par exemple,
mtext("My 'Title' in a strange place", side = 3, line = -2, outer = TRUE)
mtext
pouvez utiliser des valeurs négatives.layout
, comme l'a démontré @Didzis de réponse.Vous pouvez utiliser la fonction
layout()
et de définir les deux traçage des régions qui se produit dans les deux colonnes (voir la répétition des nombres 1 et 3 dans lematrix()
). Ensuite, j'ai utiliséplot.new()
ettext()
à l'ensemble des titres. Vous pouvez jouer avec des marges et des hauteurs d'obtenir une meilleure représentation.layout
est certainement le chemin à parcourir, mais je voulais montrer lamtext
option trop.Le même mais en gras peut être fait en utilisant
title(...)
avec les mêmes arguments que ci-dessus:Voici une autre façon de faire, à l'aide de la
line2user
fonction de ce post.Ici, le titre est placée à 2 lignes plus haut que le bord supérieur de l'intrigue, comme indiqué par
line2user(2, 3)
. Nous centre par compensation à l'égard de la 2ème et 4ème parcelles, par la moitié de la largeur combinée des marges gauche et droite, c'est à diremean(par('mar')[c(2, 4)])
.line2user
exprime un décalage (nombre de lignes) à partir d'un axe de coordonnées de l'utilisateur, et est définie comme: