화살표 사이의 tikz-cd 화살표가 비대칭입니다(한 방향으로 너무 짧음).

화살표 사이의 tikz-cd 화살표가 비대칭입니다(한 방향으로 너무 짧음).

화살표를 그리고 싶어요 () 두 화살표 사이(그리고) tikz-cd에 있으므로둘 다 직접적으로 접촉하고 있습니다그리고, 다음 다이어그램과 같습니다.

올바른 화살표

아래 코드는 이 다이어그램에서 합리적인 시도처럼 보이지만 비대칭입니다. 가운데 화살표가 아래쪽 화살표에 닿지 않습니다.

\documentclass{article}
\usepackage{tikz-cd}

\begin{document}

\begin{tikzcd}
    \bullet && \bullet
    \arrow[""{name=0}, from=1-1, to=1-3, bend left]
    \arrow[""{name=1}, from=1-1, to=1-3, bend right]
    \arrow[from=0, to=1]
\end{tikzcd}

\begin{tikzcd}
    \bullet && \bullet
    \arrow[""{name=0}, from=1-1, to=1-3, bend left]
    \arrow[""{name=1}, from=1-1, to=1-3, bend right]
    \arrow[from=1, to=0]
\end{tikzcd}

\end{document}

결과는 다음과 같습니다.

잘못된 화살표

(하단 예시는 비교를 위해 반대 방향의 가운데 화살표가 있습니다. 대상 화살표가 아닌 아래쪽 화살표가 문제임을 보여줍니다.)

왜 이런 일이 발생하며 어떻게 해결할 수 있나요?

참고로 저는 그렇습니다~ 아니다단순히 음수 길이의 가운데 화살표를 원합니다 shorten. 솔루션은 모든 화살표 쌍에서 작동해야 하며 가운데 화살표를 얼마나 줄여야 할지 추측할 필요가 없습니다. (또한 어떤 경우에는 가운데 화살표를 대칭적으로 짧게 하고 싶은데, 한 방향에 추가 조정을 적용해야 하는 경우 어색합니다.)

답변1

이는 아래쪽 화살표 위의 빈 레이블 텍스트로 인해 발생합니다. 화살표 아래의 레이블 텍스트를 조판 ""{name=1}하여 바꾸면 문제가 해결됩니다.""{name=1, below}

매뉴얼의 마지막 두 예를 참조하십시오.tikzcd . 2.3화살표의 절대 배치.

전체 예:

\documentclass{article}
\usepackage{tikz-cd}

\begin{document}

\begin{tikzcd}
    \bullet && \bullet
    \arrow[""{name=0}, from=1-1, to=1-3, bend left]
    \arrow[""{name=1, below}, from=1-1, to=1-3, bend right]
    \arrow[from=0, to=1]
\end{tikzcd}

\begin{tikzcd}
    \bullet && \bullet
    \arrow[""{name=0}, from=1-1, to=1-3, bend left]
    \arrow[""{name=1, below}, from=1-1, to=1-3, bend right]
    \arrow[from=1, to=0]
\end{tikzcd}

\end{document}

여기에 이미지 설명을 입력하세요

관련 정보