
Estou tentando adicionar setas às expressões matemáticas (especialmente dentro dos limites) para observar que há um valor atribuído a determinado termo ao resolver um limite. Encontrei o pacote cancel e seu comando \cancelto{}{} mas tenho 2 problemas com ele: 1. Ele atravessa o termo como se o estivesse cancelando (obviamente) 2. Ele só sobe (para cima, mas o parte direita não me incomoda), enquanto posso precisar que ela diminua quando estou mostrando uma tendência no denominador de uma fração.
Pesquisando aqui encontrei um comando customizado que meio que faz o trabalho (modifiquei um pouco), e comecei a funcionar, infelizmente funciona na metade das vezes. A outra metade apenas desorganiza todas as linhas de base dos outros elementos da equação. Vou deixar para vocês o código dos comandos (que, novamente, não é meu crédito) e um erro que estou tendo na esperança de que alguém possa me ajudar. Ainda estou aprendendo Tikz, então não consigo resolver sozinho, embora suspeite que aí esteja a resposta para o meu problema.
O código modificado por mim:
\usetikzlibrary{calc}
\newcommand*\canc[1]{%
\mathchoice
{\scriptstyle#1}
{\scriptstyle#1}
{\scriptscriptstyle#1}
{\scriptscriptstyle#1}
}
\newcommand*\dtendto[2][0]{%
\kern9pt%
\begin{tikzpicture}[baseline=(current bounding box.center).anchor=east]
\node[anchor=east] (a) {$#2$};
\draw[->, color = red] ($(a.south)$) -- ($(a.south)-(-4pt,8pt)$) node
at ($(a.south)-(-8pt,12pt)$) {$\canc{#1}$};
\end{tikzpicture}
}
\newcommand*\utendto[2][0]{%
\kern9pt%
\begin{tikzpicture}[baseline=(current bounding box.south).anchor=east]
\node[anchor=east] (a) {$#2$};
\draw[->, color = red] ($(a.north)$) -- ($(a.north)+(4pt,8pt)$) node
at ($(a.north)+(8pt,12pt)$) {$\canc{#1}$};
\end{tikzpicture}
}
A parte em que estou tendo problemas (já tive partes anteriores em que isso funcionou, mas certamente um código correto ainda funcionaria nelas).
\lim_{x\to\infty} \frac{\bcancel{x^5}\cdot(\utendto[2]{2}
-\utendto[0]{\frac{3}{x^2}} +
\utendto[0]{\frac{2}{x^4}})}{\bcancel{x^5}\cdot\left(4 + \frac{5}{x}
-\frac{100}{x^5}\right)}
E um instantâneo de como ela é exibida, observe que o que eu gostaria que acontecesse é que as setas fossem adicionadas no topo, como se a equação nem soubesse que elas estão lá. Agora parece que está respondendo ao que adiciono tentando centralizar os sinais + e - (até mesmo os parênteses se eu usar \left( e \right) ) distorcendo uma aparência normal.
E aqui está uma versão photoshopada de como eu gostaria que fosse:
Basicamente, o que eu quero é que a equação ignore as setas e seja escrita como se elas não estivessem lá (exceto, é claro, que o espaçamento vertical não seja sobreposto a outras linhas ou equações na parte superior ou inferior).
Consegui criar um novo comando chamado \dtendto[]{} que faz o mesmo exceto que a seta vai para sudeste em vez de nordeste mas acho que a solução é a mesma para ambos para não deixar o post mais longo omiti .
Desde já, obrigado,
Responder1
Observações
Eu adicionei inner xsep=0pt
e outer sep=0pt
também limitei a caixa delimitadora.
Na minha edição, me livrei da calc
biblioteca, pois ela não é realmente necessária. Além disso, defino inner sep=0pt
os nós e shorten <=.3333em
as setas, para preservar o espaçamento entre o dígito e a seta, enquanto cancelo o espaço extra abaixo do dígito.
Substituí todos os valores por unidades escalonáveis ( ex
e em
).
Além disso, você não precisa da \canc
macro, pois ela sempre será o padrão \scriptstyle
em sua implementação.
Implementação
\documentclass{article}
\pagestyle{empty}
\usepackage{tikz,cancel}
\renewcommand{\CancelColor}{\color{red}}
\newcommand*\dtendto[2][0]{%
\begin{tikzpicture}[baseline=(a.base),every node/.style={inner sep=0pt,outer sep=0pt}]
\node (a) {$#2$};
\path[red] (a.south) node (b) at +(0.5em,-3ex) {$\scriptstyle #1$};
\draw[->,red,shorten <=.3333em,shorten >=.3333em] (a) -- (b);
\pgfresetboundingbox
\path[use as bounding box] (a.north west) rectangle (a.south east |- b.south);
\end{tikzpicture}
}
\newcommand*\utendto[2][0]{%
\begin{tikzpicture}[baseline=(a.base),every node/.style={inner sep=0pt,outer sep=0pt}]
\node (a) {$#2$};
\path[red] (a.north) node (b) at +(0.5em,3ex) {$\scriptstyle #1$};
\draw[->,red,shorten <=.3333em,shorten >=.3333em] (a) -- (b);
\pgfresetboundingbox
\path[use as bounding box] (a.south west) rectangle (a.north east |- b.north);
\end{tikzpicture}
}
\begin{document}
\fbox{
$\displaystyle
\lim_{x\to\infty} \frac{\bcancel{x^5}\cdot(\utendto[2]{2}
-\utendto[0]{\frac{3}{x^2}} +
\utendto[0]{\frac{2}{x^4}})}{\bcancel{x^5}\cdot\left(\dtendto[4]{4} + \frac{5}{x}
-\frac{100}{x^5}\right)}
$
}
\end{document}
Saída
Na saída real, as caixas delimitadoras não serão destacadas. Eu apenas os colori de verde para fins ilustrativos.