2
0
Fork 0
mirror of https://github.com/MartinThoma/LaTeX-examples.git synced 2025-04-19 11:38:05 +02:00

added abhaengigkeitsgraph

This commit is contained in:
Martin Thoma 2013-02-27 11:58:05 +01:00
parent ce388c3396
commit fa2cc8dc12
2 changed files with 94 additions and 0 deletions

View file

@ -0,0 +1,35 @@
SOURCE = informatikstudium-kit-abhaengigkeitsgraph
DELAY = 80
DENSITY = 300
WIDTH = 512
make:
pdflatex $(SOURCE).tex -output-format=pdf
make clean
clean:
rm -rf $(TARGET) *.class *.html *.log *.aux *.data *.gnuplot
gif:
pdfcrop $(SOURCE).pdf
convert -verbose -delay $(DELAY) -loop 0 -density $(DENSITY) $(SOURCE)-crop.pdf $(SOURCE).gif
make clean
png:
make
make svg
inkscape $(SOURCE).svg -w $(WIDTH) --export-png=$(SOURCE).png
transparentGif:
convert $(SOURCE).pdf -transparent white result.gif
make clean
svg:
make
#inkscape $(SOURCE).pdf --export-plain-svg=$(SOURCE).svg
pdf2svg $(SOURCE).pdf $(SOURCE).svg
# Necessary, as pdf2svg does not always create valid svgs:
inkscape $(SOURCE).svg --export-plain-svg=$(SOURCE).svg
rsvg-convert -a -w $(WIDTH) -f svg $(SOURCE).svg -o $(SOURCE)2.svg
inkscape $(SOURCE)2.svg --export-plain-svg=$(SOURCE).svg
rm $(SOURCE)2.svg

View file

@ -0,0 +1,59 @@
\documentclass{article}
\usepackage[pdftex,active,tightpage]{preview}
\setlength\PreviewBorder{2mm}
\usepackage{tikz}
\usetikzlibrary{arrows,shapes}
\begin{document}
\begin{preview}
\begin{tikzpicture}[>=stealth',shorten >=1pt,auto,node distance=3cm,
pflicht/.style ={rectangle, draw=blue, thick, fill=blue!20,align=center, rounded corners, minimum height=2em},
wahl/.style ={rectangle, draw=green, thick, fill=green!20,align=center, rounded corners, minimum height=2em}]
% Draw the vertices.
\node[pflicht] (programmieren) {Programmieren};
\node[pflicht] (gbi) [right of=programmieren] {GBI};
\node[pflicht] (wt) [right of=gbi] {WT};
\node[pflicht] (tgi) [below of=gbi] {TGI};
\node[pflicht] (os) [right of=wt] {OS};
\node[pflicht] (algi) [right of=os] {Algorithmen I};
\node[pflicht] (algii)[below of=algi] {Algorithmen II};
\node[pflicht] (dt) [right of=algi] {DT};
\node[pflicht] (ro) [below of=dt] {RO};
\node[pflicht] (lai) [right of=dt] {LA I};
\node[pflicht] (laii) [below of=lai] {LA II};
\node[pflicht] (anai) [right of=lai] {ANA I};
\node[pflicht] (anaii) [below of=anai] {ANA II};
\node[pflicht] (swti) [left of=programmieren] {SWT I};
\node[pflicht] (pse) [below left of=tgi] {PSE};
\node[wahl] (icpc) [below of=algii] {ICPC};
\node[wahl] (web) [above of=swti] {Web Engineering};
\node[wahl] (tse) [left of=pse] {TSE};
% Connect vertices with edges and draw weights
\path[->] (gbi) edge[thick] node {} (tgi);
\path[->] (algi) edge node {} (algii);
\path[->] (tgi) edge node {} (algii);
\path[->] (wt) edge node {} (algii);
\path[->] (dt) edge node {} (ro);
\path[->] (lai) edge[ultra thick] node {} (laii);
\path[<->] (lai) edge[bend right] node {} (gbi);
\path[->] (anai) edge[ultra thick] node {} (anaii);
\path[->] (laii) edge[bend left] node {} (algii);
\path[->] (programmieren) edge [very thick] node {} (swti);
\path[->] (programmieren) edge node {} (pse);
\path[->] (programmieren) edge[bend left] node {} (os);
\path[->] (swti) edge node {} (pse);
\path[<->] (ro) edge node {} (os);
\path[<->] (algii) edge [very thick] node {} (icpc);
\path[->] (swti) edge node {} (web);
\path[<->] (pse) edge[red] node {} (tse);
\path[->] (laii) edge[red, bend left] node {} (pse);
\path[->] (anaii) edge[red, bend left] node {} (pse);
\path[->] (programmieren) edge[red, bend left] node {} (pse);
\path[->] (algi) edge[red, bend left] node {} (pse);
\path[->] (swti) edge[red, bend left] node {} (pse);
\path[->] (gbi) edge[red, bend left] node {} (pse);
\end{tikzpicture}
\end{preview}
\end{document}