Estoy creando una presentación con la beamer
clase. Supongamos que quiero escribir esto:
\begin{equation}
f(x)
\only<1>{= \cos(x)}
\only<2>{= 2\cos(x)}
\end{equation}
Tengo un problema porque en la diapositiva 2, la ecuación es más larga y por lo tanto la ecuación se está moviendo. Si lo reemplazo only
por uncover
, hay un espacio en blanco en la diapositiva 2.
Tengo el mismo problema con el align
medio ambiente.
\begin{align}
f(x) &= \exp(x)\\
\only<2>{&= \cos(x)}
\only<3>{&= 2\cos(x)}
\end{align}
¿Cómo puedo reemplazar parte de una ecuación por otra cosa sin cambiar la ubicación de la otra parte de la ecuación?
Editar
Seré más preciso. Me gustaría encontrar una manera eficiente de reemplazar el lado derecho de una igualdad (para equation
o align
) sin agregar espacios en blanco adicionales y de manera que mantenga el signo igual en el mismo lugar.
Por ejemplo :
\begin{equation}
\cos(x) =
\somecommand<1>{\dfrac{\exp{ix}+\exp{-ix}}{2}}
\somecommand<2>{\sum_{n=0}^{\infty}\dfrac{(-1)^{n}}{2n+1}x^{2n+1}}
...
\somecommand<n>{some other equality with a given lenght}
\end{equation}
- Si
\somecommand
es\only
así, toda la igualdad pasará de la diapositiva 1 a la 2. - Si
\somecommand
es\uncover
así, habrá un espacio en blanco entre el signo igual y la expansión de Taylor en la diapositiva 2. - Usar
\hphantom
con\alt
o\temporal
podría ser una solución, pero parece muy complicado usarlo para más de dos diapositivas.
Respuesta1
Hay varias formas de hacer esto. Aquí hay uno, que se usa \phantom{<stuff>}
para rellenar lo que falta <stuff>
en la ecuación más corta:
\documentclass{beamer}
\usepackage{amsmath}
\begin{document}
\begin{frame}
\frametitle{A frame}
\begin{equation}
f(x) =
\only<1>{\cos(x)\phantom{2}}
\only<2>{2\cos(x)}
\end{equation}
\end{frame}
\end{document}
La ubicación del \phantom{<stuff>}
depende de cómo desee examinar el contenido. Por ejemplo, también puedes intentar
f(x) = \alt<2>{2}{\phantom{2}}\cos(x)
Véase también \temporal
en elbeamer
documentación.
Para construcciones más grandes, la mejor oferta que puedo hacer es identificar el elemento más grande (horizontal y verticalmente) en el conjunto de ecuaciones y almacenarlos en una macro y usar otra macro como ajuste de espacio:
\documentclass{beamer}
\usepackage{amsmath}
\newcommand{\inserteqstrut}[1]{%
\rlap{$\displaystyle#1$}%
\phantom{\biggesteq}}
\begin{document}
% Store biggest equation in set
\newcommand{\biggesteq}{\sum_{n=0}^{\infty}\dfrac{(-1)^{n}}{2n+1}x^{2n+1}}
\begin{frame}
\frametitle{A frame}
\begin{equation}
\cos(x) =
\only<1>{\inserteqstrut{\dfrac{\exp{ix}+\exp{-ix}}{2}}}
\only<2>{\inserteqstrut{\biggesteq}}
\only<3>{\inserteqstrut{\text{some equality}}}
\end{equation}
\end{frame}
\end{document}
Si tiene dos ecuaciones separadas que forman la "más grande", use una combinación de \vphantom
(para la más alta/más profunda) y \hphantom
(para la más ancha/larga). He aquí un ejemplo de este tipo:
\documentclass{beamer}
\usepackage{amsmath}
\newcommand{\inserteqstrut}[1]{%
\rlap{$\displaystyle#1$}%
\phantom{\biggesteq}}
\begin{document}
% Store biggest equation in set
\newcommand{\biggesteq}{%
\vphantom{\sum_{n=0}^{\infty}n}% tallest/deepest
\hphantom{\text{some other equality}}}% longest/widest
\begin{frame}
\frametitle{A frame}
\begin{equation}
\cos(x) =
\only<1>{\inserteqstrut{\tfrac{\exp{ix}+\exp{-ix}}{2}}}
\only<2>{\inserteqstrut{\sum_{n=0}^{\infty}n}}
\only<3>{\inserteqstrut{\text{some other equality}}}
\end{equation}
\end{frame}
\end{document}
Respuesta2
Aunque la solución de Werner es claramente más limpia, encuentro que a veces una solución rápida y sucia es simplemente insertar un espacio adicional en una de las superposiciones alternativas. Por ejemplo utilicé este código:
\frame{
\frametitle{What: the Perron method}
We split coordinates $x = (x_+, x_-)$%
\uncover<2->{, change the initial time $t_0$ in the unstable part}
\uncover<3->{and let $t_0 \to \infty$}
\begin{alignat*}{2}
x_+(t) &\mapsto
\only<1 |handout:0>{e^{t\,A_+} \cdot x_+(0)\hspace{0.86cm}}
\only<2-3|handout:0>{e^{(t-\alert{t_0})\,A_+} \cdot x_+(\alert{t_0})}
\only<4- >{\qquad\alert{\ldots}\hspace{1.59cm}}
&& \only< -3|handout:0>{+}
\only<4- >{-\,}
\int_{\only<1 |handout:0>{0}
\only<2-3|handout:0>{\alert{\smash{t_0}}\!\!}
\only<4- >{t}}
^{\only<1-3|handout:0>{\smash{t}}
\only<4- >{\alert{\smash{\infty}}}\!\!\!\!}
e^{(t-\tau)\,A_+} \cdot r_+((x_+,x_-)(\tau)) \d\tau,\\
x_-(t) &\mapsto
e^{t\,A_-} \cdot x_-(0)
&&+\int_{0\,}^t e^{(t-\tau)\,A_-} \cdot r_-((x_+,x_-)(\tau)) \d\tau.
\end{alignat*}
\uncover<3->{%
We consider this rewritten map $T$ for bounded curves
$x \in B(\R;\R^n)$ only.
}
}
para crear la diapositiva 7 deesta presentación proyector.
Respuesta3
Finalmente resolví mi problema usando esta solución (sé que no concuerda con mi pregunta porque quería usar equation
o align
)
\documentclass{beamer}
\usepackage{amsmath,amssymb}
\renewcommand*{\a}[1]{\hat a_{#1}^{\vphantom{\dagger}}}
\newcommand*{\ad}[1]{\hat a_{#1}^{\dagger}}
\renewcommand*{\c}[1]{\hat{c}_{#1}^{\vphantom{\dagger}}}
\newcommand*{\cd}[1]{\hat{c}_{#1}^{\dagger}}
\renewcommand*{\H}{\hat{H}}
\newcommand*{\T}{\hat{T}}
\newcommand*{\dsum}[1]{\displaystyle\sum_{#1}}
\newcommand*{\dsumd}[3]{\displaystyle\sum_{#1=#2}^{#3}}
\newcommand*{\dprod}[1]{\displaystyle\prod_{#1}}
\newcommand*{\dprodd}[3]{\displaystyle\prod_{#1=#2}^{#3}}
\newcommand*{\dbigotimesd}[3]{\displaystyle\bigotimes_{#1=#2}^{#3}}
\newcommand*{\dbigoplusd}[3]{\displaystyle\bigoplus_{#1=#2}^{#3}}
\newcommand*{\ket}[1]{\left|#1\right>}
\newcommand*{\ep}[1]{\left(#1\right)}
\renewcommand*{\vec}[1]{\mathbf{#1}}
\renewcommand*{\det}[1]{\mathrm{det}\ep{#1}}
\begin{document}
\begin{frame}
\begin{minipage}[h]{0.4\linewidth}
$
\T
\only<1>{= \dbigoplusd{\alpha}{1}{N}\hat{T}_{\alpha}}
\only<2-3>{= \dbigoplusd{\alpha}{1}{N}\hat{\vec{a}}^{\dagger}_{\alpha}T\hat{\vec{a}}^{\vphantom{\dagger}}_{\alpha}}
\only<4->{= \dbigoplusd{\alpha}{1}{N}\dsumd{i}{1}{n}\omega_{i\alpha}\cd{i\alpha}\c{i\alpha}}
$
\end{minipage}
\hfill
\begin{minipage}[h]{0.5\linewidth}
\uncover<3->{
\begin{align*}
\cd{i\alpha} &= \dsumd{j}{1}{n}U_{ji}^{\alpha}\ad{j\alpha} &
\omega_{i\alpha} &< \omega_{i+1\alpha}
\end{align*}
}
\end{minipage}
\uncover<5->{
$
\uncover<6->{\ket{\Psi_{G}}= }
\only<5->{\uncover<6->{\hat{P}_{G}^{m}}\ket{\Psi}}
\uncover<5->{=\uncover<6->{\hat{P}_{G}^{m}}\dbigotimesd{\alpha}{1}{N}\dprodd{i}{1}{mn/N}\alt<5-6>{\c{i\alpha}}{\dsumd{j}{1}{n}U_{ji}^{\alpha}\ad{j\alpha}}\ket{0}}
\only<10->{\equiv \dsum{\mathcal{C}}\det{U_{\mathcal{C}}}\ket{\mathcal{C}}}
$
}
\begin{center}
\uncover<8->{
$
\ket{\mathcal{C}} \equiv \dbigotimesd{\alpha}{1}{N}\dprodd{i}{1}{mn/N}\ad{i_{\alpha}\alpha}\ket{0}
$
}
\uncover<9->{
$
\dsumd{\alpha}{1}{N}\ad{i\alpha}\a{i\alpha}\ket{\mathcal{C}} = m
\qquad
\dsumd{i}{1}{n}\ad{i\alpha}\a{i\alpha}\ket{\mathcal{C}} = \dsumd{i}{1}{n}\ad{i\beta}\a{i\beta}\ket{\mathcal{C}}
$
}
\end{center}
\end{frame}
\end{document}
Espero que esto pueda ayudar a alguien más...