Quiero escribir algo así como una tabla con estados y las ecuaciones correspondientes, pero se supone que las ecuaciones están alineadas, como se ve en la imagen.
Lamentablemente todavía no he encontrado una solución. Ya intenté alinear pero el texto no está centrado. Ese es el código que probé:
\begin{align*}
\textit{State} && \textit{Rate leave} &= \textit{rate enter} \\
(0,0) && \lambda P_{0,0} &= \sum\limits_{n=1}^{\infty} \mu_n P_{0,n} \\
(0,n), n > 0 && (\lambda + \mu_n)P_{0,n} &= \sum\limits_{m=1}^{\infty} \mu_m P_{n,m} \\
(m,n), mn > 0 && (\lambda + \mu_n)P_{m,n} &= \lambda P_{m-1,n}
\end{align*}
¿Alguien tiene una idea de qué debo usar para centrar el texto?
Respuesta1
Yo también usaría un array
, pero simplifico el encabezado quitándolo qquad
e insertándolo @{{}={}}
. Además, agrego \renewcommand{\arraystretch}{1.3}
para mejorar el interlineado. Y estoy de acuerdo con @Sebastiano en que usar text
es mejor.
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[
\renewcommand{\arraystretch}{1.3}
\begin{array} {c r @{{}={}} l}
\text{State} & \text{Rate leave} & \text{rate enter} \\
(0,0) & \lambda P_{0,0} & \sum_{n=1}^{\infty} \mu_n P_{0,n} \\
(0,n),\ n > 0 & (\lambda + \mu_n)P_{0,n} & \sum_{m=1}^{\infty} \mu_m P_{n,m} \\
(m,n),\ mn > 0 & \quad(\lambda + \mu_n)P_{m,n} & \lambda P_{m-1,n}
\end{array}
\]
\end{document}
Respuesta2
Utilice array
, con un pequeño truco para conseguir el espaciado correcto (no, el espaciado correcto no es \,
).
\documentclass{article}
\usepackage{amsmath,array}
\begin{document}
\begin{equation*}
\begin{array}{@{} c @{\qquad} r @{} >{{}}l @{}}
\textit{State} & \textit{Rate leave} &= \textit{rate enter} \\[1ex]
(0,0) & \lambda P_{0,0} &= \sum_{n=1}^{\infty} \mu_n P_{0,n} \\[1ex]
(0,n),\ n > 0 & (\lambda + \mu_n)P_{0,n} &= \sum_{m=1}^{\infty} \mu_m P_{n,m} \\[1ex]
(m,n),\ mn > 0 & (\lambda + \mu_n)P_{m,n} &= \lambda P_{m-1,n}
\end{array}
\end{equation*}
\end{document}
Lo evitaría \limits
, eso desequilibrará todo.
Respuesta3
Otra solución, con entornos ay gathered
an aligned
, junto con un par de \vphantom{\sum...}
:
\documentclass{article}
\usepackage{amsmath}
\begin{document}
\[
\begin{gathered}[t]
\textit{State} \\
\vphantom{\sum\nolimits_{n=1}^{\infty}}(0,0)\\
\vphantom{\sum\nolimits_{n=1}^{\infty}}(0,n), n > 0 \\
(m,n), mn > 0
\end{gathered}
\hspace{4em}
\begin{aligned}[t]
\textit{Rate leave} &= \textit{rate enter} \\
\lambda P_{0,0} &= \sum\nolimits_{n=1}^{\infty} \mu_n P_{0,n} \\
(\lambda + \mu_n)P_{0,n} &= \sum\nolimits_{m=1}^{\infty} \mu_m P_{n,m} \\
\lambda + \mu_n)P_{m,n} &= \lambda P_{m-1,n}
\end{aligned}
\]
\vskip 4ex
\[
\begin{gathered}[t]
\textit{State} \\
\vphantom{\sum_{n=1}^{\infty}}(0,0)\\
\vphantom{\sum_{n=1}^{\infty}}(0,n), n > 0 \\
(m,n), mn > 0
\end{gathered}
\hspace{4em}
\begin{aligned}[t]
\textit{Rate leave} &= \textit{rate enter} \\
\lambda P_{0,0} &= \sum_{n=1}^{\infty} \mu_n P_{0,n} \\
(\lambda + \mu_n)P_{0,n} &= \sum_{m=1}^{\infty} \mu_m P_{n,m} \\
\lambda + \mu_n)P_{m,n} &= \lambda P_{m-1,n}
\end{aligned}
\]
\end{document}
Respuesta4
Si quieres seguir align
,eqparbox
's \eqmakebox[<tag>][<align>]{<stuff>}
alinea todo <stuff>
con lo mismo <tag>
en el centro. Puede cambiar el <align>
ment para que sea l
izquierda, c
entre (predeterminado) o r
derecha.
\documentclass{article}
\usepackage{amsmath,eqparbox}
\begin{document}
\begin{align*}
\eqmakebox[LHS]{ \textit{State} } && \textit{Rate leave} &= \textit{rate enter} \\[1ex]
\eqmakebox[LHS]{$ (0, 0) $} && \lambda P_{0, 0} &= \textstyle\sum_{n = 1}^\infty \mu_n P_{0, n} \\
\eqmakebox[LHS]{$ (0, n), n > 0 $} && (\lambda + \mu_n) P_{0, n} &= \textstyle\sum_{m = 1}^\infty \mu_m P_{n, m} \\
\eqmakebox[LHS]{$(m, n), m n > 0$} && (\lambda + \mu_n) P_{m, n} &= \lambda P_{m - 1, n}
\end{align*}
\end{document}
Dado que eqparbox
las macros utilizan el archivo auxiliar para almacenar anchos máximos relacionados con a <tag>
, tendrás que compilar al menos dos veces con cada cambio en el contenido de <stuff>
.