标记交换图的一部分

标记交换图的一部分
\documentclass[12pt,reqno,a4paper]{amsart}
\usepackage{extsizes}
\usepackage{blindtext}
\textheight 9.3in \textwidth 6.5in
\calclayout
\usepackage{amsmath,amsthm,amsfonts,amssymb}
\usepackage{hyperref}
\usepackage{mathrsfs}
\usepackage[all]{xy}
\usepackage[normalem]{ulem}
\usepackage{tikz-cd}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\begin{document}
\[\begin{tikzcd}
\underline{V} 
\arrow[rrrrdd,  bend left]
\arrow[rrdddd, bend right] \arrow[rrdd, dotted] &  &&  & \\
& & &  & \\
&  & A \arrow[dd] \arrow[rr] &  & B \arrow[dd] \\
&  &  &  & \\
&  & C \arrow[rr] &  & D                
\end{tikzcd}\]
\end{document}

上面的代码给了我下面的图表

在此处输入图片描述

我使用“幻影”技术对交换图的部分进行编号。它没有起作用。我想写

  • (1)在图中 V,A,B 所指处
  • (2)在图中 V,A,C 所指处
  • (3)图中A,B,C,D所指

有人能帮我看看该怎么做吗?

答案1

你是这个意思吗?

在此处输入图片描述

您可以将没有箭头的标签添加到图表中:

\[\begin{tikzcd}
\underline{V} 
\arrow[rrrrdd,  bend left]
\arrow[rrdddd, bend right] \arrow[rrdd, dotted] &  &&  & \\
& & (1) &  & \\
& (2) & A \arrow[dd] \arrow[rr] &  & B \arrow[dd] \\
&  &  & (3) & \\
&  & C \arrow[rr] &  & D                
\end{tikzcd}\]

答案2

只是为了好玩:tikz-cd基于 Ti所以

\documentclass[tikz]{standalone}
\begin{document}
\begin{tikzpicture}[y=0.8cm]
\node (a) at (0,0) {$A$};
\node (b) at (2,0) {$B$};
\node (c) at (0,-2) {$C$};
\node (d) at (2,-2) {$D$};
\node (v) at (-2,2) {$\underline{V}$};
\draw[->] (a)--(b);
\draw[->] (b)--(d);
\draw[->] (a)--(c);
\draw[->] (c)--(d);
\draw[dotted,->] (v)--(a);
\draw[->] (v) to[bend right] (c);
\draw[->] (v) to[bend left] (b);
\node at (1,-1) {(3)};
\node at (0,1) {(1)};
\node at (-1,0) {(2)};
\end{tikzpicture}
\end{document}

在此处输入图片描述


但我更喜欢这种方式(虽然我的编码方式效率不高)

\documentclass[tikz]{standalone}
\begin{document}
\begin{tikzpicture}[y=0.8cm,>=stealth]
\node (V) at (-2,2) {\phantom{$\underline{V}$}};
\node (B) at (2,0) {\phantom{$B$}};
\node (C) at (0,-2) {\phantom{$C$}};
\fill[yellow!50] (0,0) rectangle (2,-2);
\fill[green!20] (V) to[bend left] (B)--(2,0)--(0,0)--(V);
\fill[blue!20] (V) to[bend right] (C)--(0,-2)--(0,0)--(V);
\begin{scope}[every node/.style={fill=white,circle,draw}]
    \node (a) at (0,0) {$A$};
    \node (b) at (2,0) {$B$};
    \node (c) at (0,-2) {$C$};
    \node (d) at (2,-2) {$D$};
    \node (v) at (-2,2) {$\underline{V}$};
\end{scope}
\draw[->] (a)--(b);
\draw[->] (b)--(d);
\draw[->] (a)--(c);
\draw[->] (c)--(d);
\draw[dashed,->] (v)--(a);
\draw[->] (v) to[bend right] (c);
\draw[->] (v) to[bend left] (b);
\node at (1,-1) {(3)};
\node at (0,1) {(1)};
\node at (-1,0) {(2)};
\end{tikzpicture}
\end{document}

在此处输入图片描述

答案3

使用幻影箭:

\documentclass[a4paper]{article}
\usepackage{tikz-cd}

\begin{document}

\[
\begin{tikzcd}[nodes in empty cells]
\underline{V}
  \arrow[rrrrdd,  bend left]
  \arrow[rrdddd, bend right]
  \arrow[rrdd, dotted]
  \arrow[rrrrdd,phantom,"(1)" description]
  \arrow[rrdddd,phantom,"(2)" description]
\\
&&&&\\
&& A \arrow[dd] \arrow[rr] & \arrow[dd,phantom,"(3)" description] &
B \arrow[dd] \\
&&&&\\
&& C \arrow[rr] && D
\end{tikzcd}
\]

\end{document}

在此处输入图片描述

相关内容