5

I have the following commutative diagram in tikz-cd, which looks pretty asymmetric to me:

\documentclass{standalone}
\usepackage[utf8]{inputenc}
\usepackage{amsmath}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}  
  & & I_1 \ar[rd] \arrow[loop above] & & \\
  & I_K \ar[ur] & & I_2 \ar[rd] & \\ 
  I_{K-1} \ar[ur] & & & & I_{3} \ar[d] \\
  I_{K-2} \ar[u] & & & & I_{4} \ar[ld]\\
  &~\ar[lu]& & ~\ar[ll,dashed, bend left]&\\
\end{tikzcd}    
\end{document}

enter image description here

Is there any way to fix this, and maybe also to make the whole diagram look more circular?

1
  • 1
    Probably you should check this question and adapt it, without the use of tikzcd.
    – Kpym
    Apr 30, 2018 at 21:57

2 Answers 2

7

Use between origins for removing the asymmetry and play with the values of column and row separation.

\documentclass{standalone}
\usepackage{amsmath}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}[column sep={4.5em,between origins},row sep=1.5em]
  & & I_1 \ar[rd] \arrow[loop above] & & \\
  & I_K \ar[ur] & & I_2 \ar[rd] & \\
  I_{K-1} \ar[ur] & & & & I_{3} \ar[d] \\
  I_{K-2} \ar[u] & & & & I_{4} \ar[ld]\\
  &~\ar[lu]& & ~\ar[ll,dashed, bend left]&\\
\end{tikzcd}
\end{document}

enter image description here

5

I transform my comment into an answer.

Here is one "more circular" solution without tikz-cd which is an adaptation of this answer (of myself).

\documentclass[tikz,border=7pt]{standalone}
\usetikzlibrary{shapes.geometric}
\tikzset{
  nonagon/.style={
    shape=regular polygon, regular polygon sides=9,
    outer sep=0, minimum size=42mm
  }
}
\begin{document}
  \begin{tikzpicture}[n5/.style={opacity=0},n6/.style=n5,e6/.style={dashed,bend left=17}]
    \path node[nonagon](H){}
      % nodes (two are invisible)
      foreach[count=\i] \x in {1,k,k-1,k-2,,,4,3,2}{(H.corner \i) node[n\i/.try] (c\i) {$I_{\x}$}}
      % edges (one is dashed and bended)
      foreach[count=\i] \j in {9,1,2,...,8}{(c\i) edge[->,e\i/.try] (c\j)}
      % the top loop
      (c1) edge [loop above,scale=1.4] ();
  \end{tikzpicture}
\end{document}

enter image description here

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .