好吧,我尝试了很多方法,但还是找不到。有没有关于如何将图片放在图表旁边的简单示例代码?
我尝试了一下,hspace
并vspace
尝试了两个相邻的图作为示例,但目前我无法用图形代替它。
答案1
这是一个使用小而强大的解决方案副标题hyperref
包(与有更好的交互subfig
):
\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{caption}
\usepackage{subcaption}
\usepackage{pgfplots}
\pgfplotsset{width=3in}
\begin{document}
\begin{figure}
\begin{subfigure}[b]{.5\textwidth}
\centering
\includegraphics{picture}
\caption{A picture}
\end{subfigure}%
\begin{subfigure}[b]{.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.8]
\begin{axis}
\addplot {x^2 * sin(x)};
\end{axis}
\end{tikzpicture}
\caption{A plot}
\end{subfigure}
\end{figure}
\end{document}
可以使用环境的可选参数来控制相对垂直对齐subfigure
。
在上述方法中,我假设图形和图表应被视为子图形;如果情况并非如此,而两者都应被视为独立的图形,那么可以选择两个并排的小页面;该\captionof
命令可用于生成标题,并且figure
可以使用附加环境使整个布置浮动:
\documentclass{article}
\usepackage[demo]{graphicx}
\usepackage{caption}
\usepackage{pgfplots}
\pgfplotsset{width=3in}
\begin{document}
\begin{figure}
\begin{minipage}[b]{.5\textwidth}
\centering
\includegraphics{picture}
\captionof{figure}{A picture}
\end{minipage}%
\begin{minipage}[b]{.5\textwidth}
\centering
\begin{tikzpicture}[scale=0.8]
\begin{axis}
\addplot {x^2 * sin(x)};
\end{axis}
\end{tikzpicture}
\captionof{figure}{A plot}
\end{minipage}
\end{figure}
\end{document}
答案2
使用 TikZ 绘制非常简单的图表的简单示例:
\documentclass{article}
\usepackage{subfig}
\usepackage{tikz}
\begin{document}
\begin{figure}%
\centering
\subfloat[Your image]{\rule{30pt}{30pt}}\qquad
\subfloat[Your plot]{
\begin{tikzpicture}
\draw[gray, very thin] (0,0) grid (3,3);
\draw (0,0) node[below left] {0} -- ++(3,0) node [right] {x};
\draw (0,0) -- ++(0,3) node [above] {y};
\draw (0,0) -- (1,2) -- (3,3);
\end{tikzpicture}
}
\caption{Image next to plot}
\end{figure}
\end{document}
看起来像这样:
答案3
对于这种情况,一个简单的方法就tabular
可以解决问题。如果你想让你的图表有单独的标题,你可以使用\captionof
caption
包来插入它们。我使用了array
包来格式化表格单元格,使内容垂直居中。以下是示例:
\documentclass{article}
\usepackage[margin=1in]{geometry}
\usepackage[demo]{graphicx}
\usepackage{array}
\usepackage{caption}
\usepackage{pgfplots}
\pgfplotsset{width=3in}
\newcolumntype{M}[1]{>{\centering\arraybackslash}m{#1}}
\begin{document}
\begin{tabular}{M{2in}M{3in}}
\includegraphics{picture} &
\begin{tikzpicture}[]
\begin{axis}
\addplot {x^2 * sin(x)};
\end{axis}
\end{tikzpicture}\\
\captionof{figure}{A picture} & \captionof{figure}{A plot}
\end{tabular}
\end{document}