在 tikzcd 中格式化单个节点

在 tikzcd 中格式化单个节点

是否可以在 tikzcd 中格式化单个节点?在下面的 MWE 中,我希望\dots单元格没有椭圆。

平均能量损失

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

\begin{document}

\begin{figure}
    \begin{tikzcd}[cells={nodes={draw=black, ellipse}}]
        0 \arrow[r] & 1 \arrow[r] & \dots \arrow[r] & n-1 \arrow[r] & n
    \end{tikzcd}
\end{figure}

\end{document}

答案1

tikzcd实际上只是改进matrixTi的改进Z。

\documentclass{article}
\usepackage{tikz-cd}
\usetikzlibrary{shapes}
\begin{document}
\begin{figure}
    \begin{tikzcd}[cells={nodes={draw=black, ellipse}}]
        0 \arrow[r] & 1 \arrow[r] & |[draw=none]|\dots \arrow[r] & n-1 \arrow[r] & n
    \end{tikzcd}
\end{figure}
\end{document}

在此处输入图片描述

然而,为了得到好看的箭头,我认为需要做一些改进。以下是一些建议:

  1. 使用 phantom (如 marmot 在评论中所建议的)

    \documentclass{article}
    \usepackage{tikz-cd}
    \usetikzlibrary{shapes}
    \begin{document}
    \begin{figure}
        \begin{tikzcd}[cells={nodes={draw=black, ellipse}}]
            0 \arrow[r] & 1 \arrow[r] & |[draw=none]|\dots\vphantom{1} \arrow[r] & n-1 \arrow[r] & n
        \end{tikzcd}
    \end{figure}
    \end{document}
    

    在此处输入图片描述

    我们甚至可以通过使用以下方法进一步改进这种方法\cdots

    \documentclass{article}
    \usepackage{tikz-cd}
    \usetikzlibrary{shapes}
    \begin{document}
    \begin{figure}
        \begin{tikzcd}[cells={nodes={draw=black, ellipse}}]
            0 \arrow[r] & 1 \arrow[r] & |[draw=none]|\cdots\vphantom{1} \arrow[r] & n-1 \arrow[r] & n
        \end{tikzcd}
    \end{figure}
    \end{document}
    

    在此处输入图片描述

  2. 使用选项anchor=center

    \documentclass{article}
    \usepackage{tikz-cd}
    \usetikzlibrary{shapes}
    \begin{document}
    \begin{figure}
        \begin{tikzcd}[cells={nodes={draw=black, ellipse,anchor=center}}]
            0 \arrow[r] & 1 \arrow[r] & |[draw=none]|\dots \arrow[r] & n-1 \arrow[r] & n
        \end{tikzcd}
    \end{figure}
    \end{document}
    

    在此处输入图片描述

此外,为了使节点的高度一致,您可能需要minimum height选项(这里我将它应用于anchor=center代码 - 您可以将其应用于上面的任何代码):

\documentclass{article}
\usepackage{tikz-cd}
\usetikzlibrary{shapes}
\begin{document}
\begin{figure}
    \begin{tikzcd}[cells={nodes={draw=black, ellipse,anchor=center,minimum height=2em}}]
        0 \arrow[r] & 1 \arrow[r] & |[draw=none]|\dots \arrow[r] & n-1 \arrow[r] & n
    \end{tikzcd}
\end{figure}
\end{document}

在此处输入图片描述

相关内容