На следующей диаграмме я хотел бы, чтобы метка G^F
на пунктирной стрелке была расположена по центру:
Однако изменение, pos
похоже, не работает, поскольку, по-видимому, существует «скачок» между pos=0.41
и pos=0.42
.
Есть ли способ сделать метку центрированной? (На самом деле, мне интересно, почему она не центрирована по умолчанию или с помощью pos=0.5
)
Ниже приведен MWE.
\documentclass{article}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}
& A \\
C & \widehat{C}
\arrow["{F}", from=2-1, to=1-2]
\arrow["{Y}"', from=2-1, to=2-2]
\arrow["{N^F}"', "{\vdash}"{inner sep=.3ex}, from=1-2, to=2-2]
\arrow["{G^F}"'{pos=.41}, dashed, bend right, from=2-2, to=1-2]
\end{tikzcd}
\end{document}
решение1
Это проблема с изогнутыми стрелками, когда они очень короткие. Два предложения:
- Увеличьте
sep
так, чтобы узлы находились дальше друг от друга. - Уменьшите
bend
угол. Я использовалbend right=15
на диаграмме. (Тогда вам, вероятно, понадобитсяshift
и стрелка вправо.)
Вот код:
\documentclass{article}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}[sep=large]
& A \\
C & \widehat{C}
\arrow["F", from=2-1, to=1-2]
\arrow["Y"', from=2-1, to=2-2]
\arrow["N^F"', "{\vdash}"{inner sep=.3ex}, from=1-2, to=2-2]
\arrow["G^F"', dashed, bend right=15, shift right=1.5, from=2-2, to=1-2]
\end{tikzcd}
\end{document}