平均能量损失
\documentclass[12pt]{article}
\usepackage[a4paper,top=1 in,bottom=1 in,left=0.7 in,right=0.7 in]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[misc]{ifsym}
\usepackage{amsmath}
\usepackage{amsfonts}
\usepackage{mathtools}
\usepackage{amssymb}
\allowdisplaybreaks
\usepackage{kantlipsum}
\usepackage{forest}
\usepackage{tikz,tkz-euclide,xcolor,graphicx}
\usetkzobj{all}
\usetikzlibrary{intersections}
\begin{document}
\begin{minipage}[b]{.6\textwidth}
\begin{flalign*}
x^2-3x-10&=0&\\
\therefore\;\;x^2-5x+2x-10&=0&\\
\therefore\;\;x\left(x-5\right)+2\left(x-5\right)&=0&\\
\therefore\;\;\left(x-5\right)\left(x+2\right)&=0&\\
\therefore\;\;\left(x-5\right)&=0\quad \text{OR}\quad \left(x+2\right)=0&\\
\therefore\;\;x&=5\quad \text{OR}\quad x=-2&
\end{flalign*}
\end{minipage}\hfill
\begin{minipage}[t]{0.4\textwidth}
\begin{tikzpicture}[level distance=1.2cm,
level 1/.style={sibling distance=1.5cm},
level 2/.style={sibling distance=1cm}]
\tikzstyle{every node}=[circle,draw]
\node (Root) [black] {-10}
child {node {-5}}
child {node {2}};
\end{tikzpicture}
\end{minipage}
\end{document}
问题:如何将我的 tikz 图片垂直对齐到第一个方程的同一行?
答案1
您可以将图片作为对齐的一部分。在下面的代码中,我只留下了绝对必要的包。
\documentclass[12pt]{article}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{adjustbox}
\usepackage{tikz}
\newcommand{\thf}{\therefore\quad}
\begin{document}
\begin{alignat*}{2}
& x^2-3x-10=0
&\qquad&
\begin{adjustbox}{valign=t,set depth=0pt}
\begin{tikzpicture}[level distance=1.2cm,
level 1/.style={sibling distance=1.5cm},
level 2/.style={sibling distance=1cm}]
\tikzstyle{every node}=[circle,draw]
\node (Root) [black] {$-10$}
child {node {$-5$}}
child {node {$2$}};
\end{tikzpicture}
\end{adjustbox}
\\
\thf & x^2-5x+2x-10=0\\
\thf & x(x-5)+2(x-5)=0\\
\thf & (x-5)(x+2)=0\\
\thf & (x-5)=0\quad \text{or}\quad (x+2)=0\\
\thf & x=5 \quad \text{or}\quad x=-2
\end{alignat*}
\end{document}
需要注意的一些事项。
我删除了
\allowdisplaybreaks
一般情况下应避免的内容,除非我们处于写作阶段(此显示的中断将带来灾难性的后果)我删除了所有内容
\left
,\right
但这并没有什么好处,甚至有些坏处我选择根据“因此”符号进行对齐,而不是
=
看起来很不自然的对齐,特别是最后两行我把
\therefore
命令隐藏在宏中,这样你就可以自由地更改渲染\thf
,比如说,\Leftrightarrow
如果你想强调每一行与前一行完全等同
诀窍是使图片的高度与一行文本一样高valign=t
,但没有深度,所以 TeX 不会为它留出空间。
您可能想要增加圆的最小半径。
答案2
除了[b]
从第一个中删除位置说明符minipage
环境中删除位置说明符之外,你还应该
使用
aligned
环境而不是flalign*
环境来避免在方程组前插入垂直空格,插入
\noindent
在第一个之前立即minipage
,删除
\hfill
第一个小页面后的指令,并插入%
在之后立即插入(注释字符)\end{minipage}
,对带圈的数字使用数学模式,即写入
$-10$
,$-5
和$+2$
;删除所有
\left
和\right
尺寸说明:它们不会改变任何尺寸,但最终会插入不适当的水平空白。
\documentclass[12pt]{article}
\usepackage[a4paper,top=1 in,bottom=1 in,left=0.7 in,right=0.7 in]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[misc]{ifsym}
%%\usepackage{amsmath} % is loaded by 'mathtools' package
\usepackage{amsfonts}
\usepackage{mathtools}
\usepackage{amssymb}
\allowdisplaybreaks
\usepackage{kantlipsum}
\usepackage{forest}
\usepackage{tikz,tkz-euclide,xcolor,graphicx}
\usetkzobj{all}
\usetikzlibrary{intersections}
\begin{document}
\noindent % <--- don't forget this instruction
\begin{minipage}{.6\textwidth}
$\begin{aligned} % <--- 'aligned' rather than 'flalign*'
x^2-3x-10&=0\\ % omit the '&' chars at end of lines
\therefore\;\; x^2-5x+2x-10 &=0\\
\therefore\;\; x(x-5)+2(x-5)&=0\\
\therefore\;\; (x-5)(x+2) &=0\\
\therefore\;\; (x-5)&=0\quad \text{or}\quad (x+2)=0\\
\therefore\;\; x&=5\quad \text{or}\quad x=-2
\end{aligned}$
\end{minipage}% % <--- no \hfill
\begin{minipage}[t]{0.4\textwidth}
\begin{tikzpicture}[level distance=1.2cm,
level 1/.style={sibling distance=1.5cm},
level 2/.style={sibling distance=1cm}]
\tikzstyle{every node}=[circle,draw]
\node (Root) [black] {$-10$} % <--- math mode for circled numbers
child {node {$-5$}}
child {node {$+2$}};
\end{tikzpicture}
\end{minipage}
\end{document}