Is there any way to get control characters for text strings, e.g. "\n"
for newline
evaluated inside a plotmath expression, or vice versa. In the following example, I would like to combine:
- some character text
- text control character (newline)
- substitute a variable name
- include a plotmath expression
After reading this question I can get most of the way there with substitute, but the newline
character is not evaluated. I am now going round in circles and confusing myself with plotmath
, parse
, bquote
and substitute
. In the help page for plotmath it says
Control characters (e.g. \n) are not interpreted in character strings in plotmath, unlike normal plotting.
Does this mean it really is impossible?
lab = "some data"
form = "Exponential"
x = 1:10
y = x^2
plot( x , y , type = "b" )
title( main = substitute( paste( "Plot of " , phi , " of: " , lab , "\nFunctional form: " , form ) , list(lab = lab , form = form ) ) , adj = 0 )
For the sake of completeness, here's another solution using unicode and no expressions (adapted from here and here):
As you have figured
plotmath
does not support newlines within, but you can usemtext
withbquote
, to write each line. For example I create a list of lines :if you use grid graphics, then the following grob can be useful to space the lines according to their height,
(using agstudy's Lines)