外侧有向上箭头的交换图

外侧有向上箭头的交换图

我有以下代码:

\documentclass[a4paper, 12pt]{article}
\usepackage{amsmath, amstext,  amssymb, amsfonts, amsthm, euscript}
\usepackage{tikz-cd}
\usetikzlibrary{babel}

\begin{document}
\[\begin{tikzcd}
  TM \ar[r, "{\rm d}f"] \ar[d, "\pi"] & TN \ar[d, "\pi"] \\ M \ar[ur, shift right = .25ex, "{\rm d}f \circ X"]  \ar[ur, shift left = .25ex, "Y \circ f"]  \ar[r, "f"]  \ar[u, bend left = 50, "X"]  & N \ar[u, bend right = 50, "Y"]
\end{tikzcd}\]
\end{document}

生成结果:

在此处输入图片描述

我对此了解甚少tikz-cd,只能画简单的三角形和正方形图。我想要:

  • 更大的图表,所有内容的间距都更大,箭头更长一些,等等;
  • 标记的两个对角箭头,分别为上面的 X 和下面的 Y;
  • 最右边箭头中的标签 Y 位于右侧,而不是左侧。

我浏览了一下网站,想找一个类似的图表,但什么也没找到。我只能得到图片中的内容,但我不知道该怎么做。有人能帮我吗?谢谢。

答案1

您可以增加column seprow sep;标签位置可以从箭头左侧的默认位置进行交换。

您不需要加载amstextamsmath是否这样做)和amsfontsamssymb是否这样做)。

此外,该{\rm d}语法已被弃用二十多年。使用\diffas defined 也会在适当的位置留出一个较短的空格。

\documentclass[a4paper, 12pt]{article}
\usepackage{amsmath, amssymb, amsthm, euscript}
\usepackage{tikz-cd}
\usetikzlibrary{babel}

\newcommand{\diff}{\mathop{}\!\mathrm{d}}

\begin{document}

\[
\begin{tikzcd}[column sep=4em,row sep=4em]
  TM \ar[r, "\diff f"] \ar[d, swap, "\pi"] & TN \ar[d, "\pi"] \\
  M
  \ar[ur, shift right = .75ex, swap, "\diff f \circ X"]
  \ar[ur, shift left = .75ex,  "Y \circ f"]  \ar[r, "f"]
  \ar[u, bend left = 50, "X"] &
  N \ar[u, bend right = 50, swap, "Y"]
\end{tikzcd}
\]

\end{document}

在此处输入图片描述

相关内容