0

enter image description hereI'm trying to write a code for some diagram, but it does not work.

\begin{tikzcd}
  Z\arrow[lu]\arrow[lu]\arrow[lu]\\
  X \arrow[r]& Z^{"} & \arrow[l] Y \\
  Z^{'} \arrow[rd] \arrow[rd] \arrow[rd]
\end{tikzcd}
0

1 Answer 1

4

When you do \arrow[lu], that tells tikz-cd to draw an arrow from the cell in which that macro is placed, to the cell that is one left (l) and one up (u). You draw arrows that go up and left from the top left cell in the diagram, so there is no cell for those arrows to end in, and you get an error.

It's the same thing elsewhere, you're drawing arrows to non-existing cells.

To draw to a cell for example two to the right, you use \arrow[rr], i.e. repeat the letter corresponding to the direction for as many times as cells you want to jump in that direction.

Unrelated: ' means ^{\prime}, so you probably don't want Z^{'}, but Z'.

\documentclass{article}
\usepackage{tikz-cd}
\begin{document}
\begin{tikzcd}
  & Z\\
  X   \arrow[r]\arrow[rd]\arrow[ru] & 
  Z'' \arrow[d]\arrow[u] & 
  Y   \arrow[l]\arrow[ld]\arrow[lu] \\ 
  & Z' 
\end{tikzcd}
\end{document}

enter image description here

5
  • Actually what I want is three arrows down from Z to X,Z^{­­"} and Y. I want to keep the second ligne , and a third one from Z^{'} up to X,Z^{"} and Y. Thanks
    – user178971
    Commented Jan 14, 2019 at 19:47
  • @DiegoHavez The logic is the same. Z'' is one down one right from Z, so you need \arrow[rd], to go two right, rrd. Commented Jan 14, 2019 at 19:48
  • Torbjorn you can see the picture.
    – user178971
    Commented Jan 14, 2019 at 20:06
  • Would have been a good idea to add that image to your question in the first place. Add a & before the Z in the first row and the Z'' in the last row, so they're moved to the second column. Then you just have to update the arrows, so they go to the correct cell in the diagram. Commented Jan 14, 2019 at 20:10
  • I'm very sorry. Thank you very much Torbjorn
    – user178971
    Commented Jan 14, 2019 at 20:40

You must log in to answer this question.