A menudo llego a un punto en el que quiero incluir un gráfico de un conjunto de datos o simplemente una función simple en mi archivo TeX. El enfoque ingenuo habitual sería guardar el gráfico como un gráfico vectorial o de píxeles y simplemente importarlo con el paquete gráfico.
Pero esto tiene una desventaja. Las etiquetas de los ejes, por ejemplo, suelen tener un tamaño demasiado grande o demasiado pequeño.
Entonces, otra opción que probé es gnuplot y la opción de terminal epslatex. Aunque esto soluciona el problema con axeslabel al escribir tanto un archivo gráfico vectorial como un archivo tex, encontré que este método era muy poco práctico cuando quería cambiar (por ejemplo, un pequeño error) en axeslabel.
Entonces quería saber cuál es la forma más práctica de crear e incluir un gráfico en un archivo LaTeX para que sea compatible con el tamaño y la fuente de la salida pdfLaTeX.
EDITAR: El énfasis recae en trazar puntos de datos de un archivo (no trazar una función analítica, eso es solo para mostrar algún comportamiento limitante).
Respuesta1
Si desea utilizar gnuplot en lugar de paquetes pgf por algún motivo, le sugiero que utilice tikz
la opción de terminal. Aquí está el procedimiento.
Primero, debemos crear un .tex
archivo en el que se dibuje el gráfico que deseamos. Permítanme trazar una curva sinusoidal en esta demostración porque no tengo los datos para trazar. Sin embargo, también puedes hacer todo lo que puedas con gnuplot, incluido plot "foo.csv"
. En gnuplot, ejecute lo siguiente:
set terminal tikz
set output "graph.tex"
set xlabel "set $x$ axis label as you like"
set ylabel "set $y$ axis label as you like"
# put extra settings you want to use here
plot sin(x)
exit
Llegamos graph.tex
a donde se dibuja el gráfico.
Entonces todo lo que tenemos que hacer es incluir este archivo en la fuente principal, digamos main.tex
. Es necesario cargar gnuplot-lua-tikz
el paquete.
\documentclass{article}
\usepackage{gnuplot-lua-tikz}
\begin{document}
\centering
\include{graph}
\end{document}
Sin embargo, la ejecución pdflatex main.tex
de alguna manera genera un error que dice ! Undefined control sequence. l.7 \gpsetdashtype{gp dt solid}
Este error ocurre en TeX Live 2015, no en mi entorno anterior (es decir, TeX Live 2013) y me temo que no sé el motivo. De todos modos, eliminando esta línea 7, finalmente obtenemos lo siguiente:
Por supuesto, puedes cambiar el detalle de los gráficos editándolos graph.tex
.
Usandognuplottex
El paquete podría ser una buena opción aunque nunca lo he usado.