código para diagramas comutativos

código para diagramas comutativos

Existem alguns diagramas que são um pouco complicados, eu uso o pacote array para desenhar os básicos, quero dizer, os quadrados. mas é possível desenhar algum diagrama pelo pacote [array]? por exemplo, insira a descrição da imagem aqui você pode me ajudar nisso, acho que posso imitar da mesma forma. Muito obrigado

Responder1

Um diagrama bastante bom é obtido com tikz-cd:

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

\begin{document}

\[
\begin{tikzcd}[column sep=2.5pc,row sep=2pc]
{} & B \arrow{d} \arrow[bend left]{dddrr} \\
A \arrow{r} \arrow{rrd} \arrow[bend right]{rrrdd} & G \\
{} & {} & P \arrow{ul}[swap]{\tilde{\varphi}} \\
{} & {} & {} & B*C \arrow{ul}[swap]{\nu}
\end{tikzcd}
\]

\end{document} 

insira a descrição da imagem aqui

Responder2

Você poderia tentar o pacote xypic. Veja issopáginapara manuais e documentação.

Responder3

Ou então usando otikz positioningbiblioteca

captura de tela

Aqui está o código:

% arara: pdflatex

\documentclass{standalone}
\usepackage{tikz}
\usetikzlibrary{positioning}

% arrows set as stealth fighters
\tikzset{>=stealth}

\begin{document}

\begin{tikzpicture}
    % setup the nodes
    \node (B){$B$};
    \node[below=of B](G){$G$};
    \node[left=of G](A){$A$};
    \node[below right=of G](P){$P$};
    \node[below right=of P](BstarC){$B*C$};
    % connect them
    \foreach \start/\finish/\mylabel in {B/G/, A/G/, A/P/, P/G/$\tilde{\varphi}$, BstarC/P/$\nu$}
    {
        \draw[->](\start)--(\finish) node[midway,above]{\mylabel};
    }
    % bended arrows
    \draw[->](A) to[bend right=30] (BstarC);
    \draw[->](BstarC) to[bend right=20] (B);
\end{tikzpicture}

\end{document}

informação relacionada