MATLAB Answers

Importing MATLAB Figures into Latex

I have a Matlab figure and I want to import it to latex. My code is
>> plot3(Pa,Pb,Profit,'x') >> print -deps graph1
Then I copy and paste the eps file to my latex file and use this code.
\begin{figure}
\centering
\includegraphics{graph1}
\caption{}
\end{figure}
Error: Unknown graphics extension.
Does anyone know how to import Matlab figures into Latex?
Thanks

  댓글 수: 2

Did you add \usepackage{graphicx} in the preamble ? Did you move the graph1 image to your LaTeX directory?
still same problem sir?? what to do?

로그인 to comment.

답변 수: 3

Answer by Stephen Cobeldick on 19 Jan 2015
 Accepted Answer

You are probably not actually compiling using LaTeX, but more likely you are using pdfLaTeX, which is much more commonly used these days to create PDF's directly from the .tex files. True LaTeX (like TeX that it is based on) creates .dvi files, not PDF's.
This difference is important as the different compilation engines support different image formats. The best way is to check the documentation for the exact compilation engine that you are using. In the case of pdfLaTeX compilation (the most popular today), EPS files are not supported.
The WikiBooks website is a good source of info on LaTeX:
https://en.wikibooks.org/wiki/LaTeX/Importing_Graphics
In particular, it says this:
Compiling with latex
  • The only format you can include while compiling with latex is Encapsulated PostScript (EPS).
Compiling with pdflatex
If you are compiling with pdflatex to produce a PDF, you have a wider choice. You can insert:
  • JPG, widely used on Internet, digital cameras, etc. They are the best choice if you want to insert photos.
  • PNG, a very common format (even if not as much as JPG); it's a lossless format and it's the best choice for diagrams (if you were not able to generate a vector version) and screenshots.
  • PDF, it is widely used for documents but can be used to store images as well. It supports both vector and bit-map images, but it's not recommended for the latter, as JPG or PNG will provide the same result using less disk space.
It goes on to give state that you can use EPS with pdfLaTeX, but only with the help of some other tools or some intermediate processing
  • EPS can be used with the help of the epstopdf package.
The WikiBooks website will give a good intro on how to do this.

  댓글 수: 0

로그인 to comment.


Answer by Chad Greene
on 18 Jan 2015

Instead of print I tend to use export_fig to export a very nice looking pdf. \includgraphics handles pdfs well.

  댓글 수: 3

Hello. I got this error: xport_fig figure1 Undefined function 'export_fig' for input arguments of type 'char'.
I also tried to import the figure as pdf and get this error: ! LaTeX Error: Unknown graphics extension: .1.See the LaTeX manual or LaTeX Companion for explanation.Type H return for immediate help.... \includegraphics{f1.1}
I am guessing you put export_fig somewhere that Matlab can't find it. And pdfs in LaTeX should be no problem with \usepackage{graphicx} in the header.

로그인 to comment.


Answer by Youssef Khmou
on 19 Jan 2015

Besides the explained proposition above, try to specify the extension in the source File :
\usepackage{graphicx}
\usepackage{epstopdf}
% other Tex instructions {Document ....}
\begin{figure}
\centering
\includegraphics{graph1.eps}
\caption{....}
\end{figure}

  댓글 수: 0

로그인 to comment.



Translated by