xypic, xymatrix, выравнивание записей в столбце

xypic, xymatrix, выравнивание записей в столбце

Я работаю со следующим кодом:

\documentclass[12pt,letterpaper]{article}
\usepackage[all]{xy}
\begin{document}

\[
\xymatrix
{
                &   A \ar[dd]_{\pi_A}                                   \\
                &   &   **[r] G(A) = G(B)=Z\oplus Z\oplus Z\oplus Z     \\
**[l] 4\beta+ f(\beta) + g(\beta) = &   B \ar[dd]_{\pi_B}               \\
                &   &   **[r] F(B) = F(C)                               \\
**[l] \gamma=   &   C
}
\]
\end{document}

Этот код создает следующую диаграмму:

введите описание изображения здесь

Выглядит довольно хорошо, за исключением того, что я хотел бы, чтобы крайняя левая колонка была намного ближе, почти касалась центральной, а крайняя правая колонка была намного ближе, но, может быть, на расстоянии около дюйма от центральной.

Если я изменю строку \xymatrixна \xymatrix@C=-45pt, то получу что-то довольно хорошее, но это решение кажется мне слишком спонтанным. Я думаю, что проблема в том, что выравнивание столбцов сохраняет центральную линию столбца и ширину столбцов одинаковой, а записи выравниваются по правому (или левому) краю вдоль этой центральной линии, а не по правому (или левому) краю в пространстве, отведенном для столбца.

решение1

Будет ли так лучше?

\[
\hphantom{4\beta+ f(\beta) + g(\beta) ={}}
\xymatrix@R+1pc
{
A \ar[d]_{\pi_A}^{\qquad\textstyle G(A) = G(B)=Z\oplus Z\oplus Z\oplus Z} \\
\llap{$4\beta+ f(\beta) + g(\beta) ={}$}B \ar[d]_{\pi_B}^{\qquad\textstyle F(B) = F(C)} \\
\llap{$\gamma={}$}C
}
\]

введите описание изображения здесь

Связанный контент