Enveloppe de texte pour les titres de plots

J’ai un long titre pour un tracé en R et il continue à s’étendre en dehors de la fenêtre de tracé. Comment puis-je envelopper le titre sur 2 lignes?

essayez d’append “\ n” (nouvelle ligne) au milieu de votre titre. Par exemple:

plot(rnorm(100), main="this is my title \non two lines") 

entrer la description de l'image ici

Vous pouvez utiliser la fonction strwrap pour fractionner une longue chaîne en plusieurs chaînes, puis utiliser paste avec collapse=\n pour créer la chaîne à transmettre à l’argument principal du titre. Vous pouvez également vouloir vous donner plus de place dans la marge en utilisant la fonction par défaut avec l’argument mar .

En ajoutant un saut de ligne:

 plot(1:10, main=paste(rep("The quick brown fox", 3), sep="\n")) 

Cela crée une tuile avec trois lignes (identiques). Utilisez simplement \n entre vos sous-chaînes.

Inclure les sauts de ligne / nouvelles lignes ( \n ) dans la chaîne de titre, par exemple:

 strn <- "This is a silly and overly long\ntitle that I want to use on my plot" plot(1:10, main = strn) 

Cela peut être utile pour toute phrase, de sorte qu’elle se divise en mots:

 wrap_sentence <- function(string, width) { words <- unlist(strsplit(string, " ")) fullsentence <- "" checklen <- "" for(i in 1:length(words)) { checklen <- paste(checklen, words[i]) if(nchar(checklen)>(width+1)) { fullsentence <- paste0(fullsentence, "\n") checklen <- "" } fullsentence <- paste(fullsentence, words[i]) } fullsentence <- sub("^\\s", "", fullsentence) fullsentence <- gsub("\n ", "\n", fullsentence) return(fullsentence) } 

Je suis sûr qu'il y a un moyen plus efficace de le faire, mais il fait le travail.

Vous pouvez utiliser strwrap et paste pour envelopper automatiquement le titre de votre graphique. La largeur doit être adaptée à la largeur de votre média.

 plot(rnorm(100), main = paste( strwrap( 'This is a very long title wrapped on multiple lines without the need to adjust it by hand', whitespace_only = TRUE, width = 50 ), collapse = "\n" )) 

entrer la description de l'image ici

R devrait le faire automatiquement, personne ne veut de titre raccourci.