0

I am using matplotlib and exporting my plots as pfg so I can keep math notation in latex.

I am using elsarticle. Things were working quite well until I switched the template to two columns. In this case the plot is too big and goes beyond the column.

This what I have at the moment:

\begin{figure}[htb]
    \centering
    \inputpgf{./figs/}{myplot.pgf}\label{fig:myplot}
    \captionsetup{justification=centering}
    \caption{This is my plot}
\end{figure}

how can I set width so it works well in both single and double column?

Juan Leni
  • 698
  • Does setting \pgfplotsset{width=0.9\linewidth} in the preamble of your document help? –  May 01 '19 at 05:53

1 Answers1

1

You can either set the width manually relative to the type width with a simple scale box and adjust according to a prefered size

\begin{figure}[htb]
    \centering
    \scalebox{0.15\typewidth}{\import{./}{example.pgf}} \label{fig:myplot2}
This is simple answer (scale box width manually)
     \caption{This is my plot TWO}
\end{figure}  

OR set it relative to self adjust to column width

\begin{figure}[htb] % loading oversise as 98% of column width
\begin{center}
\resizebox{0.98\columnwidth}{!}{\input{example.pgf}} \label{fig:myplot3} 
This is better answer (resize box width automagically to suit column)
     \caption{This is my plot THREE}
     \end{center}
\end {figure}  

enter image description here

  • I would need to try.. but by resizing, will all the text (legends, etc.) will be resized too?. Any way to avoid that? I think I will need to create the charts with the correct double column width – Juan Leni Apr 01 '19 at 04:18
  • Scaling will usually affect fonts etc the method to avoid that is either to import some components separately or use a system such as matplotlib 2 tikz as described here https://tex.stackexchange.com/questions/165042/how-can-i-import-and-scale-matplotlib-plots-keeping-fonts-the-correct-size where the full width or half width graphic have the same size text –  Apr 01 '19 at 10:48