在 LaTeX 中可以实现这样的事情吗?
我想要一个从第一行指向另一行的弯曲箭头,并附上一个表示所用方程的方程编号。我希望能够手动指定使用的方程,例如\eqref{2.10}
。
我对 TikZ 进行了一些学习,并发现了一些看起来像解决方案的东西:
\begin{tikzpicture}
\path (0,1) coordinate(c1)
(-0.5,0.85) coordinate(c2)
(-0.5,0.15) coordinate(c3)
(0,0) coordinate(c4)
(-1,0.5) coordinate(c5);
\draw [-latex] (c1) .. controls (c2) and (c3)
.. (c4);
\draw (c5) node [anchor=east] {\text{\eqref{2.10}}};
\end{tikzpicture}
这会产生一个可爱的箭头(如下图所示),我不知道如何将其放在等式的两行左侧。请有人给我一些建议。
附加问题:
如果方程式行分离得更多或更少,这个箭头是否可以动态改变坐标 c1、c2、c4 和 c4?
答案1
这只是 PSTricks 的另一个建议。
\documentclass[preview,border=12pt,leqno,varwidth]{standalone}
\usepackage{pst-node}
\usepackage{amsmath}
\begin{document}
\begin{align}
\rnode[l]{A}{y} &= ax^2 +bx +c\\
\rnode[l]{B}{y} &= mx +c
\pcbar[angle=180,nodesep=3pt,linearc=3pt,linecolor=blue]{->}(A)(B)
\end{align}
\end{document}
答案2
如果方程的长度相同,则下面的代码可以正常工作。
与空列一起使用xymatrix
来产生箭头。
\begin{equation}
\begin{gathered}
\xymatrix@R=1ex@C=-2pt{
\ar@/_7pt/[d] & \hat{H}= -\frac{num}{den}\cdots\\
& \hat{H}= -\frac{num}{den}\cdots}
\end{gathered}
\end{equation}
控制@R=
行与列之间的距离。 控制列与行之间的距离。
控制@/_7pt/
箭头的曲率。_
是向下弯曲(从上到下)。
答案3
开玩笑的解决方案:从 中撕下角色MnSymbol
,然后将其放大:
\documentclass[leqno]{article}
\usepackage{graphicx}
\usepackage{amsmath}
\DeclareFontFamily{U}{MnSymbolA}{}
\DeclareSymbolFont{MnSyA}{U}{MnSymbolA}{m}{n}
\DeclareFontShape{U}{MnSymbolA}{m}{n}{
<-6> MnSymbolA5
<6-7> MnSymbolA6
<7-8> MnSymbolA7
<8-9> MnSymbolA8
<9-10> MnSymbolA9
<10-12> MnSymbolA10
<12-> MnSymbolA12}{}
\DeclareMathSymbol{\rcurvearrowdown}{\mathrel}{MnSyA}{195}
\newcommand{\follows}{\raisebox{-6pt}{\scalebox{3}{$\rcurvearrowdown$}}}
\begin{document}
\begin{equation}\tag{2.10}
\follows\quad
\begin{aligned}
\widehat{H} & = - \frac{\hbar^2}{2m} \frac{d^2}{x^2} + \frac{1}{2} m \omega^2 x^2 \\
\widehat{H} & = - \frac{\hbar^2}{2m} \frac{d^2}{x^2} + \frac{1}{2} m \omega^2 x^2
\end{aligned}
\end{equation}
\end{document}
答案4
使用 tikz,您可以使用 tkz-linknodes。
margin=11cm
由文档的右边距决定。
\documentclass[preview,border=12pt,leqno,varwidth]{standalone}
\usepackage{tkz-linknodes}
\usepackage{amsmath}
\begin{document}
\begin{NodesList}
\begin{align}
y &= ax^2 +bx +c\AddNode\\
y &= mx +c \AddNode
\tikzset{ArrowStyle/.append style = {blue,rounded corners=.25cm}}
\LinkNodes[margin=11cm]{}%
\end{align}
\end{NodesList}
\end{document}
一个更复杂的例子
\documentclass{article}
\usepackage{tkz-linknodes}
\usepackage{amsmath}
\begin{document}
\begin{minipage}{11cm}
{\renewcommand{\arraystretch}{2}%
\begin{NodesList}
\[y = \left\{%
\begin{array}{ll}
x^2+2x &\textrm{if }x<0, \AddNode \\
x^3 &\textrm{if }0\le x<1, \AddNode[2]\\
x^2+x &\textrm{if }1\le x<2, \AddNode \\
x^3-x^2 &\textrm{if }2\le x. \AddNode[2]
\end{array}\right.\]
\tikzset{ArrowStyle/.append style = {<->,red,rounded corners=.25cm}}
\tikzset{LabelStyle/.append style = {pos=0.20}}
\LinkNodes[margin=3cm]{Degree 2 - quadratic}
{\tikzset{ArrowStyle/.append style = {<->,blue,rounded corners=.25cm}}
\LinkNodes[margin=1cm]{Degree 3 - cubic}}
\end{NodesList}}
\end{minipage}
\end{document}