# Das Handbuch zu &kgraphviewer;

## Einführung

&kgraphviewer; ist ein Programm zum Anzeigen von &graphviz;-˙-Graphen. Die &graphviz;-Programme sind freie Layout-Programme. &kgraphviewer; zeigt Graphen in einer modernen und benutzerfreundlichen &GUI; an. Es hat folgende Funktionen: Hier ist ein Bildschirmfoto von &kgraphviewer; Das Hauptfenster von &kgraphviewer; mit einem der &graphviz;-Beispiele.

- Zoomen

- Gleichzeitiges Laden mehrerer Graphen in Unterfenstern

- Speichern einer Liste der zuletzt geladenen Graphen

- Ein Übersichtsfenster des Graphen

- Graphen verschieben durch Ziehen mit der Maus

- Drucken mit vielen Optionen

- Perfekte Darstellung aller &graphviz;-Beispiele

- Knoten- und Kantenfarben und alle Knotenformen werden unterstützt

- Automatische Wahl von ˙ für gerichtete und &neato; für ungerichtete Graphen

- Erneutes Laden von (extern) geänderten Dateien - manuell oder automatisch (einstellbar)

- Öffnen neuer Instanzen als Unterfenster in der laufenden Anwendung (einstellbar)

- Hilfe

- Übersetzung

Geplante Funktionen:

- Benutzung der &qanava;-Bibliothek für die interne Graphendarstellung

- Speichern der letzten Einstellungen (benutztes Layoutprogramm, Zoomfaktor, &etc;)

- Integration in &kate; und &konqueror; (sodass eine Änderung des Graphen in &kate; den Graphen neu errechnet und in &kgraphviewer; darstellt)

- Menü, um den Graphen in &kate; zu öffnen oder den Graphen in &kgraphviewer; in einer &kate;-Komponente zu öffnen

- Laden von großen Graphen (derzeit gibt es Probleme ab etwa 1000 Knoten und einen Hack, um mehr als diese Knoten darzustellen)

- Erweiterte Unterstützung von ˙-Attributen

- Darstellung der Graphen im Hintergrund (mit einem Fortschrittsbalken, um die Benutzeroberfläche nicht zu blockieren)

Dieses Programm beinhaltet Programmcode des GPL-Programms &kcachegrind; von Josef Weidendorfer, mit seiner Genehmigung.

Des Weiteren ist das Drucksystem von &kexi; aus der &calligra;-Suite entliehen.

Weitere benötigte Software: &kgraphviewer; ist ein Programm, welches das &graphviz;-Werkzeug ˙ für die Darstellung der Graphen voraussetzt. Benötigt werden im Einzelnen:

- die &Qt; und &kf5;-Bibliothek Version 5.x

- Die &graphviz;-Werkzeuge als externe Programme (mit Version 2.8 getestet)

- die &boost;-Bibliothek Version 1.36

## Benutzung von &kgraphviewer;

### Das Hauptfenster

Das Hauptfenster zeigt die geöffneten Graphen, jeden in einem eigenen Unterfenster. Anfangs, wenn Sie &kgraphviewer; ohne ein Argument starten, ist das Hauptfenster leer wie im unteren Bildschirmfoto. In diesem Fall enthält die Werkzeugleiste nur das Symbol Datei öffnen und die (leere) Liste Zuletzt geöffnete Dateien. Klicken Sie auf das erste Symbol, um den Dialog Datei öffnen anzuzeigen.

Das Hauptfenster von &kgraphviewer; nach dem ersten Öffnen Das Hauptfenster von &kgraphviewer; nach dem ersten Öffnen

Das Hauptfenster von &kgraphviewer; nach dem ersten Öffnen

Nachdem Sie eine oder mehrere ˙-Dateien ausgewählt haben, sieht das Hauptfenster aus wie im unteren Bildschirmfoto:

Das Hauptfenster von &kgraphviewer; mit mehreren geöffneten Dateien Das Hauptfenster von &kgraphviewer; mit mehreren geöffneten Dateien

Das Hauptfenster von &kgraphviewer; mit mehreren geöffneten Dateien

Wie Sie sehen können, wird eine Übersicht in der Ecke angezeigt, wenn der Graph größer als die Zeichenfläche ist. Sie können mit dem Kontextmenü eine feste Position dieser Übersicht auswählen oder diese Position automatisch auswählen lassen.

#### Bewegen des Graphen innerhalb des Fensters

Um den Graphen zu bewegen können Sie:

- klicken und ziehen;

- die Bildlaufleisten benutzen;

- die Pfeiltasten drücken;

- in die Übersicht klicken;

- das Mausrad benutzen (hoch und runter ohne Sondertasten, links und rechts bei gedrückter &Alt;-Taste);

- oder klicken und ziehen Sie in der Übersicht.

#### Zoomen

Zum Zoomen können Sie die Knöpfe und in der Werkzeugleiste oder mit gedrückter &Shift;-Taste das Mausrad benutzen. Beim Vergrößern wird das rote Rechteck in der Übersicht kleiner, um zu veranschaulichen, dass der im Hauptfenster dargestellte Bereich immer kleiner wird. Wenn das rote Rechteck sehr klein wird, wird es rot ausgefüllt, um noch sichtbar zu bleiben.

Ein Graph bei maximaler Vergrößerung Ein Graph bei maximaler Vergrößerung

Ein Graph bei maximaler Vergrößerung

Das Zoomen ist in beiden Richtungen durch den Faktor 10 beschränkt. Unten sehen Sie die maximale Verkleinerung eines Graphen.

Ein Graph bei maximaler Verkleinerung Ein Graph bei maximaler Verkleinerung

Ein Graph bei maximaler Verkleinerung

#### Der Umgang mit Graphendateien

##### Dateien, die auf der Festplatte verändert wurden

Wenn die gerade in &kgraphviewer; geladene Datei von einem anderen Programm verändert wurde, wird das folgende Fenster angezeigt:

Dialog zum erneuten Laden von veränderten Dateien Dialog zum erneuten Laden von veränderten Dateien

Dialog zum erneuten Laden von veränderten Dateien

Sie können wählen, ob der Graph neu geladen werden soll oder ob Sie die Veränderung ignorieren wollen. &kgraphviewer; kann sich Ihre Entscheidung auch merken, sodass später ebenso verfahren wird. Sollten Sie Ihre Entscheidung später ändern wollen, können Sie den Menüpunkt Einstellungen&kgraphviewer; einrichten ... benutzen, siehe auch kgraphviewer-configuration.

##### Dateien und Fenster

Wenn Sie eine Graphendatei außerhalb einer laufenden &kgraphviewer;-Instanz öffnen, ⪚ im Dateibrowser oder an der Befehlszeile, haben Sie die Wahl, ob Sie eine neue &kgraphviewer;-Instanz öffnen wollen oder den zu ladenden Graphen in einem Unterfenster der bereits laufenden Instanz darstellen wollen.

Dialog für das Öffnen eines neuen Fensters Dialog für das Öffnen eines neuen Fensters

Dialog für das Öffnen eines neuen Fensters

Wie bei der letzten Option können Sie Ihre Wahl dauerhaft speichern, aber diese auch mit dem Einrichtungsdialog nachträglich ändern.

##### Sitzungsverwaltung

Beim Programmstart können Sie alle Graphen Ihrer letzten Sitzung wieder öffnen lassen. Wieder können Sie Ihre Wahl sowohl speichern als auch später ändern.

Dialog zum erneuten Öffnen der Graphen der letzten Sitzung beim Programmstart Dialog zum erneuten Öffnen der Graphen der letzten Sitzung beim Programmstart

Dialog zum erneuten Öffnen der Graphen der letzten Sitzung beim Programmstart

### Drucken von Graphen

Benutzen Sie die Knöpfe Druckvorschau und Seiteneinstellungen, um die Druckmöglichkeiten zu erkunden.

Dialog für die Seiteneinstellungen Dialog für die Seiteneinstellungen

Dialog für die Seiteneinstellungen

Sie können in den Druckeinstellungen einstellen, den Graphen auf genau einer Seite einzupassen.

Seitenvorschau für das Einpassen auf einer Seite Seitenvorschau für das Einpassen auf einer Seite

Seitenvorschau für das Einpassen auf einer Seite

Sie können auch festlegen, wie der Graph auf mehrere Seiten aufgeteilt werden soll. Die Zahl der horizontalen und vertikalen Seiten kann frei gewählt werden.

Seitenvorschau zum Einpassen auf mehrere Seiten Seitenvorschau zum Einpassen auf mehrere Seiten

Seitenvorschau zum Einpassen auf mehrere Seiten

Wenn Sie mehrere Seiten benutzen, können Sie wählen, ob die Teile des Graphen, die auf eine Seite kommen, auf diese Seite eingepasst werden sollen. Dabei wird das Seitenverhältnis ignoriert. Wenn Sie das Seitenverhältnis beibehalten, werden die Seiten möglicherweise nicht von den jeweiligen Teilen des Graphen ausgefüllt.

Sie können die Seitengröße und die Ränder ändern:

Dialog für die Seitengröße und Ränder Dialog für die Seitengröße und Ränder

Dialog für die Seitengröße und Ränder

Sie können ebenso die Schriftart und die Kopf- und Fußzeile ändern:

Seitenvorschau mit einem auf mehrere Seiten verteilten Graphen ohne Kopfzeile und mit einer anderen Schriftart Seitenvorschau mit einem auf mehrere Seiten verteilten Graphen ohne Kopfzeile und mit einer anderen Schriftart

Seitenvorschau mit einem auf mehrere Seiten verteilten Graphen ohne Kopfzeile und mit einer anderen Schriftart

### &kgraphviewer; einrichten

Auf der Seite Erscheinungsbild können Sie die Standard-Hintergrundfarbe ändern, die dann verwendet wird, wenn im Graphen keine Hintergrundfarbe festgelegt ist.

Seite zum Ändern des Erscheinungsbilds eines Graphen Seite zum Ändern des Erscheinungsbilds eines Graphen

Seite zum Ändern des Erscheinungsbilds eines Graphen

Auf der Seite Einlesen können Sie einen externen Befehl oder die interne Bibliothek für das Einlesen von &graphviz;-˙-Dateien wählen.

Seite zum erneuten Laden veränderter Dateien im Einstellungsdialog Seite zum erneuten Laden veränderter Dateien im Einstellungsdialog

Seite zum erneuten Laden veränderter Dateien im Einstellungsdialog

Die Seite Erneut Laden gibt die Möglichkeit, das Verhalten festzulegen, wenn eine Datei auf der Festplatte verändert wurde, ⪚ von einem anderen Programm. Sie können ein Standardverhalten festlegen (automatisch neu laden oder die Änderungen ignorieren) oder das Programm jedes Mal nachfragen lassen.

Seite zum erneuten Laden veränderter Dateien im Einstellungsdialog Seite zum erneuten Laden veränderter Dateien im Einstellungsdialog

Seite zum erneuten Laden veränderter Dateien im Einstellungsdialog

Die Seite Öffnen gibt die Möglichkeit, das Verhalten von &kgraphviewer; festzulegen, wenn ein Graph außerhalb einer laufenden Sitzung geöffnet wird. Sie können ein Standardverhalten für diesen Fall festlegen (den Graphen in einem neuen Fenster öffnen oder in einem Unterfenster der bereits laufenden Sitzung) oder bestimmen, dass jedes Mal nachgefragt wird.

Seite für das Öffnen neuer Dateien in einer laufenden Sitzung Seite für das Öffnen neuer Dateien in einer laufenden Sitzung

Seite für das Öffnen neuer Dateien in einer laufenden Sitzung

Die Seite Sitzungsverwaltung gibt die Möglichkeit, das Startverhalten von &kgraphviewer; festzulegen. Sie können ein Standardverhalten festlegen (die Dateien der letzten Sitzung öffnen oder nicht) oder bestimmen, bei jedem Start danach gefragt zu werden.

Seite zum Laden der in der letzten Sitzung geöffneten Dateien beim Programmstart Seite zum Laden der in der letzten Sitzung geöffneten Dateien beim Programmstart

Seite zum Laden der in der letzten Sitzung geöffneten Dateien beim Programmstart

### Verschiedene Einstellungen

Das Kontextmenü, das normalerweise bei einem Klick im Hauptfenster mit der &RMBn; erscheint, eröffnet weitere Möglichkeiten:

Layout

- Hier können Sie unter verschiedenen &graphviz;-Layout-Algorithmen wählen. Die Einträge, wie sie auf der Webseite von &graphviz; beschrieben werden, sind:

  ˙

- ˙-Algorithmus, der Standard für gerichtete Graphen. Er produziert hierarchische oder geschichtete Darstellungen von gerichteten Graphen. Der Algorithmus legt die Kanten in dieselbe Richtung (von oben nach unten oder von links nach rechts) und versucht dann, möglichst kurze Kanten und möglichst wenige Kantenüberschneidungen zu produzieren.

&neato;

- Der &neato;-Algorithmus ist der Standard für ungerichtete Graphen. Er produziert Darstellungen gemäß des Sprungfedermodells. Dabei wird der Kamada-Kawai-Algorithmus benutzt, der gleichbedeutend ist mit statistischer mehrdimensionaler Skalierung.

&twopi;

- Der &twopi;-Algorithmus für gerichtete und ungerichtete Graphen erzeugt eine Darstellung, bei der die Knoten radial angeordnet werden. Dies geschieht gemäß der Beschreibung von Graham Wills, 1997.

&fdp;

- Der &fdp;-Algorithmus erzeugt für ungerichtete Graphen ein Sprungfedermodell-Layout. Er verwendet die Fruchterman-Reingold-Heuristik, und beinhaltet einen Mehrgitterlöser zur Behandlung von großen und geclusterten Graphen.

&circo;

- Der &circo;-Algorithmus ordnet die Knoten kreisförmig an gemäß der Beschreibung von Six und Tollis, 1999, und Kauffman und Wiese, 2002. Er ist nützlich für bestimmte Diagramme von mehrfach zyklischen Strukturen.

Geben Sie den Layoutbefehl an

- Öffnet einen Dialog, in dem Sie einen Layoutbefehl angeben können, der dann von einer Shell ausgeführt wird. Der Befehl sollte die Graphendatei als Parameter akzeptieren, und das berechnete Layout des Graphen nach stdout im xdot-Format ausgeben. Mit einem solchen Layoutbefehl können Sie ⪚ den &graphviz;-Algorithmen spezielle Optionen geben, oder auch den Graphen mit einem Filter verändern, bevor er gezeichnet wird.

Layoutbefehl auf Voreinstellung zurücksetzen

- Bestimmt den Typ des Graphen (gerichtet oder ungerichtet) und wendet den Standardalgorithmus für den jeweiligen Typ an (˙ für gerichtete, &neato; für ungerichtete Graphen).

Graph exportieren

- Als Bild ...

- Ermöglicht es, den gesamten Graphen in allen unterstützten Bildformaten zu exportieren.

Übersicht aktivieren

- Ist diese Einstellung aktiviert, wird die Übersicht angezeigt, sofern dies nötig ist. Sonst wird sie nicht angezeigt und das Positionierungsmenü ist inaktiv.

Übersicht

- Legt die Position der Übersicht fest. Die möglichen Einstellungen sind:

  Oben links

- Platziert die Übersicht in der linken oberen Ecke.

Oben rechts

- Platziert die Übersicht in der rechten oberen Ecke.

Unten links

- Platziert die Übersicht in der linken unteren Ecke.

Unten rechts

- Platziert die Übersicht in der rechten unteren Ecke.

Automatisch

- Platziert die Übersicht so gut wie möglich in einer der vier Ecken, sodass möglichst wenig vom Graphen verdeckt wird.

## Befehlsreferenz

### Die &kgraphviewer;-Menüs

#### Das Menü Datei

&Ctrl;N Datei Neu

- Öffnet ein neues &kgraphviewer;-Fenster.

&Ctrl;O Datei Öffnen

- Zeigt den Dialog Datei öffnen an.

Datei Zuletzt geöffnete Dateien

- Zeigt die Liste der zehn zuletzt geöffneten Dateien an.

Datei Graph exportieren Als Bild ...

- Ermöglicht es, den gesamten Graphen in allen unterstützten Bildformaten zu exportieren.

&Ctrl;P Datei Drucken ...

- Druckt den Graphen unter Berücksichtigung der aktuellen Druckeinstellungen.

&Ctrl;&Shift;P Datei Druckvorschau ...

- Öffnet das Fenster Druckvorschau für den aktuellen Graphen.

Datei Seiteneinstellungen

- Öffnet den Dialog Seiteneinstellungen für den aktuellen Graphen.

&Ctrl;Q Datei Beenden

- Beendet &kgraphviewer;.

#### Das Menü Ansicht

&Ctrl;+Ansicht Vergrößern

- Vergrößert den aktuellen Graphen um 10%.

&Ctrl;-Ansicht Verkleinern

- Verkleinert den aktuellen Graphen um 10%.

Ansicht Anzeige auffrischen

- Frischt die Darstellung des aktuellen Graphen auf.

Ansicht Layout-Algorithmus auswählen

- Öffnet ein Untermenü zur Auswahl der verschiedenen Layout-Algorithmen für den aktuellen Graph.

&Ctrl;B Ansicht Übersicht aktivieren

- Ist diese Einstellung aktiviert, wird die Übersicht angezeigt, sofern dies nötig ist. Sonst wird sie nicht angezeigt und das Positionierungsmenü ist inaktiv.

Ansicht Übersicht

- Legt die Position der Übersicht fest. Die Auswahlmöglichkeiten sind:

  Oben links

- Platziert die Übersicht in der linken oberen Ecke.

Oben rechts

- Platziert die Übersicht in der rechten oberen Ecke.

Unten links

- Platziert die Übersicht in der linken unteren Ecke.

Unten rechts

- Platziert die Übersicht in der rechten unteren Ecke.

Automatisch

- Platziert die Übersicht so gut wie möglich in einer der vier Ecken, sodass möglichst wenig vom Graphen verdeckt wird.

#### Die Menüs Einstellungen und Hilfe

&kgraphviewer; benutzt die bekannten &kde;-Menüeinträge Einstellungen und Hilfe. Mehr dazu erfahren Sie in den Abschnitten zu den Menüs Einstellungen und Hilfe in den &kde;-Grundlagen.

### Die Werkzeugleisten von &kgraphviewer;

#### Die Hauptwerkzeugleiste

- Zeigt den Dialog Datei öffnen an.

- Zeigt die Liste der zuletzt geöffneten Dateien.

- Zeigt den Dialog Druckvorschau an.

#### Die Ansicht-Werkzeugleiste

- Bestimmt den Layoutbefehl oder zeigt die Liste der voreingestellten Layoutbefehle.

- Vergrößert den aktuellen Graphen um 10%.

- Verkleinert den aktuellen Graphen um 10%.

#### Die Hilfe-Werkzeugleiste

- Zeigt den Was ist das-Mauszeiger an. Klicken Sie mit diesem Mauszeiger auf ein &GUI;-Element, um weitere Hilfe zu diesem Element zu erhalten (sofern vorhanden).

## Danksagungen und Lizenz

### Programm

#### Hauptentwickler

Copyright für das Programm 2005-2006 Gaël de Chalendar kleag@free.fr

#### Mitwirkende (unvollständige Liste)

- Reimar Döffinger Reimar.Doeffinger@stud.uni-karlsruhe.de

### Benutzerhandbuch

Copyright für die Dokumentation 2006 Gaël de Chalendar kleag@free.fr

#### Mitwirkende

- Federico Zenith federico.zenith@member.fsf.org

### Weitere Mitwirkende

Das Programm enthält Code der folgenden freien Software-Projekte:

&kcachegrind;

- Ursprüngliches Graphenmodell und Darstellungsklassen;

&kexi;

- Druckeinstellungen und Vorschauklassen.

### Lizenzen

Übersetzung Matthias Peinhardtmatthias.peinhardt@googlemail.com

&underFDL; &underGPL;
&documentation.index;