PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Abbildungen nebeneinander



Ramonette
11-10-2010, 13:11
Hallo,
ich möchte 2 Bilder nebeneinander machen. Das klappt mit dem Programm unten auch ganz gut. Aber ich möchte auch, dass jedes Bild einen eigenen Namen bekommt und die Abbildungen im Abbildungsverzeichnis erscheinen. Dem ist aber nicht so und ich weiß nicht wieso. Es erfolgt nur die Beschriftung von Bild2 und weder das eine noch das andre erscheinen im Abbvz.
Findet jemand meinen Fehler?


\usepackage[latin1]{inputenc}
\usepackage{ngerman}
\usepackage{exscale}
\usepackage{dsfont}
\usepackage{latexsym}
\usepackage{theorem}
\usepackage[dvips]{color}
\usepackage{graphicx}
\usepackage{nomencl}
\usepackage[printonlyused]{acronym}
\usepackage{tocloft}
\usepackage[T1]{fontenc}
\usepackage{booktabs}
\usepackage{capt-of}
\usepackage{tocloft}
\usepackage{caption}
\usepackage{rotating}
\usepackage{array}
\usepackage{mathtools}
\usepackage{amsmath}
\usepackage{float}
\restylefloat{figure}


\begin{figure}[H]
\begin{minipage}[b]{5cm}
\centering
\includegraphics[width=9cm]{*.eps}
\caption{Bild1}
\end{minipage}
\hfill
\begin{minipage}[b]{5cm}
\centering
\includegraphics[width=9cm]{**.eps}
\caption{Bild2}
\end{minipage}
\end{figure}

Tim77
11-10-2010, 13:31
Benutz doch einfach das Paket subfigure.

mechanicus
11-10-2010, 13:43
Benutz doch einfach das Paket subfigure.
Definitiv nicht. Das ist veraltet und sollte nicht mehr genutzt werden.

Entweder das Paket subfig oder das Paket subcaption.

Gruß
Marco

Ramonette
11-10-2010, 13:44
Das klappt bei mir nicht:


\begin{figure}[H]
\centering
\subfigure[blub]{
\includegraphics{olsaut.eps}
}
\subfigure[bla]{
\label{Labelname 2}
\includegraphics{olscon}
}
\caption{Gemeinsamer Titel}
\label{Gemeinsames Label}
\end{figure}


ich bekomm da eine Fehlermeldung, obwohl ich \usepackage{subfig} miteinbinde..

mechanicus
11-10-2010, 13:46
Hi,


Vollständige lauffähige Minimalbeispiele
Fehler ja, aber was für einen?
label in die caption packen.


Gruß
Marco

mAkL
11-10-2010, 13:48
\documentclass{article}
\usepackage{graphicx}

\begin{document}
\listoffigures
\begin{figure}[H]
\begin{minipage}{0.45\textwidth}
\centering
\includegraphics[width=5cm]{Testbild}
\caption{Bild1}
\end{minipage}
\begin{minipage}{0.45\textwidth}
\centering
\includegraphics[width=5cm]{Testbild}
\caption{Bild2}
\end{minipage}
\end{figure}
\end{document}

4036

Gruß, mAkL

Ramonette
11-10-2010, 13:58
@mAKL: Genauso wollte ich es eigentlich machen, und es erscheint auch wie gewünscht mittlerweile im Abbildungsverzeichnis. Aber bei der dvi-Ausgabe gibt es das Problem, das nicht unter Bild1 und Bild2 jeweils die Bildunterschrift erscheint, sondern unter Bild1 die Bild2unterschrift??????
Hast du da noch eine Idee wieso?


Auf jeden Fall mal allen danke, die so schnell ne Antwort geschickt haben.

mAkL
11-10-2010, 14:04
@mAKL: Hast du da noch eine Idee wieso?

Nee, weil



Vollständige lauffähige Minimalbeispiele


Das Beispiel muß natürlich genau dein Problem widerspiegeln.

Gruß, mAkL

Ramonette
11-10-2010, 14:12
\documentclass[a4paper,11pt]{book}
\pagestyle{empty}
\usepackage[latin1]{inputenc}
\usepackage{ngerman}
\usepackage{exscale}
\usepackage{dsfont}
\usepackage{latexsym}
\usepackage{theorem}
\usepackage[dvips]{color}
\usepackage{graphicx}
\usepackage{nomencl}
\usepackage[printonlyused]{acronym}
\usepackage{tocloft}
\usepackage[T1]{fontenc}
\usepackage{booktabs}
\usepackage{capt-of}
\usepackage{tocloft}
\usepackage{caption}
\usepackage{rotating}
\usepackage{array}
\usepackage{mathtools}
\usepackage{amsmath}
\usepackage{float}
\usepackage{subfig}

\begin{document}
\begin{figure}[H]
\begin{minipage}{0.45\textwidth}
\centering
\includegraphics[width=8cm]{olsaut.eps}
\caption{Bild1}
\end{minipage}
\begin{minipage}{0.45\textwidth}
\centering
\includegraphics[width=8cm]{olscon.eps}
\caption{Bild2}
\end{minipage}
\end{figure}

\end{document}

rstuby
11-10-2010, 14:17
Da hättest du aber ruhig selber noch ein bisschen experimentieren können, welches Paket nun schuld ist. Dann wäre es auch ein MINIMALbeispiel für deinen Fehler geworden.

Ramonette
11-10-2010, 14:27
Es tut mir leid, dass ich nicht mal wusste, dass es an einem Paket liegen soll....Ich bin darin eben nicht so gut.

rstuby
11-10-2010, 14:35
Es muss wohl an einem der drei Pakete dsfont, acronym oder mathtools liegen. Denn diese drei habe ich auskommentiert, weil ich sie nicht hatte, die Bilder ersetzt, die ich natürlich auch nicht habe (besser ist, du machst so was auch im Minimalbeispiel selbst, sonst ist es keins und wir haben die ganze Arbeit. Mit \rule{Breite}{Höhe} kann man schön an die Stelle seiner Graphiken schwarze Rechtecke malen. Es gibt auch noch andere Möglichkeiten). Danach waren beide Unterschriften unter ihren jeweiligen Bildern (Platzhaltern) vorhanden.

Außerdem gibt es zwei overfull \hbox-Meldungen und die Bilder überschnitten sich zum Teil. Offenbar ist 8cm zu viel für die Minipages. Mit 0.95\textwidth (hier wird nimmt er die Textbreite von der Minipage, nicht vom sonstigen Text) gibt es bei mir keinerlei Problem.

PS: Was heißt, du wusstest nicht, dass es an einem Paket liegen soll? War nicht das einzige, was du gegenüber dem Vorschlag von MAkL geändert hast, die Klasse, die Breite der Bilder und dass du einen Haufen Pakete eingebunden hast? Da hast du dir doch sicher gedacht, dass an einer oder mehreren dieser Sachen liegen muss.
Obwohl es natürlich auch eine veraltete TeX-Distribution oder so was sein könnte...

Xenara
11-10-2010, 14:51
Hier (http://www.mrunix.de/forums/showthread.php?p=305366#post305366) gibts Tipps, wie man ein Minimalbeispiel erstellt.
Darin ist auch beschrieben, wie man mit Bildern umgeht.

mAkL
11-10-2010, 14:55
\documentclass[a4paper,11pt]{book}
...
\end{document}


In diesem Quellcode fehlt natürlich das \listoffigures, denn das war ja Teil deines Problems, oder? Ansonsten kann ich dich aber beruhigen: Bei mir (MiKTeX 2.8/TeXnicCenter) gibt es bei obigem Quellcode keine Probleme bei der DVI-, PS- oder PDF-Ausgabe. Ich mußte dafür auch keine Pakete auskommentieren.

Gruß, mAkL

mechanicus
11-10-2010, 15:06
Hallo,

euch ist schon klar, dass minipage und subfig / subcaption unterschiedliche Ergebnisse liefern. Sie haben schließlich nicht den identischen Zähler wie figure.

Zudem ist in dem minipage-Konstrukt ein kleiner Schönheitsfehler:

\end{minipage}%
\begin{minipage}{0.45\textwidth}


@Ramonette:
Du hast nun schön öfter einen Link zur Erstellung eines Minimalbeispiels gesehen und gekonnt ignoriert.
Auch deine Pakete könntest du mal gegen neu tauschen.

Gruß
Marco

rstuby
11-10-2010, 15:09
Hm, ich dachte, jetzt ginge es ramonette um die Beschriftungen der Bilder selbst.
Aber auch wenn ich listoffigures hinzufüge, ist alles normal.
Gibt es mit diesem Beispiel bei der, ramonette, wirklich den Fehler? Auch wenn du vorher die hilfsdateien löschst und es außerhalb eines bei dir bereits vorhandenen Projekts benutzt?
Wenn ja, was für eine Distribution hast du (Texlive oder Miktex oder noch was anderes)?
Gibt es eine Fehlermeldung? Wenn ja, wie lautet sie? Und die großen Profis können auch mit der Ausgabe des logfiles etwas anfangen (bitte das .log zu GENAU DEM Beispiel, damit auch die Zeilennummern stimmen).

mAkL
11-10-2010, 15:36
euch ist schon klar, dass minipage und subfig / subcaption unterschiedliche Ergebnisse liefern. Sie haben schließlich nicht den identischen Zähler wie figure.

Ich hatte eher den Eindruck, daß Ramonette überhaupt irgendetwas haben wollte, das sich wie gewünscht verhält. Wobei unklar bleibt, was gewünscht ist... :confused:


Zudem ist in dem minipage-Konstrukt ein kleiner Schönheitsfehler:

\end{minipage}%
\begin{minipage}{0.45\textwidth}


Danke für den Hinweis. Bin ja noch ziemlich neu bei LaTeX und nehme sowas gerne mit.

Gruß, mAkL

mechanicus
11-10-2010, 15:51
Danke für den Hinweis. Bin ja noch ziemlich neu bei LaTeX und nehme sowas gerne mit.
Mit dem % kannst du auch 0.5\textwidth schreiben, ohne eine böse Box zu bekommen :D

Gruß
Marco

mAkL
11-10-2010, 16:11
Mit dem % kannst du auch 0.5\textwidth schreiben, ohne eine böse Box zu bekommen :D

:) :cool: Das bringt etwas mehr Klarheit in meine doch-noch-eher-Copy&Paste-Methode, LaTeX-Dokumente zu erstellen. Die ist nämlich im Detail manchmal recht unreflektiert.

Gruß, mAkL

ellocco
11-10-2010, 16:46
Es reicht auch das Paket caption:

\documentclass{article}
\usepackage[latin1]{inputenc} % latin1 includes "ä,ö,ü", ansinew includes win32 specials
\usepackage[T1]{fontenc}
\usepackage{theorem}
\usepackage{color} %% Standardtreiber werden automatisch erkannt
\usepackage{graphicx}
\usepackage{caption}
%% ---
\begin{document}
\listoffigures{}
%% --
\begin{figure}[hb]
\begin{minipage}[t]{0.48\textwidth{}}
\centering
\rule{\textwidth}{1ex}
\caption[Dieser Text kommt in Abbildungsverzeichnis]{Wenn Du schon das
Paket \textsl{caption} einbindest, dann entscheide Dich für oder gegen
Gleitumgebungen (Floats), aber die Option \texttt{[H]} macht in den meisten Fällen keinen Sinn.}
\end{minipage}%
\hfill{}%
\begin{minipage}[t]{0.48\textwidth{}}
\centering
\rule{\textwidth}{1ex}
\captionof{figure}[Dieser Text kommt in Abbildungsverzeichnis, Variante B]{Innerhalb einer Gleitumgebung
(z.B.\ \texttt{figure}) kann der Befehl \texttt{\textbackslash{}caption} nur einmal sinnvoll genutzt werden.}
\end{minipage}
\end{figure}
\end{document}

mechanicus
11-10-2010, 17:03
Hi,



Es reicht auch das Paket caption:
wofür das Paket caption. Das brauchst du doch gar nicht, für das Beispiel.

der Befehl caption wird nicht durch das Paket caption bereitgestellt, sondern modifiziert und erweitert, so dass der User mehrere Einstellungsmöglichkeiten einfacher nutzen kann.

Hier mal auf ein Minimum reduziert:

\documentclass{scrartcl}
\begin{document}
\listoffigures
%% --
\begin{figure}[hb]
\begin{minipage}[t]{0.5\textwidth}
\centering
\rule{0.4\textwidth}{1ex}
\caption[Dieser Text kommt in Abbildungsverzeichnis]{Wenn Du schon das
Paket \textsl{caption} einbindest, dann entscheide Dich für oder gegen
Gleitumgebungen (Floats), aber die Option \texttt{[H]} macht in den meisten Fällen keinen Sinn.}
\end{minipage}%
\begin{minipage}[t]{0.5\textwidth}
\centering
\rule{0.4\linewidth}{1ex}
\caption[Dieser Text kommt in Abbildungsverzeichnis, Variante B]{Innerhalb einer Gleitumgebung
(z.B.\ \texttt{figure}) kann der Befehl \texttt{\textbackslash{}caption} nur einmal sinnvoll genutzt werden.}
\end{minipage}
\end{figure}
\end{document}


Gruß
Marco

rstuby
11-10-2010, 18:14
Ich glaube elloco wollte die figure-Umgebung wegnehmen und den Befehl \captionof nehmen. Letzteren hat er beim zweiten Mal auch drin :-)

sommerfee
11-10-2010, 20:18
Wofür hast du


\restylefloat{figure}

in deinem Dokument drin stehen?

(Wenn du nicht weißt, warum, dann schmeiße es einfach weg.)

Liebe Grüße,
Axel

ellocco
11-10-2010, 21:50
Hi,
wofür das Paket caption. Das brauchst du doch gar nicht, für das Beispiel.
...
Gruß
Marco
ok. Danke für die Aufklärung!
Hier ein Beispiel, daß mehr Sinn macht:

\documentclass{article}
\usepackage[latin1]{inputenc} %% latin1 includes "ä,ö,ü", ansinew includes win32 specials
\usepackage[T1]{fontenc}
\usepackage{theorem}
\usepackage{color} %% Standardtreiber werden automatisch erkannt
\usepackage{graphicx}
\usepackage{caption}
%% ---
\begin{document}
\listoffigures{}
\listoftables{}
%% --
\begin{figure}[hb]
\begin{minipage}[t]{0.48\textwidth{}}
\centering
\rule{\textwidth}{1ex}
\caption[Dieser Text kommt in Abbildungsverzeichnis, Abbildung A]{Wenn Du schon das
Paket \textsl{caption} einbindest, dann entscheide Dich für oder gegen
Gleitumgebungen (Floats), aber die Option \texttt{[H]} macht in den meisten Fällen keinen Sinn.}
\end{minipage}%
\hfill{}%
\begin{minipage}[t]{0.48\textwidth{}}
\centering
\begin{tabular}[t]{ccc} \hline
Eine & schöne & Tabelle\\ \hline
zweite & Zeile & ~ \\ \hline
\end{tabular}
\captionof{table}[Dieser Text kommt in Abbildungsverzeichnis, Tabelle A]{Wenn innerhalb der \texttt{figure}-Umgebung
auch eine oder mehrere Tabellen mitgleiten sollen, kann der Befehl \texttt{\textbackslash{}captionof\{\}[]\{\}}
aus dem Paket \textsl{caption} verwendet werden.}
\end{minipage}
\end{figure}
Hier ist jetzt Text, damit die Trennung der beiden Blöcke besser sichtbar wird. Der obere Block ist an der Oberkante
ausgerichtet, der untere an der Unterkante.
\begin{center}
\begin{minipage}[b]{0.48\textwidth{}}
\centering
\rule{\textwidth}{1ex}
\captionof{figure}[Dieser Text kommt in Abbildungsverzeichnis, Abbildung B]{Wenn nichts gleiten soll, ist es sinnvoller
auf eine Gleitumgebung zu verzichten.}
\end{minipage}%
\hfill{}%
\begin{minipage}[b]{0.48\textwidth{}}
\centering
\begin{tabular}[b]{rcc} \hline
Nr. & Tabelle & Abbildung\\ \hline
1 & --- & ja \\ \hline
2 & ja & --- \\ \hline
3 & --- & ja \\ \hline
4 & ja & --- \\ \hline
\end{tabular}
\captionof{table}[Dieser Text kommt in Abbildungsverzeichnis, Tabelle B]{Statt einer \texttt{figure}-Umgebung
können auch nicht gleitende Umgebungen verwendet werden, mit dem Befehl
\texttt{\textbackslash{}captionof\{figure/table\}[]\{\}} aus dem Paket \textsl{caption}
können dann Einträge in die \texttt{*.lof} bzw.\ \texttt{*.lot}-Dateien vorgenommen werden.}
\end{minipage}
\end{center}

\end{document}
Grüße

ellocco