對齊兩個垂直子浮動

對齊兩個垂直子浮動

基本上這個問題(垂直對齊 subfloat 中的兩個 tikzpicture)但對於垂直放置的子浮動。

我知道baseline如果它們彼此相鄰,您可以將它們與選項對齊,但我不知道如何水平對齊它們。

我希望虛線是垂直的,即通過對齊節點。

我希望虛線是垂直的,即通過對齊節點。

\documentclass{article}
\usepackage{tikz}
\usepackage{amsmath}
\usepackage{subfig}
\usepackage{pgfplots}
\usetikzlibrary{positioning}
\begin{document}
\begin{figure}
\centering
\newcommand{\length}{400}
\subfloat[Bovenaanzicht]{
    \begin{tikzpicture}[x=.250mm,y=.250mm,remember picture]
    % Afmeting van inlet
    \draw[<->] (0, 45) -- (0, -45) node[left,midway] {90mm};
    % Afmeting outlet
    \draw[<->] (\length + 40, 45) -- (\length + 40, -45) node[right,midway] {90mm};
    % Afmeting fan
    \draw[<->] (65, .5*65) -- (65, -.5*65) node[left,midway] {65mm};

    % Tube
    \draw (0,45) -- (65, 0.5*65) -- (65+42, 0.5*65) -- (\length, 45);
    \draw (0,-45) -- (65, -0.5*65) -- (65+42, -0.5*65) -- (\length, -45);
    \node (fanpositionl bovenaanzicht) at (65, 0.5*65){};
    \node (fanpositionr bovenaanzicht) at (65+42, 0.5*65){};
    \end{tikzpicture}
}
\par
\subfloat[Zijaanzicht]{
    \begin{tikzpicture}[x=.250mm,y=.250mm,remember picture]
    % Tube
    \draw (0,37) -- (65, 65) -- (65+42, 65) -- (\length, 32);
    \draw (0,0) -- (\length, 0);
    \node (fanpositionl zijaanzicht) at(65, 0) {};
    \node (fanpositionr zijaanzicht) at(65+42, 0) {};
    \end{tikzpicture}
}
\begin{tikzpicture}[x=.250mm,y=.250mm,overlay,remember picture]
\draw[dashed] (fanpositionl zijaanzicht) -- (fanpositionl bovenaanzicht);
\draw[dashed] (fanpositionr zijaanzicht) -- (fanpositionr bovenaanzicht);
\end{tikzpicture}
\caption{Profiel van ``Elliptische'' duct}\label{fig:motorschacht_elliptisch}
\end{figure}
\end{document}

答案1

您需要使圖片看起來大小與 相同tikz。這可以透過完全設定邊界框或透過trim left和部分設定邊界框來完成trim right

樣本輸出

\documentclass{article}

\usepackage{tikz}
\usepackage{amsmath}
\usepackage{subfig}
\usepackage{pgfplots}
\usetikzlibrary{positioning}
\pgfplotsset{compat=1.12}

\begin{document}
\begin{figure}
\centering
\newcommand{\length}{280}
\subfloat[Bovenaanzicht]{
  \begin{tikzpicture}[x=.250mm,y=.250mm,trim left,trim right=200,
    remember picture]
    % Afmeting van inlet
    \draw[<->] (0, 45) -- (0, -45) node[left,midway] {90mm};
    % Afmeting outlet
    \draw[<->] (\length + 40, 45) -- (\length + 40, -45)
      node[right,midway] {90mm};
    % Afmeting fan
    \draw[<->] (65, .5*65) -- (65, -.5*65) node[left,midway] {65mm};

    % Tube
    \draw (0,45) -- (65, 0.5*65) -- (65+42, 0.5*65) -- (\length, 45);
    \draw (0,-45) -- (65, -0.5*65) -- (65+42, -0.5*65) -- (\length, -45);
    \node (fanpositionl bovenaanzicht) at (65, 0.5*65){};
    \node (fanpositionr bovenaanzicht) at (65+42, 0.5*65){};
    \end{tikzpicture}
}\\
\subfloat[Zijaanzicht]{
\begin{tikzpicture}[x=.250mm,y=.250mm,trim left,trim right=200,
  remember picture]
  % Tube
  \draw (0,37) -- (65, 65) -- (65+42, 65) -- (\length, 32);
  \draw (0,0) -- (\length, 0);
  \node (fanpositionl zijaanzicht) at(65, 0) {};
  \node (fanpositionr zijaanzicht) at(65+42, 0) {};
\end{tikzpicture}
}
\begin{tikzpicture}[x=.250mm,y=.250mm,remember picture,overlay]
\draw[dashed] (fanpositionl zijaanzicht) -- (fanpositionl bovenaanzicht);
\draw[dashed] (fanpositionr zijaanzicht) -- (fanpositionr bovenaanzicht);
\end{tikzpicture}
\caption{Profiel van ``Elliptische'' duct}\label{fig:motorschacht_elliptisch}
\end{figure}


\end{document}

我已經減少了您的\length變量,以便圖片適合頁面。

答案2

問題是第一張圖像比它更寬,\textwidth所以它突出到了右邊距。為了防止這種情況,一種選擇是縮小你的tikzpictures (我使用過scale=0.85)。另外,請注意,您有一些虛假的空格,我在程式碼中使用以下命令刪除了這些空格%

\documentclass{article}
\usepackage{tikz}
\usepackage{amsmath}
\usepackage{subfig}
\usepackage{pgfplots}
\usetikzlibrary{positioning}

\begin{document}

\begin{figure}
\centering
\newcommand{\length}{400}
\subfloat[Bovenaanzicht]{%
    \begin{tikzpicture}[x=.250mm,y=.250mm,remember picture,scale=0.85]
    % Afmeting van inlet
    \draw[<->] (0, 45) -- (0, -45) node[left,midway] {90mm};
    % Afmeting outlet
    \draw[<->] (\length + 40, 45) -- (\length + 40, -45) node[right,midway] {90mm};
    % Afmeting fan
    \draw[<->] (65, .5*65) -- (65, -.5*65) node[left,midway] {65mm};

    % Tube
    \draw (0,45) -- (65, 0.5*65) -- (65+42, 0.5*65) -- (\length, 45);
    \draw (0,-45) -- (65, -0.5*65) -- (65+42, -0.5*65) -- (\length, -45);
    \node (fanpositionl bovenaanzicht) at (65, 0.5*65){};
    \node (fanpositionr bovenaanzicht) at (65+42, 0.5*65){};
    \end{tikzpicture}%
}
\par
\subfloat[Zijaanzicht]{%
    \begin{tikzpicture}[x=.250mm,y=.250mm,remember picture,scale=0.85]
    % Tube
    \draw (0,37) -- (65, 65) -- (65+42, 65) -- (\length, 32);
    \draw (0,0) -- (\length, 0);
    \node (fanpositionl zijaanzicht) at(65, 0) {};
    \node (fanpositionr zijaanzicht) at(65+42, 0) {};
    \end{tikzpicture}%
}
\begin{tikzpicture}[x=.250mm,y=.250mm,overlay,remember picture]
\draw[dashed] (fanpositionl zijaanzicht) -- (fanpositionl bovenaanzicht);
\draw[dashed] (fanpositionr zijaanzicht) -- (fanpositionr bovenaanzicht);
\end{tikzpicture}
\caption{Profiel van ``Elliptische'' duct}\label{fig:motorschacht_elliptisch}
\end{figure}

\end{document}

在此輸入影像描述

相關內容