Tikzpictures 并排

Tikzpictures 并排

我使用了以下代码:

\begin{figure}[h]  
\begin{tikzpicture}   
      \draw[->] (-0.5,0) -- (4,0) node[right] {$x$};  
      \draw[->] (0,-0.5) -- (0,4) node[above] {$y$};  
      \draw (0,0.5) -- (4,2);  
      \draw [dashed] (0,1.5) -- (4,4);  
\end{tikzpicture}  
\caption{No Interaction} \label{fig:M1}  

\begin{tikzpicture}  
      \draw[->] (-0.5,0) -- (4,0) node[right] {$x$};  
      \draw[->] (0,-0.5) -- (0,4) node[above] {$y$};  
      \draw (0,0.5) -- (4,2.5);  
      \draw [dashed] (0,1.5) -- (4,3.5);  
\end{tikzpicture}. 
\caption{Interaction} \label{fig:M2}  
\end{figure}  

插入两个图形,但是它将它们一个放在另一个的上方,而我希望它们彼此相邻但有独立的标签,这可能吗?

答案1

A 的tikzpicture作用基本上就像一个字母,因此如果您想将两个字母并排放置,则不应使用任何插入垂直空间或留下空行的命令。在第一个示例中,我删除了第一个标题并将其与第二个标题合并,同时删除了中间的空行。

第二种解决方案展示出了使用subfigurefromsubcaption包的一种可能方法:将每个包放入tikzpicture一个subfigure环境中并\caption为每个包提供一个。

\documentclass{article}

\usepackage{tikz}

\usepackage{subcaption}


\begin{document}

\begin{figure}[h]  
\centering 

\begin{tikzpicture}   
      \draw[->] (-0.5,0) -- (4,0) node[right] {$x$};  
      \draw[->] (0,-0.5) -- (0,4) node[above] {$y$};  
      \draw (0,0.5) -- (4,2);  
      \draw [dashed] (0,1.5) -- (4,4);  
\end{tikzpicture}% NO EMPTY LINE HERE!!!! 
\begin{tikzpicture}  
      \draw[->] (-0.5,0) -- (4,0) node[right] {$x$};  
      \draw[->] (0,-0.5) -- (0,4) node[above] {$y$};  
      \draw (0,0.5) -- (4,2.5);  
      \draw [dashed] (0,1.5) -- (4,3.5);  
\end{tikzpicture} 
\caption{Left: No Interaction. Right: Interaction} \label{fig:M}  
\end{figure}  

\begin{figure}[h]  
\centering 
  \begin{subfigure}[b]{0.4\linewidth}
    \begin{tikzpicture}   
      \draw[->] (-0.5,0) -- (4,0) node[right] {$x$};  
      \draw[->] (0,-0.5) -- (0,4) node[above] {$y$};  
      \draw (0,0.5) -- (4,2);  
      \draw [dashed] (0,1.5) -- (4,4);  
    \end{tikzpicture}%
    \caption{No interaction} \label{fig:M1}  
  \end{subfigure}
\begin{subfigure}[b]{0.4\linewidth}
  \begin{tikzpicture}  
      \draw[->] (-0.5,0) -- (4,0) node[right] {$x$};  
      \draw[->] (0,-0.5) -- (0,4) node[above] {$y$};  
      \draw (0,0.5) -- (4,2.5);  
      \draw [dashed] (0,1.5) -- (4,3.5);  
\end{tikzpicture}
\caption{Interaction} \label{fig:M2}  
\end{subfigure}
\caption{Interaction figures}
\end{figure}  
\end{document}

在此处输入图片描述

相关内容