箭头和标签之间的间隙

箭头和标签之间的间隙

我对我的图表有疑问。如何增加箭头和标签之间的间隙?我希望左箭头和标签之间有更多空间 (2)。感谢您的任何建议。

\documentclass{amsart}
\usepackage{graphicx}
\usepackage[all]{xypic}

\begin{document}
     \begin{equation*}
    \begin{gathered}
    \quad
        \SelectTips{cm}{} \xymatrix@C=4.5em@R=4.5em{ A
       \ar@<-1ex>@{=>}[d] _-{(3)}\ar@<1ex>@{=>}[r]^-{(1)}  & B  
            \ar@<1ex>@{=>}|{{\object@{/}}}[l]^-{(2)}         \\
         C         \ar@<1ex>@{=>}[r] \ar@<-1ex>@{=>}[u] |{\object@{/}}|{}_-{\;(4)}   & D 
     \ar@<1ex>@{=>}[l] \ar@<-1ex>@{=>}[u]_{\;(5)} }
     \end{gathered}
     \end{equation*}
\end{document}

答案1

  1. @L=dimen您可以通过在 后添加 来全局修改标签的间距\xymatrix。在这种情况下,删除\;您在代码中插入的所有额外空格。例如:

    \documentclass{amsart}
    \usepackage{graphicx}
    \usepackage[all]{xy}
    
    \begin{document}
         \begin{equation*}
         \quad
            \SelectTips{cm}{} \xymatrix@L=6pt@C=4.5em@R=4.5em{ A
           \ar@<-1ex>@{=>}[d] _-{(3)}\ar@<1ex>@{=>}[r]^-{(1)}  & B
                \ar@<1ex>@{=>}|{{\object@{/}}}[l]^-{(2)}         \\
             C         \ar@<1ex>@{=>}[r] \ar@<-1ex>@{=>}[u] |{\object@{/}}|{}_-{(4)}   & D
         \ar@<1ex>@{=>}[l] \ar@<-1ex>@{=>}[u]_{(5)} }
         \end{equation*}
    \end{document} 
    

    在此处输入图片描述

  2. 您可以将单个标签视为对象来修改其间距,即用 替换^{...}^*modifiers{...}在您的例子中,您将需要修饰符+<dimen>,因此请^-{(2)}用类似 的内容替换^*+<1em>{^{(2)}}1em根据您的需要进行调整。 例如:

    \documentclass{amsart}
    \usepackage{graphicx}
    \usepackage[all]{xy}
    
    \begin{document}
         \begin{equation*}
         \quad
            \SelectTips{cm}{} \xymatrix@C=4.5em@R=4.5em{ A
           \ar@<-1ex>@{=>}[d] _-{(3)}\ar@<1ex>@{=>}[r]^-{(1)}  & B
                \ar@<1ex>@{=>}|{{\object@{/}}}[l]^*+<1em>{^{(2)}}         \\
             C         \ar@<1ex>@{=>}[r] \ar@<-1ex>@{=>}[u] |{\object@{/}}|{}_-{\;(4)}   & D
         \ar@<1ex>@{=>}[l] \ar@<-1ex>@{=>}[u]_-{\;(5)} }
         \end{equation*}
    \end{document} 
    

    在此处输入图片描述

答案2

可以使用该键@L=dimen更改标签的默认边距(请参阅这里)。我相信,删除手动添加的空格并添加@L=1.25ex大致可以达到您想要的结果。

但是,您可以根据需要更改尺寸。

\documentclass{amsart}
\usepackage{graphicx}
\usepackage[all]{xypic}

\begin{document}
     \begin{equation*}
    \begin{gathered}
    \quad
        \SelectTips{cm}{} \xymatrix@C=4.5em@R=4.5em@L=1.25ex{ A
       \ar@<-1ex>@{=>}[d] _-{(3)}\ar@<1ex>@{=>}[r]^-{(1)}  & B  
            \ar@<1ex>@{=>}|{{\object@{/}}}[l]^{(2)}         \\
         C         \ar@<1ex>@{=>}[r] \ar@<-1ex>@{=>}[u] |{\object@{/}}|{}_-{(4)}   & D 
     \ar@<1ex>@{=>}[l] \ar@<-1ex>@{=>}[u]_{(5)} }
     \end{gathered}
     \end{equation*}
\end{document}

在此处输入图片描述

答案3

通过另一种方法怎么样Tikz-cd?看起来很有希望。

箭头距离可以通过xshift=<dim>和改变yshift=<dim>

可以通过 来改变节点间隙inner sep=<dim>

标签距离可以通过 改变node [above, below, right, left=<dim>]{label}

在此处输入图片描述

代码

\documentclass[margin=10pt]{standalone}
%\usepackage[margin=1cm]{geometry}
\usepackage{tikz-cd}

\begin{document}

\begin{tikzcd}[row sep=3cm,column sep=3cm,inner sep=3ex]
A   \arrow[thick,Rightarrow,yshift=2ex,]{r}[above=0.5cm]{(1)}        
    \arrow[thick,Leftarrow, xshift=2ex]{d}[description,sloped]{/}[right=0.5cm]{(4)} 
& B \arrow[thick,Rightarrow,yshift=-2ex]{l}[below=0.5cm]{(2)}[description]{/} \\
C   \arrow[thick,Leftarrow, xshift=-2ex]{u}{(3)}   
    \arrow[thick,Leftarrow, yshift=2ex]{r}{}        
& D \arrow[thick,Leftarrow, yshift=-2ex]{l}{}         
    \arrow[thick,Rightarrow,xshift=2ex]{u}[right=0.5cm]{(5)} 
\end{tikzcd}


\end{document}

相关内容