Me gustaría agregar LaTeX
composición tipográfica a los elementos de los gráficos en R
(por ejemplo: el título, las etiquetas de los ejes, las anotaciones, etc.) usando la combinación de base/lattice
o con ggplot2
.
Preguntas:
- ¿Hay alguna forma de entrar
LaTeX
en gráficos utilizando estos paquetes y, de ser así, cómo se hace? - Si no es así, ¿se necesitan paquetes adicionales para lograrlo?
Por ejemplo, en Python matplotlib
compila a LaTeX
través de los text.usetex
paquetes como se describe aquí: http://www.scipy.org/Cookbook/Matplotlib/UsingTex
¿Existe un proceso similar mediante el cual se puedan generar tales gráficos R
?
Respuestas:
Aquí hay un ejemplo usando
ggplot2
:fuente
Como lo robaron de aquí , el siguiente comando usa correctamente LaTeX para dibujar el título:
Consulte
?plotmath
para obtener más detalles.fuente
El paquete CRAN latex2exp contiene una
TeX
función que traduce las fórmulas LaTeX a las expresiones plotmath de R. Puede usarlo en cualquier lugar donde pueda ingresar anotaciones matemáticas, como etiquetas de eje, etiquetas de leyenda y texto general.Por ejemplo:
produce esta trama .
fuente
Puede generar código tikz desde R: http://r-forge.r-project.org/projects/tikzdevice/
fuente
Aquí hay algo de mis propios informes de laboratorio.
tickzDevice
exportatikz
imágenes paraLaTeX
Tenga en cuenta que, en ciertos casos, se
"\\"
convierte en"\"
y se"$"
convierte"$\"
en el siguiente código R:"$z\\frac{a}{b}$" -> "$\z\frac{a}{b}$\"
También xtable exporta tablas a código latex
El código:
fuente
Aquí hay una función interesante que te permite usar la funcionalidad plotmath, pero con las expresiones almacenadas como objetos del modo de personaje. Esto le permite manipularlos mediante programación usando pegar o funciones de expresión regular. No uso ggplot, pero debería funcionar allí también:
fuente
Hice esto hace unos años enviando la salida a un formato .fig en lugar de directamente a un .pdf; usted escribe los títulos incluyendo el código latex y usa fig2ps o fig2pdf para crear el archivo gráfico final. La configuración que tenía para hacer esto se rompió con R 2.5; si tuviera que hacerlo de nuevo, buscaría en tikz, pero de todos modos incluiré esto aquí como otra opción potencial.
Mis notas sobre cómo lo hice usando Sweave están aquí: http://www.stat.umn.edu/~arendahl/computing
fuente
h <- rnorm(mean = 5, sd = 1, n = 1000) hist(h, main = expression(paste("Sampled values, ", mu, "=5, ", sigma, "=1")))
Tomado de un artículo de ayuda aquí https://stats.idre.ucla.edu/r/codefragments/greek_letters/
fuente
Solo tengo una solución. Primero se puede generar un archivo eps, luego convertirlo de nuevo a pgf usando la herramienta eps2pgf. Ver http://www.texample.net/tikz/examples/eps2pgf/
fuente