Take the 2-minute tour ×
TeX - LaTeX Stack Exchange is a question and answer site for users of TeX, LaTeX, ConTeXt, and related typesetting systems. It's 100% free, no registration required.

I want to enlarge a xy-diagram. Using the \invisible command, I got some strange spacing. That's why I decided to redraw the complete diagram using the \only and the \phantom command. But there is an arrow, which does not react on \phantom and which I need for correct spacing.

In my picture it is the arrow with label \Psi. How can I hide it?

Here is my - not so minimal - example:

\documentclass{beamer}  
\usetheme{Copenhagen}  
%Packages  
\usepackage{amsmath}  
\usepackage{amssymb,bbm,amsthm}  
\usepackage[ngerman]{babel}  
\usepackage[all,knot,color]{xy}  
\xyoption{arc}    
%Some personal commands, that should not matter  
\newcommand{\C}{\mathbbm{C}}  
\renewcommand{\H}{\mathbbm{H}}  
\newcommand{\Exp}{\operatorname{Exp}}  
\newcommand{\QL}[2]  
{{\left.\raisebox{-.1em}{\ensuremath{#1}}\middle\backslash\raisebox{.1em}{\ensuremath{#2}}\right.}}     
% Arrow for a bijective mapping  
\newcommand{\bijar}[1][]{%  
 \ar[#1]  
 \ar@<0.4ex>@{}[#1]|-*=0[@]{\sim}}   
\let\varpi\pi  
\newcommand{\ggruppe}{{<\!\! g \!\! >}}    
\begin{document}  
\begin{frame}   
\only<1>{\[  
\xymatrix@R=13pt@C=12pt{  
\H\times\C \ar @{>>} [rr]^{\Exp} \ar @{>>} [rd]_{\varpi_1}   
\ar @{>>}[dd]_{\varepsilon_N}&  & D^\times\times\C^\times  \\  
& \QL{G_1}{\H\times\C} \ar @{>>}[dl]^{\varepsilon_{N,1}} \bijar [ur]_-{\Phi_1}& &   {\phantom{\QL{\ggruppe}{D^\times\times\C^\times}}}  
\ar @/^5pc/ @{-->>} [dlll]^{\Psi}  \\  
E^0(N) & & {\phantom{\QL{G_2}{\H\times\C}}}   
}  
\]}  
\only<2>{\[  
\xymatrix@R=13pt@C=12pt{  
\H\times\C \ar @{>>} [rr]^{\Exp} \ar @{>>} [rd]_{\varpi_1}   
\ar @{>>}[dd]_{\varepsilon_N}&  & D^\times\times\C^\times \ar @{>>} [dr]_-{p_g} \\  
& \QL{G_1}{\H\times\C} \ar @{>>}[dl]^{\varepsilon_{N,1}} \ar @{>>} [dr]_{\varpi_2} \bijar [ur]_-{\Phi_1}& & \QL{\ggruppe}{D^\times\times\C^\times}   
\ar @/^5pc/ @{-->>} [dlll]^{\Psi}  \\  
E^0(N) & & \QL{G_2}{\H\times\C} \ar @{>>} [ll]^{\varepsilon_{N,2}} \bijar [ur]_{\Phi_2}  
}  
\]}  
\end{frame}  
\end{document}
share|improve this question
    
I'm reading your diagram. Why are you using the command \QL with raisebox? It's so ugly. –  Sigur Apr 30 '13 at 22:52
1  
@Sigur: Actually, I kind of like the effect that Greyfox achieves here for taking quotients on the left. Normally, when I see something typeset like G \ H x C, I find it confusing to translate this to "take H x C and mod out by G acting on the right." When something like this is handwritten, the G is often lowered slightly to emphasize that the "main noun of the noun phrase" is H x C. –  Charles Staats May 2 '13 at 12:49
    
@CharlesStaats This is exactly the idea of the raiseboxes. I just want to add, that it avoids a lot of brackets, since one should write G \ (H x C) for beeing exact - I usually have (G x Z)(H x C). Also I have a few double qoutients, e.g. I show that C(B\A) and (C\B)\A are isomorphic. When A,B,C are products I find it easier to read, if I have a fraction-like quotient. –  Greyfox May 2 '13 at 18:15
add comment

1 Answer

up vote 6 down vote accepted

I changed a little bit. For example, I inserted the \sim for bijection directly on the arrow.

Is it necessary to use that raise box for some commands? Also, why not use \langle \rangle instead of < >?

\begin{frame}[t] %% note the option [t] here
\only<1>{\[  
\xymatrix@R=13pt@C=12pt{  
\H\times\C \ar @{->>}[rr]^{\Exp} \ar@{->>}[rd]_{\varpi_1}\ar@{->>}[dd]_{\varepsilon_N} &  & D^\times\times\C^\times \ar@{->>}[dr]_-{p_g}  \\  
 & \QL{G_1}{\H\times\C}\ar@{->>}[dl]^{\varepsilon_{N,1}} \ar[ur]_-{\Phi_1}^{\sim}\ar[dr]_{\pi_2} & &  \QL{\ggruppe}{D^\times\times\C^\times} \\  
 E^0(N) & & \QL{G_2}{\H\times\C} \ar@{->>}[ll]^{\varepsilon_{N,2}} \ar[ur]_{\Phi_2}^{\sim}
}  
\]} 

\only<2->{\[  %% I changed the overlay specification here
\xymatrix@R=13pt@C=12pt{  
\H\times\C \ar @{->>}[rr]^{\Exp} \ar@{->>}[rd]_{\varpi_1}\ar@{->>}[dd]_{\varepsilon_N} &  & D^\times\times\C^\times \ar@{->>}[dr]_-{p_g}  \\  
 & \QL{G_1}{\H\times\C}\ar@{->>}[dl]^{\varepsilon_{N,1}} \ar[ur]_-{\Phi_1}^{\sim}\ar[dr]_{\pi_2} & &  \QL{\ggruppe}{D^\times\times\C^\times} \ar @/^5pc/ @{-->>} [dlll]^{\Psi} \\  
 E^0(N) & & \QL{G_2}{\H\times\C} \ar@{->>}[ll]^{\varepsilon_{N,2}} \ar[ur]_{\Phi_2}^{\sim} 
}
\]}  

\only<3->{text to appear starting from 3rd slide}
\end{frame}  

enter image description here

share|improve this answer
    
As far as I see, you just left the arrow away in the first diagram. As a result the diagram needs less space. When I add the arrow in the second diagram, LaTeX moves the position a bit, especialy if I have text above the diagram. I search for a way to "phantomise" the arrow first, so that the first part of the diagram stays exactly, where it is and the second part just appears later. I tried \phantom{\ar ...}, but without any success. –  Greyfox May 1 '13 at 17:08
    
Thx for the advice of using \langle. When I found out about these commands I changed them nearly everywhere in my files. Obviously I forgot here. –  Greyfox May 1 '13 at 17:10
    
@Greyfox, yes, you are right. I had noticed that. In this case, I suggest you to use a frame only for the diagram and use an option to vertical align on the top, that is, \begin{frame}[t]. –  Sigur May 2 '13 at 12:28
    
@Greyfox, please, see the edited code above. –  Sigur May 2 '13 at 12:32
1  
Now, I understand and I can do, as you wrote. Actually in my case, there is text above the diagram. But your solution should still work, I think. Until now, I solved the problem in an ugly way, by adding a vspace below the diagram, which I adjusted by hand. Thx a lot, for your ideas! –  Greyfox May 2 '13 at 18:19
add comment

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.