%20y%20el%20tama%C3%B1o%20de%20fuente%20de%20l%C3%A1tex.png)
Estoy generando algunas figuras con la terminal gnuplot epslatex en modo independiente. No hay problema en generar las cifras y la calidad.
Sin embargo, mientras uso la clase de artículo elsevier en modo de dos columnas, tengo que escalar las figuras para que quepan en el ancho de la columna y luego, como era de esperar, los tamaños de fuente se reducen. Intenté escalar las fuentes o el tamaño de las figuras en gnuplot. Pero me encuentro con el mismo problema.
Estoy pensando que debería poder unificar los tamaños de fuente de títulos, claves, etc. en Latex y hacerlos iguales al texto del documento.
¿Algún consejo sobre cómo resolver este problema sin necesidad de utilizar otro software?
PD: Si es posible, primero me gustaría resolver este problema dentro de Latex y gnuplot.
Respuesta1
No creo que sea posible hacer esto fácilmente usando el conjunto actual de herramientas ( gnuplot
y epslatex
). La razón es que dependiendo de las dimensiones y el tamaño de fuente del documento LaTeX final, necesitarás calcular manualmente las dimensiones y el tamaño de fuente de las figuras.
Lo que necesita se puede lograr fácilmente usando pgfplots
, que es un paquete LaTeX para que todo el código para dibujar gráficos se pueda incluir en su .tex
archivo. Vea el ejemplo a continuación donde la figura ocupa naturalmente el ancho de la columna del documento y usa el mismo tamaño de fuente.
El proceso que utilizo para generar gráficos es el siguiente:
- Ejecute experimentos usando el programa de su elección, archivo de texto de salida
- Úselo
pgfplots
para escribir código LaTeX en.tex
el archivo principal para trazar un gráfico.
Consulte la sección "Lectura de coordenadas de tablas" de lamanual de diagramas de pgfpara más información.
\documentclass[5p]{elsarticle}
\usepackage{lipsum}
\usepackage{pgfplots}
\begin{document}
\begin{figure}[h!]
\centering
\begin{tikzpicture}
\begin{axis}[
width=\columnwidth,
xlabel=$x$,
ylabel=$y$,
legend pos=north west]
\addplot {x^3};
\addlegendentry{$y = x^3$};
\end{axis}
\end{tikzpicture}
\end{figure}
\lipsum[1-2]
\end{document}
\documentclass[3p]{elsarticle}
\usepackage{lipsum}
\usepackage{pgfplots}
\begin{document}
\begin{figure}[h!]
\centering
\begin{tikzpicture}
\begin{axis}[
width=\columnwidth,
xlabel=$x$,
ylabel=$y$,
legend pos=north west]
\addplot {x^3};
\addlegendentry{$y = x^3$};
\end{axis}
\end{tikzpicture}
\end{figure}
\lipsum[1-2]
\end{document}
Respuesta2
Por lo que puedo entender, tienes dos opciones:
Se utiliza
\resizebox
para escalar todo el contenido del.tex
archivo producido con elepslatex
terminal, es decir\resizebox{\linewidth}{!}{\input{epslatex-file.tex}}
, . Tenga en cuenta que sus fuentes también se escalarán.Especificar el tamaño de las parcelas en su
gnuplot
código,set terminal epslatex size a b
dondea
yb
pueden tener unidades (es decir, cm). Gnuplot no parece aceptar un tamaño más dinámico, lo\linewidth
cual creo que sería adecuado para su propósito.
Alternativamente, usar PGFplots podría ser su mejor opción, suponiendo que no necesite gráficos 3D. PGFplots tiene mucha hambre de memoria LaTeX cuando pasa a 3D.