1

I have the following code which produces the attached triangle picture. Does anyone know how to produce a directed edge from S_0, down and to the right, ending at D_0b? Also, join vertexes S_1 and S_1 into a single vertex or point?

The tikz-cd documentation had little info on this shape and my own results led to many compilation failures. Appreciate any guidance on creating the shape.

Thanks

Note: I'm attempting to draw a Porphyry tree.

  \begin{tikzcd}[row sep=tiny]
    & S_0 \arrow[dd, "\phi_1" description] \\
    D_0 \arrow[ur, leftarrow] \arrow[dr, "\phi_2" description] \\
    & S_1 \\
    & S_1 \arrow[dd, "\phi_1" description] \\
    D_1 \arrow[ur, leftarrow] \arrow[dr, "\phi_2" description] & \\
    & S_2
  \end{tikzcd}

enter image description here

  • 2
    Hi, welcome. Perhaps I'm a bit slow, but I don't quite understand your first point. How should that edge look exactly? For the second point, simply delete the third row in your matrix, the one containing just & S_1 \\. – Torbjørn T. Apr 30 '19 at 19:03
  • I corrected the description. The edge should go from S_0 to D_0b on the right. D_0b does not exist in the above picture – Nick May 1 '19 at 5:02
4

Renewed answer after OP's clarification:

\documentclass{article}

\usepackage{tikz-cd}

\begin{document}
 \begin{tikzcd}[row sep=tiny]
    & S_0 \arrow[dd, "\phi_1" description]\ar[dr] \\
    D_0 \arrow[ur, leftarrow] \arrow[dr, "\phi_2" description] &&D_{0b}\\
    & S_1 \arrow[dd, "\phi_1" description]\ar[dr] \\
    D_1 \arrow[ur, leftarrow] \arrow[dr, "\phi_2" description] &&D_{1b}\\
    & S_2
  \end{tikzcd}
\end{document}

enter image description here

  • This looks good except I need to add a label to the right vertex at the end of the right edge. D0b. Then add the same below as another right edge to label D1b. I will try this. Thanks for interpreting this! – Nick May 1 '19 at 5:10
  • @Nick See my renewed answer. – CarLaTeX May 1 '19 at 5:29
1

Is this what you want?

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

\begin{document}

 \begin{tikzcd}[row sep=tiny]
    & S_0\dlar \ar[dd, "\phi_1" description] \drar \\
    D_0 \drar["\phi_2" description] & & D_{0b}\\
    &S_1\dlar \arrow[dd, "\phi_1" description] \\
    D_1 \drar["\phi_2" description] & \\
    & S_2
  \end{tikzcd}

\end{document} 

enter image description here

  • I vote you but apparently the question is not very clear. Your doubt has confirmed my hypothesis of unclearness. – Sebastiano Apr 30 '19 at 19:12
  • 1
    Let's hope theO.P. will post some clarification!. I think the image is scanned from book, as it can't result from the posted code. – Bernard Apr 30 '19 at 19:15
  • It could be because the characters are those of newtx package in text and/or mathematical mode. – Sebastiano Apr 30 '19 at 19:19
  • The image resulted from the posted code. I have a lot of packages included also some for Greek text, which may substitute fonts from the system rather then ams ones. – Nick May 1 '19 at 5:12
  • This looks correct except it needs a directed edge to the right with a label. I did not clarify this in the original post and updated accordingly. Thanks – Nick May 1 '19 at 5:13

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.