3

How can I draw the following diagram in latex?

enter image description here

5

I'd be the first to admit that the syntax looks like line noise, but xy is very fast and you get nice results.

enter image description here

\documentclass[border=5mm]{standalone}
\usepackage[arrow]{xy}
\begin{document}
\begin{xy}
     (0,20)*+{A}="a"; 
    (20,20)*+{B}="b";
     (0, 0)*+{C}="c";
     {\ar         "a";"b"}?*!/_8pt/{f};
     {\ar@{>>}    "a";"c"}?*!/^6pt/{g};
     {\ar|{\circ} "c";"b"}?*!/^8pt/{h};
\end{xy}
\end{document}

There are a couple of great tutorial papers by Paul Blaga in PracTex here and here.

5

Sebastiano's answer is good, but it doesn't replicate exactly what is shown above, probably because he was (as he admits himself) in a hurry. Allow me to contribute my answer (by the way, I am in no way trying to degrade your answer, Sebastiano, I'm just trying to help and add some more details). So here's the code in tikzcd:

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

\begin{document} 

\[
\begin{tikzcd}[column sep=large, row sep=large]
A \ar[d, "g"', twoheadrightarrow] \ar[r, "f"] & B \\
C \ar[ru, description, "h"']
\end{tikzcd}
\]

\end{document}

enter image description here

But sadly, tikzcd doesn't have the circle arrow implemented, so I can't do anything. Thruston already showed the solution with xy package, so I guess I'm left with plain tikz. It is undoubtedly harder but also more flexible than tikzcd or xy. Here's the final code.

\documentclass{article}

\usepackage{amsmath}
\usepackage{tikz}

\begin{document}

\begin{tikzpicture}[node distance=2cm, auto]
\node (A) {$A$};
\node(B) [right of=A] {$B$};
\node (C) [below of=A] {$C$};
\draw[->](A) to node {$f$}(B);
\draw[->>](A) to node [left] {$g$}(C);
\draw[->](C) to node [below=0.5ex] {$h$}(B);
\node at (1.0099,-1.002) {$\circ$};
\end{tikzpicture}

\end{document}

enter image description here

  • Dear I have only given the input seen because missing also the user MWE. I admit my guilt for the rush but I was hoping that someone appreciated my little work. Personally I vote all positive as I appreciate the help and interest of each of us. – Sebastiano Mar 14 '17 at 20:48
  • Yes, I understand. No guilt needed whatsoever. The important thing here is that we got the problem resolved and learned something new ourselves in the process. That's all that matters. Have a good day, sir. – Gregor Perčič Mar 15 '17 at 12:44
5

Two pstricks solutions:

    \documentclass[border=3pt]{standalone}
    \usepackage{pst-node, auto-pst-pdf}

    \begin{document}

    \psset{arrows=->, arrowinset=0.15, linewidth=0.6pt, nodesep=3pt, labelsep=2pt, rowsep=1.2cm}
   $ \begin{psmatrix}
     A & B \\%
     C
    %%%
     \ncline{1,1}{1,2}\naput{f} %
     \ncline[arrows=->>]{1,1}{2,1}\nbput{g }
     \ncline{2,1}{1,2}\nbput{h}\psset{framesep=-2pt}\ncput*{\pscircle(0,0){3pt}}%
       \end{psmatrix} $
\qquad
   $ \begin{psmatrix}
     A & B \\%
     C
    %%%
     \ncline{1,1}{1,2}\naput{f} %
     \ncline[arrows=->>]{1,1}{2,1}\nbput{g }
     \ncline{2,1}{1,2}\nbput{h}\ncput{\pscircle(0,0){3pt}}%
    \end{psmatrix} $

    \end{document} 

enter image description here

2

This is a starting point. You could search for symbols with the arrows or \usetikzlibrary{decorations.markings} that you need and the image is made with tikz-cd. I did everything in a hurry. Always I have voted negative just because I go always in a hurry? I appreciate every answer and the positive vote independently. I vote a negative response when it is senseless or off topic.

enter image description here

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

\begin{document} 

\[\begin{tikzcd}
    A\ar{r}{f}\ar{d}[swap]{g} & B\\
    C \ar{ur}{h} & 
\end{tikzcd}\]
\end{document}
  • 1
    Whoever downvoted this, please add a comment explaining the reason for the downvote. – Peter Grill Mar 14 '17 at 21:02

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.