Caracteres especiales y superíndices en los títulos del eje de la trama
Estoy tratando de hacer un título del eje y con un carácter especial y un superíndice. Soy capaz de hacer esto, pero quiero que los paréntesis de cierre no sean superíndice. Y eso es con lo que estoy teniendo un problema. Creo que es solo una colocación de mi paréntesis, pero he intentado (aparentemente) todo.
plot(WatexCl, ConcuM, col = as.numeric(1), pch = as.numeric(Depth),
xlab = expression(paste("Concentration Cl ( ", mu, "moles/g dry wt)")),
ylab = expression(paste("Average Conc of S- on plates ( ", mu, "Moles/cm"^"2"),)),
data = plates)
2 answers
La única cosa que a menudo los usuarios no entienden es que invariablemente no es necesario entrecomillar cadenas y paste
cuando se usan en una expresión para una etiqueta de parcela. Por lo general, es más sencillo usar las herramientas de diseño directamente (por ejemplo, ~
y *
). Por ejemplo:
df <- data.frame(y = rnorm(100), x = rnorm(100))
plot(y ~ x, data = df,
ylab = expression(Average ~ Conc ~ of ~ S- ~ on ~ plates ~
(mu ~ Moles ~ cm^{-2} ~ dry ~ wt)),
xlab = expression(Concentration ~ Cl ~ (mu ~ moles ~ g^{-1} ~ dry ~ wt)))
Alternativamente, puede incluir cadenas para secciones más largas de texto; en este caso es posiblemente más fácil de hacer:
plot(y ~ x, data = df,
ylab = expression("Average Conc of S- on plates" ~
(mu ~ moles ~ cm^{-2} ~ "dry wt")),
xlab = expression("Concentration Cl" ~ (mu ~ moles ~ g^{-1} ~ "dry wt")))
Pero tenga en cuenta que no hay necesidad de paste
cadenas y otras características aquí.
Ambos producir:
Tenga en cuenta el problema que tiene plotmath con el superíndice 2. Es posible que desee agregar un espacio adicional para el margen del eje y para acomodar eso:
op <- par(mar = c(5,4.5,4,2) + 0.1)
plot(y ~ x, data = df,
ylab = expression("Average Conc of S- on plates" ~
(mu ~ moles ~ cm^{-2} ~ "dry wt")),
xlab = expression("Concentration Cl" ~ (mu ~ moles ~ g^{-1} ~ "dry wt")))
par(op)
Produciendo
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-04-01 01:45:24
Esto resuelve el problema del paréntesis de cierre super-scripted:
# reproducible data
plates <- data.frame(WatexCl = rnorm(100), ConcuM = rnorm(100), Depth = rnorm(100))
# alter the default plot margins so the
# superscript in the y-axis label is completely displayed
par(mar=c(5,5,4,2))
# draw the plot
plot(WatexCl ~ ConcuM, data = plates,
col = as.numeric(1),
pch = as.numeric(Depth),
xlab = bquote("Concentration Cl ("*mu~"moles/g dry wt)"),
ylab = bquote("Average Conc of S- on plates ("~mu~"Moles/cm"^"2"*")"))
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/ajaxhispano.com/template/agent.layouts/content.php on line 61
2013-04-01 02:06:59