Bilden visas inte när figurmiljö används

Jag vill lägga till en bild i mitt papper men jag har problem.

När jag lägg till bilden med bara \includegraphics[]{} taggen, allt fungerar bra och bilden dyker upp när jag kompilerar mitt dokument.

När jag använder \begin{figure} \includegraphics[]{} \end{figure} – syntax bilden visas inte i det sammanställda dokumentet.

Den relevanta delen av mitt huvud innehåller:

 \usepackage{graphicx} \graphicspath{ {pics/} } 

Och senare lägger jag till bilden med det här blocket:

%This does not work \begin{figure} \centering \includegraphics[width=.4\textwidth]{generalPolya} \label{generalPolya} \end{figure} %This works \includegraphics[width=.4\textwidth]{generalPolya} 

Jag antar att det är något slags problem i grafikpaketet, men jag har kopierat installationen från ett tidigare papper jag hade, så det borde fungera. Några idéer om vad som är fel? Tack på förhand.

Redigera:

Tack för alla svaren. Jag skapade ett minimalt fungerande exempel. Tydligen stör multicols med figurtaggen:

\documentclass[]{article} \usepackage{multicol} % Used for the two-column layout of the document \usepackage{amsmath} \usepackage{graphicx} \graphicspath{ {pics/} } \title{\vspace{-15mm}\fontsize{24pt}{10pt}\selectfont\textbf{Lorem ipsum}} % Article title \begin{document} \maketitle % Insert title \begin{multicols}{2} % %This does not show up \begin{figure}[h] \includegraphics[width=.4\textwidth]{generalPolya} \end{figure} %This shows up. \begin{center} \includegraphics[width=.5\textwidth]{chair} \end{center} \end{multicols} \end{document} 

Det som dyker upp efter att dokumentet har sammanställts är detta

ange bildbeskrivning här

Vad är fel med denna syntax?

Kommentarer

  • Välkommen till TeX.SX! Ett tips: Om du drar in rader med fyra blanksteg, så ’ kommer att vara markerat som ett kodprov . Du kan också markera koden och klicka på ” kod ” -knapp (med ” {} ”).
  • Och dessutom: Snälla hjälp oss att hjälpa dig och lägg till ett minimalt arbetsexempel (MWE) som illustrerar ditt problem. ng problemet och ta reda på vad problemet är blir mycket lättare när vi ser kompilerbar kod, som börjar med \documentclass{...} och slutar med \end{document}.
  • Ditt \label i det första kodavsnittet är till ingen nytta, eftersom det inte genererar en etikett för din figur – du måste använda \caption för att en \label ska vara effektiv där. Här genererar du en etikett för den sista räknaren inkrementerad utanför figure -miljön, t.ex. a chapter räknare
  • Är du säker på att flottören inte bara flöt till en annan sida? Du kanske också vill använda \begin{figure}[htbp] som standard (\begin{figure}) är samma som \begin{figure}[tbp] not nr h (kom ihåg h betyder inte HÄR , det betyder här ungefär)
  • @PanagiotisChatzichristodoulou: multicols inaktiverar figurmiljön så att ingenting dyker upp

Svar

Försök använda en minisida så här:

\documentclass[12pt,a4paper]{article} \usepackage{caption} \usepackage{graphicx} \begin{document} \makebox[0pt][l]{% \begin{minipage}{\textwidth} \centering \includegraphics[width=.4\textwidth]{example-image.pdf} \captionof{figure}{figure caption} \label{fig:fig1} \end{minipage} } \medskip I used Figure \ref{fig:fig1} above and referred to it. \end{document} 

ange bildbeskrivning här

Kommentarer

  • Tack för svaret. Det du föreslår fungerar, så jag ’ Jag accepterar svaret. Jag förstår fortfarande inte ’ varför detta och ett enkelt \ inklusive grafik fungerar, men figurmiljön kompilerar inte.
  • @PanagiotisChatzichristodoulou: Det kommer att förbli ett mysterium du ’ tillhandahåller inte det felaktiga dokument som orsakade felet 😉
  • Vad ’ är poängen med inklusive makebox och mintage miljöer?

Svar

Det är därför jag gillar att kompilera på kommandoraden och inte med TeXMaker etc. saker:

Det finns en tydlig varning i .log -fil (och ett ofta förekommande fel 🙂 Inget svävar i multicols -miljö:

Package multicol Warning: Floats and marginpars not allowed inside `multicols" environment!. 

Detta är dokumenterat beteende, multicol manualen beskriver denna varning och anger tydligt vad som kommer att hända (betoning min):

Floats and marginpars not allowed inside ‘multicols’ environment! 

Detta meddelande e visas om du försöker använda kommandot \marginpar eller en ostjärnig version av figure eller table miljö. Sådana flottörer försvinner!

Om en figur (eller tabell) med bildtext ska användas i en multicols -miljö, använd sedan \captionof{figure}{Caption text} istället för \caption och utelämna figure -miljön helt (eller table env.) I denna mening är mitt svar i princip samma som lösningen av AboAmmar, men utan låda och minipage.

\documentclass[]{article} \usepackage{multicol} % Used for the two-column layout of the document \usepackage{amsmath} \usepackage{caption} \usepackage[demo]{graphicx} \graphicspath{ {pics/} } % I disable this since it"s not relevant %\title{\vspace{-15mm}\fontsize{24pt}{10pt}\selectfont\textbf{Lorem ipsum}} % Article title \begin{document} % \maketitle % Insert title \begin{multicols}{2} % %This does not show up %\begin{figure}[h] % Drop this \includegraphics[width=.4\textwidth]{generalPolya} \captionof{figure}{My figure which should be inside the multicols} %\end{figure} % Drop this %This shows up. \begin{center} \includegraphics[width=.5\textwidth]{chair} \end{center} \end{multicols} \end{document} 

Kommentarer

  • Hoppas att du inte ’ tänk på min redigering.

Svar

Jag hade ett liknande problem med en siffra som inte dyker upp när jag använder multicol

Jag fixade med hjälp av det här svaret: https://tex.stackexchange.com/a/483689/152952

\usepackage{float} [...] \begin{figure}[H] [...] \end{figure} 

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *