2010-02-24 14 views
22

Pracuję nad moją tezą i zmagam się z umieszczaniem obok siebie 2 obrazów, tak aby drugi obraz był wyśrodkowany pionowo wzdłuż pierwszego. Próbowałem też użyć subfigure zamiast subfloat, ale żaden z nich nie działa.Wyrównanie pionowe subfig. LATEX

Jak to wygląda alt text http://img51.imageshack.us/img51/1174/screenshot20100224at712.png

i mojego kodu jest:

\begin{figure}[H] 
\centering \subfloat[H][sparse($\mathbf{A}$)]{\includegraphics[width=0.28\textwidth]{sparsesmall} \label{sparse}} 
    \subfloat[H][full($\mathbf{A}$)]{\includegraphics[width=0.55\textwidth]{fullsmall}\label{full}} 
    \caption{Representation of $\mathbf{A}$ in MATLAB} 
    \label{schematic} 
\end{figure} 

Wszelkie sugestie, aby wyglądać lepiej niż teraz? Thx

Odpowiedz

11

Jeśli korzystasz z pakietu subfig, możesz to łatwo zrobić. Rozwiązanie jest w punkcie 5.4 the manual:

\newsavebox{\tempbox} 
\begin{figure}[H] 
\sbox{\tempbox}{\includegraphics[width=0.28\textwidth]{sparsesmall}} 
\subfloat[sparse($\mathbf{A}$)]{\usebox{\tempbox}\label{sparse}}% 
\qquad 
\subfloat[full($\mathbf{A}$)]{\vbox to \ht\tempbox{% 
    \vfil 
    \includegraphics[width=0.55\textwidth]{fullsmall} 
    \vfil}\label{full}}% 
    \caption{Representation of $\mathbf{A}$ in MATLAB}\label{schematic} 
\end{figure} 

Nie testowałem go, i nie może być literówki, ale to powinno działać.

+0

Z jakiegoś powodu podpis drugiego rysunku jest wyrównany w przeciwnym razie działa doskonale, dzięki. –

29

Możesz również użyć \ raisebox {x} {\ includegrafika [...] {...}} gdzie x jest ujemne, aby przesunąć je w dół i przesunąć w górę.

1

Moja metoda wykorzystuje kwadratowy minipage który centrach jego zawartość:

\begin{figure} 
\subfloat[Figure a]{% 
\begin{minipage}[c][1\width]{0.5\textwidth}% 
\includegraphics[clip,width=1\textwidth]{figurea}% 
\end{minipage}}\subfloat[Figure b]{\centering{}% 
\begin{minipage}[c][1\width]{0.5\textwidth}% 
\begin{center} 
\includegraphics[clip,width=0.6\textwidth]{figureb} 
\par\end{center}% 
\end{minipage}} 
\caption{main caption} 
\end{figure} 

Ten kod został wygenerowany przez LyX jednak, więc jest to trochę brzydki.

-1

Innym rozwiązaniem (które współpracuje z pakietem subcaption jest

\begin{figure}[p] 
     \centering 
     \begin{subfigure}{.49\linewidth} 
      \centering 
      \caption{Large Picture} 
      \includegraphics{LARGEPIC} 
     \end{subfigure} 
     \hfill 
     \begin{subfigure}{.49\linewidth} 
      \centering 
      \caption{SMALL PIC} 
      \includegraphics{small picture} 
      \begin{minipage}{.1cm} 
      \vfill 
      \end{minipage} 
     \end{subfigure} 
     \caption{Two pictures} 
\end{figure} 

\vfill sam nie działa, to dlaczego jest ona umieszczona w minipage

Powiązane problemy