Benutzer:Wofl/Kladogramme
Eine Möglichkeit automatischer Erstellung von Kladogrammen geht über die Erzeugung einer tex-Datei mit Hilfe eines Perl-Skriptes aus einer definierten Eingabesyntax. Ähnlich wie bei der Darstellung mathematischer Formeln kann die Eingabesyntax innerhalb eines Tags (z.B. <klado>...</klado>) im Quelltext untergebracht werden, das als Extension in Mediawiki definiert wird. Bei der Anzeige wird das Tag durch die Bilddatei ersetzt, die aus der tex-Datei erzeugt wurde.
Eingabeformat
[Bearbeiten | Quelltext bearbeiten]Der Quelltext eines Kladogramms hat folgendes Format:
- Jede Klade (Knoten im Kladogramm) wird als Paar geschweifter Klammern {} dargestellt, die einzelnen Teilbäume (1–n) durch | getrennt
- Endknoten werden durch beliebigen Text dargestellt, der nicht die Zeichen {,},| und # enthalten darf
- Kladen können bezeichnet sein, die Bezeichnung ist ein beliebiger Text, der vor der öffnenden Klammer steht
- Zeilenumbrüche und Leerzeichen können an beliebiger Stelle stehen, es ist damit möglich, die Struktur durch zeilenweise Darstellung und Einrückungen übersichtlich zu gestalten.
Beispiel
[Bearbeiten | Quelltext bearbeiten]Krokodile (Crocodilia) {Gaviale (Gavialidae)| Brevirostres {Echte Krokodile (Crocodylidae) {Sundagavial (Tomistoma schlegeli) | Crocodylinae {Stumpfkrokodil (Osteolaemus tetraspis)|Crocodylus} } | Alligatoren (Alligatoridae) {Echte Alligatoren (Alligatorinae)| Kaimane (Caimaninae) {Glattstirnkaimane (Palaeosuchus)| {Echte Kaimane (Caiman) | Mohrenkaimane (Melanosuchus)} } } } }
Skript klado2tex.pl
[Bearbeiten | Quelltext bearbeiten]Dieses Perl-Skript (im Quelltext als Kommentar) erzeugt aus der Eingabestruktur eine Tex-Datei:
Der Quelltext des Kladogramms wird als Parameter übergeben, die tex-Datei wird in die Standardausgabe geschrieben.
Beispiel (<name> ist ein beliebiger Name einer Datei, die den Quelltext enthält):
klado2tex.pl `cat <name>` > <name>.tex
png-Erstellung
[Bearbeiten | Quelltext bearbeiten]Mit den Befehlen
latex <name>.tex dvipng -gamma 1.5 -T tight <name>.dvi
wird die Bilddatei <name>.png erzeugt.
Ergebnis
[Bearbeiten | Quelltext bearbeiten]Die daraus entstehende Grafik sieht so aus:
Weiteres Beispiel
[Bearbeiten | Quelltext bearbeiten]Systematik der Entelegynae (siehe Echte Webspinnen):
Entelegynae {Eresidoidea {Eresidae Röhrenspinnen} | { {Mimetoidea {Mimetidae} | Palpimanoidea {Palpimanidae|Huttoniidae|Stenochilidae} }| { {Deinopidae|Radnetzspinnen Araneoidea {Echte Radnetzspinnen Araneidae | { {Baldachinspinnen Linyphiidae | Cyatholipidae} | {Synotaxidae | {Nesticidae Höhlenspinnen|Haubennetzspinnen Theridiidae}}| {Dickkieferspinnen Tetragnathidae | {Theridiosomatidae | {Mysmenidae | {Anapidae | Symphytognathidae} } } } } } } | {Nicodamidae | { {Titanoecidae|Phyxelididae} | {Dictynoidea {Dyctinidae Kräuselspinnen|Neolanidae|Hahniidae|Cybaeidae|Desidae} | { {Stiphidoidea {Stiphidiidae} | Agelenoidea {Trichterspinnen Agelenidae}} | {Amaurobiidae Finsterspinnen | {Tengellidae | Jagdspinnen Lycosoidea {Psechridae|Luchsspinnen Oxyopidae| Raubspinnen Pisauridae|Wolfsspinnen Lycosidae} } } } | Zodarioidea {Zoodaridae Ameisenjäger} | Dionycha, Zwei-Klauen-Spinnen {Glattbauchspinnen Gnaphosidae| Moderne Laufspinnen {Sackspinnen Clubionidae|Springspinnen Salticidae| Krabbenspinnen Thomisidae | Laufspinnen Philodromidae } } } } } } } }
ergibt folgendes Kladogramm: