pb-diagramは複雑な可換図式を書くために、特に代数系の人間にとってはなくてはならないものである。環境
\begin{diagram}
\end{diagram}
を数式環境の中で使う。環境の中で使用する命令には、\nodeと\arrowの2種類がある。
文字を出力するための命令である。例えばAという文字を出力したければ
\node{A}
とすればよい。
矢印を出力するための命令である。オプション引数としては例えば
\arrow[2]{e, l, 3, ..}{f}
等と書くことが出来る。
最初の [] の中の数字は、矢印の(短い方向の)単位グリッド当たりの長さを示している。長さが1のときは省略可。
{}の最初のアルファベットは、矢印の方位を示している。それぞれのアルファベットは地図と同じで
e ... 東 , s ... 南 , w ... 西 , n ... 北
を表している。
{}の2番目のアルファベットは、矢印につける文字の(矢印に対する)場所を示している。それぞれのアルファベットは
t ... 上 , b ... 下 , l ... 左 , r ... 右
を表している。
{}の3番目の数字は、矢印につける文字の位置を示しており、矢印を4等分して終点に近い方からの位置を表している(1以上の整数値)。具体的には
$$
\begin{diagram}
\node{A}
\arrow{e,t,1}{f_1} \\
\node{B}
\arrow{e,t,2}{f_2} \\
\node{C}
\arrow{e,t,3}{f_3} \\
\node{D}
\arrow{e,t,4}{f_4} \\
\node{E}
\arrow{e,t,5}{f_5} \\
\node{X}
\arrow[2]{e,t,1}{g_1} \\
\node{Y}
\arrow[2]{e,t,2}{g_2} \\
\end{diagram}
$$
のようにしたときの出力結果は以下のようになる:
{}の最後の点々..は、矢印を点線にする命令である。ここに=を代わりに入れると二重線になる。
注意
二重線を出力するためには、pb-lams.styをロードしている必要がある。その際に、例えば
\usepackage{pb-diagram,pb-lams}
のように、pb-diagramの方を先にロードしないとエラーが出るので注意すること。
例えば、
$$
\begin{diagram}
\node{M}
\arrow{e,t}{\psi_M}
\arrow{s}
\node{M \otimes \Gamma}
\arrow{s} \\
\node{N}
\arrow{e,t}{\psi_M}
\node{N \otimes \Gamma} \\
\end{diagram}
$$
のようにすれば次のような図式が出来る:
その他、矢印の方位や長さについては次を参考にして欲しい:
$$
\begin{diagram}
\node{A}
\arrow{n} \arrow{nne} \arrow{ne} \arrow{ene}
\arrow{e} \arrow{ese} \arrow{se} \arrow{sse}
\arrow{s} \arrow{ssw} \arrow{sw} \arrow{wsw}
\arrow{w} \arrow{wnw} \arrow{nw} \arrow{nnw}
\end{diagram}
$$