Zwei vertikale Unterschwimmer ausrichten

Zwei vertikale Unterschwimmer ausrichten

Im Grunde ist diese Frage (Zwei Tikzbilder im Subfloat vertikal ausrichten), jedoch für vertikal angeordnete Unterschwimmer.

Ich weiß, dass Sie sie mit der Option ausrichten können, baselinewenn sie nebeneinander liegen, aber ich weiß nicht, wie ich sie horizontal ausrichten kann.

Ich möchte, dass die gestrichelten Linien vertikal verlaufen, d. h. durch Ausrichten der Knoten.

Ich möchte, dass die gestrichelten Linien vertikal verlaufen, d. h. durch Ausrichten der Knoten.

\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}

Antwort1

Sie müssen dafür sorgen, dass die Bilder die gleiche Größe haben wie tikz. Dies können Sie erreichen, indem Sie den Begrenzungsrahmen vollständig oder teilweise über trim leftund festlegen trim right.

Beispielausgabe

\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}

Ich habe Ihre \lengthVariable reduziert, damit die Bilder auf die Seite passen.

Antwort2

Das Problem ist, dass das erste Bild breiter ist als \textwidthund daher in den rechten Rand hineinragt. Um dies zu verhindern, können Sie Ihr s verkleinern tikzpicture(ich habe verwendet scale=0.85). Beachten Sie auch, dass Sie einige unechte Leerzeichen hatten, die ich in meinem Code mit entfernt habe %:

\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}

Bildbeschreibung hier eingeben

verwandte Informationen