可換図のコード

可換図のコード

少し複雑な図がいくつかあります。基本的な図、つまり正方形の図を描くために配列パッケージを使用しています。しかし、[配列]パッケージで任意の図を描くことは可能ですか?たとえば、ここに画像の説明を入力してください これについて私を助けてもらえますか?同じように真似することができます。どうもありがとうございます

答え1

次のようにすると、かなり良い図が得られます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} 

ここに画像の説明を入力してください

答え2

xypicパッケージを試してみるのもいいでしょう。こちらをご覧くださいページマニュアルおよびドキュメント用。

答え3

または、tikz positioning図書館

スクリーンショット

コードは次のとおりです:

% 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}

関連情報