我tikzpicture
在数学环境中有一个附带说明的align
。tikzpicture
足够小,我希望说明出现在 旁边(具体来说,在 右侧)tikzpicture
。这是我的代码:
\begin{center}
\begin{tikzpicture}[xscale=.5, yscale=.5]
\draw [->,thick] (0,0) --(3,4) node [right] {$\bar{u}$};
\draw [->,thick] (0,0) --(5,0) node [below] {$\bar{v}$};
\draw [->,thick] (0,0) --(0,4) node [left] {$\bar{w}$};
\draw [->,thick] (0,0) --(3,0) node [below] {$Pr_{\bar{v}}\bar{u}$};
\draw [dashed] (3,0) --(3,4);
\draw [thin] (2.5,0) --(2.5,.5) --(3,.5);
\end{tikzpicture}
\end{center}
\begin{align*}
Pr_{\bar{v}}\bar{u} &= \frac{\langle\bar{u},\bar{v}\rangle}{\langle\bar{v},\bar{v}\rangle}\bar{v} = \lambda\bar{v} \\
\bar{w}+Pr_{\bar{v}}\bar{u} &= \bar{u}\\
\bar{w} &= \bar{u}-Pr_{\bar{v}}\bar{u} \\
\bar{w} &= \bar{u}-\lambda\bar{v}
\end{align*}
我尝试使用minipage
、multicols
和,wrapfig
但均未产生理想的结果。这可能是由于用户错误造成的,因为我对此还很陌生。
如果有人能够生产出接近标准的东西来解决这个问题(如果存在的话),那将会很有帮助。
答案1
不确定为什么minipage
对你不起作用:
笔记:
- 也许您的问题出在小页面顶部的垂直空间过多
align
。那么,可以使用以下解决方案来解决页面/小页面顶部的对齐环境上方存在虚假空间。
代码:
\documentclass{article}
\usepackage{amsmath,tikz}
\usepackage{etoolbox}
% https://tex.stackexchange.com/questions/36954/spurious-space-above-align-environment-at-top-of-page-minipage
\makeatletter
\pretocmd\start@align{%
\if@minipage\kern-\topskip\kern-\abovedisplayskip\fi
}{}{}
\makeatother
\begin{document}
\begin{minipage}{0.30\linewidth}
\begin{center}
\begin{tikzpicture}[xscale=.5, yscale=.5]
\draw [->,thick] (0,0) --(3,4) node [right] {$\bar{u}$};
\draw [->,thick] (0,0) --(5,0) node [below] {$\bar{v}$};
\draw [->,thick] (0,0) --(0,4) node [left] {$\bar{w}$};
\draw [->,thick] (0,0) --(3,0) node [below] {$Pr_{\bar{v}}\bar{u}$};
\draw [dashed] (3,0) --(3,4);
\draw [thin] (2.5,0) --(2.5,.5) --(3,.5);
\end{tikzpicture}
\end{center}
\end{minipage}%
\hfill%
\begin{minipage}{0.65\linewidth}
\begin{align*}
Pr_{\bar{v}}\bar{u} &= \frac{\langle\bar{u},\bar{v}\rangle}{\langle\bar{v},\bar{v}\rangle}\bar{v} = \lambda\bar{v} \\
\bar{w}+Pr_{\bar{v}}\bar{u} &= \bar{u}\\
\bar{w} &= \bar{u}-Pr_{\bar{v}}\bar{u} \\
\bar{w} &= \bar{u}-\lambda\bar{v}
\end{align*}
\end{minipage}%
\end{document}
另一个选择是将图片放置在一个varwidth
环境中,这样做的好处是您只需要调整包含内容的小页面的大小,align
从而可以控制数学内容的程度。
笔记:
- 即使
varwidth
环境具有长度规范,盒子也会根据其内容的自然宽度进行调整。 - 当然,您也可以将
varwidth
数学内容使用它,但是这样一来,您就没有太多灵活性将数学内容移近图片(除非您使用与默认间距不同的环境)align
。
代码:
\documentclass{article}
\usepackage{amsmath,tikz, varwidth}
\usepackage{etoolbox}
% https://tex.stackexchange.com/questions/36954/spurious-space-above-align-environment-at-top-of-page-minipage
\makeatletter
\pretocmd\start@align{%
\if@minipage\kern-\topskip\kern-\abovedisplayskip\fi
}{}{}
\makeatother
\begin{document}
\begin{varwidth}{\linewidth}
\begin{center}
\begin{tikzpicture}[xscale=.5, yscale=.5]
\draw [->,thick] (0,0) --(3,4) node [right] {$\bar{u}$};
\draw [->,thick] (0,0) --(5,0) node [below] {$\bar{v}$};
\draw [->,thick] (0,0) --(0,4) node [left] {$\bar{w}$};
\draw [->,thick] (0,0) --(3,0) node [below] {$Pr_{\bar{v}}\bar{u}$};
\draw [dashed] (3,0) --(3,4);
\draw [thin] (2.5,0) --(2.5,.5) --(3,.5);
\end{tikzpicture}
\end{center}
\end{varwidth}%
\begin{minipage}{0.5\linewidth}
\begin{align*}
Pr_{\bar{v}}\bar{u} &= \frac{\langle\bar{u},\bar{v}\rangle}{\langle\bar{v},\bar{v}\rangle}\bar{v} = \lambda\bar{v} \\
\bar{w}+Pr_{\bar{v}}\bar{u} &= \bar{u}\\
\bar{w} &= \bar{u}-Pr_{\bar{v}}\bar{u} \\
\bar{w} &= \bar{u}-\lambda\bar{v}
\end{align*}
\end{minipage}%
\end{document}