2015-09-02 13 views
4

Что такое хороший способ рисования сортировочных сетей, которые выглядят так, как в нижней части этой публикации? Было бы высоко оценено пакет python или пакет установки шаблонов LaTeX.Рисование сортировочных сетей

Sorting network with groupings Simple sorting network

ответ

4

Вполне возможно, что некоторые более конкретные пакеты LaTeX существуют, чтобы сделать такие сети, но вы можете начать с иметь взгляд на TikZ пакет (manual). Это, как я (быстро) воспроизводится проще из двух изображений в вашем вопросе, используя TikZ:

\documentclass[tikz,border=5mm]{standalone} 

\begin{document} 

\begin{tikzpicture} 
%\fill [gray!15] (1.5,1.5) -- (2.5,1.5) -- (2.5,2.5) -- (1.5,2.5) -- cycle; 
\foreach \a in {1,...,4} 
    \draw[thick] (0,\a) -- ++(5,0); 
\foreach \x in {{1,2},{1,4},{2,1},{2,3},{3,1},{3,2},{3,3},{3,4},{4,2},{4,3}} 
    \filldraw (\x) circle (1.5pt); 
\draw[thick] (1,2) -- (1,4); 
\draw[thick] (2,1) -- (2,3); 
\draw[thick] (3,1) -- (3,2); 
\draw[thick] (3,3) -- (3,4); 
\draw[thick] (4,2) -- (4,3); 
\end{tikzpicture} 

\end{document} 

enter image description here

комментируемого линия (начиная с %) даст вам образец светло-серый прямоугольник на заднем плане, как на первом изображении вашего.

+0

Кроме того, я не указал этот вопрос для переноса, но я определенно советую вам также выполнить поиск в [TeX - LaTeX] (http://tex.stackexchange.com/users/49683/mattallegro). – MattAllegro