用 $\beta_1 + \beta_2 + beta_3$ 标记对角线,并与其倾斜

用 $\beta_1 + \beta_2 + beta_3$ 标记对角线,并与其倾斜

这是我的代码:

 \documentclass{article}
    \usepackage{amsmath}
    \usepackage{tikz-cd}
    \begin{document}
    
    \begin{tikzcd}
    A \arrow[r] \arrow[d] \arrow[dashed]{dr}{\beta_1 + \beta_2 + \beta_3}
     &[0.5em] D \arrow[d, "{(\beta_1 , \beta_2 , \beta_3)}"] \\
    B \arrow[r, "f'"']  
      & C \arrow[r] 
      & X
    \end{tikzcd}
    \end{document}

但是我需要在对角线下方用 $\beta_1 + \beta_2 + beta_3$ 虚线标记该对角线,并与其倾斜。

任何帮助都将不胜感激!

答案1

您需要添加swap箭头方向选项:

\documentclass{article}
    \usepackage{amsmath}
    \usepackage{tikz-cd}
\begin{document}

    \begin{tikzcd}
A \arrow[r] \arrow[d] \arrow[dashed, swap]{dr}{\beta_1 + \beta_2 + \beta_3}
     & [0.5em] D \arrow[d, "{(\beta_1 , \beta_2 , \beta_3)}"] \\
B \arrow[r, "f'"']
      & C \arrow[r]
           & X
    \end{tikzcd}
\end{document}

然而结果还是和以前一样丑陋:

在此处输入图片描述

您可以考虑重新设计您的交换图:

  • 使节点之间的距离更大,
  • 沿着对角线写上标签:
\documentclass[border=3.141592]{standalone}
\usepackage{tikz-cd}
 
\begin{document}

    \begin{tikzcd}[sep=large]
A \ar[r] \ar[d] \arrow[dr, dashed, "\beta_1 + \beta_2 + \beta_3", sloped]
     &   D \ar[d, "{(\beta_1, \beta_2, \beta_3)}"] \\
B \ar[r, "f'" ']
      &   C \arrow[r]
          & X
    \end{tikzcd}
    
\end{document}

在此处输入图片描述

我强烈建议你阅读tikz-cd包文档以熟悉它。在整个图表中使用相同的语法也是个好主意。

顺便说一句,'与 含义相同swap,将边标签移动到箭头(边)的另一侧。因此,您可以将tik-cd代码的第三行写为B \ar[r, "f'" swap]

相关内容