LINUX.ORG.RU

Вопрос по latex

 


0

3

Здравствуйте. Кто мог бы помочь с коммутативными диаграммами. К сожалению, сейчас времени нет разбираться, делаю лишь примитивные по типу \[ \begin{diagram} \node {C} \arrow {e,t} {g} \arrow {s,b} {h} \node {A} \arrow {s,r} {f} \\ \node {A} \arrow {e,t} {f} \node {B} \end{diagram}\] ну или там кдватратные Нужно изобразить такие http://www.picshare.ru/view/8143114/ http://www.picshare.ru/view/8143115/ http://www.picshare.ru/view/8143116/ http://www.picshare.ru/view/8143117/ Буду благодарен любой помощи.

По опыту лучше graphviz пока ничего не нашёл (если конечно не рисовать самому). plantuml умеет парсить latex и генерить пикчи: \startdot ...

anonymous
()
Ответ на: комментарий от anonymous
% @startdot out.eps
...
\includegraphics[width=\textwidth, height=\textheight, keepaspectratio]{out.eps}

Параметры командной строки plantuml: -charset UTF-8 -teps file.tex

anonymous
()

Пакет tikz-cd хорошо справляется с такими диаграммами. Первые две можно вот таким кодом сделать:

\documentclass{article}
\usepackage{amsmath}
\usepackage{tikz-cd}
\newcommand{\pr}{\mathrm{pr}}
\tikzcdset{row sep/normal=1.5cm, column sep/normal=1.5cm}
\begin{document}
\[
  \begin{tikzcd}
    & c \arrow[ld, "f"'] \arrow[rd, "g"] \arrow[d, dashed, "{\langle f,g\rangle}"]\\
    a & a\times b \arrow[l, "\pr_a"'] \arrow[r, "\pr_b"]& b
  \end{tikzcd}
\]
\[
  \begin{tikzcd}
    & d \arrow[ld, "p"'] \arrow[rd, "q"] \arrow[d, dashed, "{\langle p,q\rangle}"]\\
    a & a\times b \arrow[l, "\pr_a"'] \arrow[r, "\pr_b"]
           \arrow[d, dashed, "{\langle\pr_a,\pr_b\rangle}" near start]& b\\
    & d \arrow[lu, "p"] \arrow[ru, "q"']
  \end{tikzcd}
\]
\end{document}

Остальные — сам. Документация тут.

TeopeTuK ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.