# Das Kpl-Handbuch

## Einleitung

&kpl; ist ein Programm zur zwei- und dreidimensionalen grafischen Darstellung von Datensätzen und Funktionen. Außerdem können mehrdimensionale nichtlineare Parameteranpassungen von Funktionen an Datensätze mittels des Levenberg-Marquardt-Algorithmus durchgeführt werden. Auch allgemeine lineare Parameteranpassungen sind möglich. Eine DCOP-Schnittstelle ermöglicht die Steuerung von &kpl; durch andere Anwendungen oder Skripte.

Alle Einstellungen, die zur vollständigen Beschreibung der Darstellung nötig sind, können in Plotdateien gespeichert werden. Diese Dateien sowie Datendateien können mittels Befehlszeilenparameter, Dateimenü und Drag-and-Drop-Technik zum Einlesen ausgewählt werden.

Automatische Skalierung und Normierung machen eine einfache grafische Darstellung von Daten möglich. Auch Parameteranpassungen können automatisch ausgeführt werden.

Die Einstellungen einer Darstellung können über das Menü Bearbeiten verändert werden. Hierüber ist auch das Hinzufügen weiterer Datensätze und Funktionen möglich, die sowohl im gleichen als auch in weiteren Datenfenstern dargestellt werden können.

### &kpl;-Versionsgeschichte

- Version 3.3 (28. Dezember 2005)

  - Mehrere Spline-Bestandteile können simultan an den gleichen Feldbestandteil angepasst werden

  - x- und y-Werte von Feld-, Funktions- und Spline-Bestandteilen können verschoben werden

  - Quadrat-Auswahlfeld im Dialog Rechteck, Kreis-Auswahlfeld im Dialog Ellipse, Kreisbogen-Auswahlfeld im Dialog Bogen

  - In der Bestandteilliste werden farbige Symbol-Pixmaps angezeigt

  - In der Bestandteilliste wird der Text von Legenden- und Text-Bestandteilen angezeigt

  - Knöpfe des Dialogs Bestandteile sind deaktiviert, wenn ihre Aktionen nicht angewendet werden können

  - Relative Symbolgröße kann in den Autoplot-Einstellungen voreingestellt werden

  - Benachrichtigungen über fertiggestellte Plots und Parameteranpassungen können eingestellt werden

  - benötigt KDE 3.x

- Version 3.2 (7. Februar 2004)

  - Mustergefüllte Flächen gegeben durch Felder, Funktionen, Splines, Rechtecke oder Ellipsen

  - Neuer Bestandteil zum Einbetten von EPS-Bilddateien

  - Neuer Maßstabsbestandteil

  - Neue DCOP-Funktionen für Bild- und Maßstabs-Bestandteile

  - PostScript-Vorschau

  - Option zum Drucken von PostScript-Ausgabedateien

  - Rahmenbestandteile können in der Baumansicht geschlossen gehalten werden

  - x- oder y-Spalte kann als Argument der Fehlermodellfunktion für Parameteranpassungen gewählt werden

  - Punkt oder Komma kann als Dezimalsymbol von Datendateien gewählt werden (benötigt KDE 3.1)

  - Kontext-Menü für sichtbare Bestandteile

  - NaN (not a number) und inf (infinity) in Datendateien werden in Plots ignoriert

  - K-Menüeintrag zur Kategorie Büroprogramme verschoben

- Version 3.1 (2. April 2003)

  - Nullstellensuche für Funktionen und Spline-Interpolationen

  - Bestandteile können durch Drag and Drop innerhalb der Bestandteilliste verschoben werden

  - Neue oder kopierte Bestandteile können vor dem aktuellen Bestandteil eingefügt werden

  - Darstellung kann mit mittlerer Maustaste neu skaliert werden

  - Format- und Genauigkeitseinstellungen wirken nun auf Funktionsbereichseingaben

- Version 3.0 (30. September 2002)

  - Version für KDE 3

  - Neue Bestandteile für 3D-Oberflächenplots von Datensätzen und Funktionen

  - Neuer Bestandteil für glättende Spline-Interpolation

  - Neuer Dekorationsbestandteil: Bogen

  - Rechteck- und Ellipsenbestandteile können gedreht werden

  - Neue DCOP-Funktionen für 3D-, Spline- und Bogen-Bestandteile

  - Autoskalierung berücksichtigt nur die Bereiche aktiver Bestandteile

  - Symbolgröße kann für jeden Feld-, Funktions-, Spline- oder Legendenbestandteil individuell eingestellt werden

  - Kombobox zur Auswahl verschiedener Standard-Seitenformate

  - x- und y-Achsen können jeweils auf beiden Seiten dargestellt werden

  - Erste Zahlen an x- und y-Achsen müssen nicht am linken bzw. unteren Rand liegen

  - Parameteranpassungen bei sehr kleinen und sehr großen Datenwerten verbessert

- Version 2.3.0 (12. Oktober 2001)

  - benötigt KDE 2.2

  - Residuen von Parameteranpassungen können grafisch angezeigt werden

  - Felder können optional innerhalb von Plotdateien gespeichert werden

  - Trennzeichen für exportierte Dateien mit Funktionswerten und Parametern kann eingestellt werden

  - Parameter von Funktionsbestandteilen können direkt angewendet werden

  - Neue DCOP-Funktion: activateItem()

  - Verbesserte Auswahl und Aktivierung im Dialog Bestandteile

  - Gemäß KDE Standard verbesserte Dialoge

  - Rückgabetyp boolescher DCOP-Funktionen zur Vermeidung von Problemen zu int geändert

- Version 2.2 (22. Mai 2001)

  - Daten- und Plotdateien können wahlweise zur aktuellen Darstellung hinzugefügt werden

  - Neue Dekorationsbestandteile: Text, Linie, Pfeil, Rechteck, Ellipse

  - Position von Bestandteilen kann durch Ziehen mit der Maus geändert werden

  - Knopf für Neu laden im Dialog Feld

  - Leerzeilen in Datendateien werden ignoriert

  - x- und y-Achse können alternativ oben bzw. rechts plaziert werden

  - Japanische Übersetzung

- Version 2.1.1 (27. Januar 2001)

  - Bug fixes

- Version 2.1 (22. Januar 2001)

  - DCOP-Schnittstelle

  - Logarithmische Skalierung

  - Nur modifizierte Dateien werden periodisch neu geladen

  - Position der Werkzeugleiste wird in der Konfigurationsdatei gesichert

  - Verbesserter Dialog Neuer Bestandteil

  - Neue Feld- und Funktionsbestandteile übernehmen die Normierungsfaktoren vorhergehender Bestandteile

- Version 2.0 (21. November 2000)

  - Benötigt KDE 2.0, optimiert für KDE 2.0

  - Menüpunkt Werkzeugleisten einrichten im Menü Einstellungen

  - Menüpunkt Absolute Pfade speichern im Menü Einstellungen

  - Verbesserte Prüfung von Fließkommaeingaben

  - Spinboxen im Feld-Dialog werden aktualisiert

  - Unicode-Text in .plo-Dateien (Wandeln Sie Ihre alten .plo-Dateien nach UTF8 um, wenn nicht-ASCII-Zeichen enthalten sind)

  - Größe der Dialogfenster kann verändert werden

  - Polnische Übersetzung

- Version 1.2 (10. August 2000)

  - Rückgängigmachen und Wiederherstellen von Änderungen

  - Paket für KDE 2 beta erhältlich

- Version 1.1 (5. Mai 2000)

  - Mehrdimensionale Parameteranpassung

  - Verbesserter Dialog zur Parameteranpassung

  - Erhöhte Druckauflösung

  - Wahlweise hoch- und querformatige PostScript-Ausgabe

  - Mehr Beispiele

- Version 1.0 (21. Februar 2000)

  - Druckknöpfe zum Öffnen des Symbolauswahldialogs zeigen aktuelles Symbol

  - Verbesserte Internationalisierung

  - Erweiterte Hilfe

  - Mehr Beispiele

- Version 0.4 (14. Januar 2000)

  - Allgemeine lineare Parameteranpassung

  - Langdauernde Parameteranpassungen können durch Benutzer abgebrochen werden

  - Ausgabeformat für Parameterdateien und Dialogfenster kann geändert werden

  - Ausgabeformat der Statuszeile wird entsprechend der Bildschirmauflösung gewählt

  - Dialog Bestandteile ist nun nichtmodal

  - Mehrere Eingabedateien bei Befehlszeilenaufruf und bei Drag-and-Drop möglich

  - Sowohl KDE- als auch Qt-Drag-and-Drop-Protokoll unterstützt

  - Session-Management

  - Funktionswertepuffer für schnelleres Zeichnen

  - Mehr Beispielfunktionen

- Version 0.3 (28. September 1999)

  - Plotbestandteile können zum (zeitweisen) Verstecken deaktiviert werden

  - Reihenfolge der Plotbestandteile kann einfach geändert werden

  - Verbessertes Lesen der Plotdateien mittels KSimpleConfig

  - Neue Plotdateien speichern den Aktivierungszustand der Bestandteile

  - Verbessertes Erkennen von .plo-Dateien am Dateinamen

  - Keine Mehrfachauswahl zur Parameteranpassung nötig, wenn nur eine Funktion und ein Feld vorhanden sind

- Version 0.2 (29. Juli 1999)

  - benötigt KDE 1.1

  - Powered by KDevelop

  - Nichtlineare Parameteranpassung

  - Positionen von Menü- und Werkzeugleiste werden in der Konfigurationsdatei gesichert

  - Menüs mit Icons

  - Kurzhilfe in der Statuszeile

  - Menüpunkt Schließen im Menü Datei

  - Menüpunkt Zuletzt geöffnet im Menü Datei

  - Ein-/Ausschalten der Warnung bei ungesicherten Änderungen

  - Menüpunkte und Werkzeug-Icons für Vergrößern und Verkleinern

  - Menüpunkt Tastenbelegungen im Menü Einstellungen

  - Kontextmenü

  - Verbesserter Bildaufbau mittels pixmap-Puffer

  - Funktionsparameter können separat in ASCII-Dateien gespeichert werden

  - Funktionswerte können in Form von ASCII-Dateien exportiert werden

  - Optionale Anzeige des Funktionsquelltexts in Parameterdialogen

  - Optionale Berechnung der Bounding Box für PostScript-Dateien (mit Hilfe von Ghostscript)

  - MimeType für kpl-Plotdateien

- Version 0.1 (13. April 1999, erste Version)

## Benutzung von &kpl;

### Befehlszeilenoptionen

#### Angabe von Dateien

Beim Aufruf von &kpl; von der Befehlszeile können zum Öffnen die Namen einer oder mehrerer Plot- oder Datendateien (entweder lokale Dateinamen oder URLs) übergeben werden:

    kpl
    Datei

Im Fall von mehr als einer angegebenen Datei und aktivierter Einstellung Dateien hinzufügen werden alle Dateien in einem Fenster angezeigt, andernfalls wird für jede Datei ein neues Fenster geöffnet.

Wenn Autoplot aktiviert ist, erfolgt die grafische Darstellung der Dateien unmittelbar.

Wenn zusätzlich Autofit aktiviert ist, erfolgt bei einer Datendatei auch die Parameteranpassung an eine Funktion und deren Darstellung unmittelbar.

#### Weitere Befehlszeilenoptionen

Die folgenden Hilfe-Befehlszeilenoptionen sind verfügbar:

`kpl `--help``

- Hierdurch werden die grundlegenden Befehlszeilenoptionen aufgelistet.

`kpl `--help-qt``

- Hierdurch werden die Optionen aufgelistet, mit denen das Verhalten von Qt beeinflußt werden kann.

`kpl `--help-kde``

- Hierdurch werden die Optionen aufgelistet, mit denen das Verhalten von KDE beeinflußt werden kann.

`kpl `--help-all``

- Hierdurch werden alle Befehlszeilenoptionen aufgelistet.

`kpl `--author``

- Zeigt den Namen des Autors von &kpl; an.

`kpl `--version``

- Zeigt Versionsinformationen für Qt, KDE und &kpl; an. Auch verfügbar durch `kpl `-v``

`kpl `--license``

- Zeigt Lizenzinformationen für &kpl; an.

### Start über Konqueror

&kpl; kann zur Anzeige einer Plotdatei durch Anklicken ihres Symbols in einem &konqueror;-Dateimanagerfenster oder durch Auswahl dieser Aktion in ihrem Kontextmenü gestartet werden.

### Drag and Drop

&kpl; unterstützt das Drag-and-Drop-Protokoll von KDE und Qt. Das bedeutet, daß Sie eine oder mehrere Plot- oder Datendateien öffnen können, indem Sie ihre Symbole mit der Maus auf das kpl-Fenster ziehen. Datendateien werden dabei an der Dateierweiterung `.dat`, Plotdateien an der Dateierweiterung `.plo` erkannt. Neben lokalen Dateien können auf diese Weise auch URLs übergeben werden.

Im Fall von mehr als einer übergegebenen Datei und aktivierter Einstellung Dateien hinzufügen werden alle Dateien in einem Fenster angezeigt, andernfalls wird für jede Datei ein neues Fenster geöffnet.

### Positionierung mit der Maus

Zusätzlich zur Eingabe über die Dialoge unterstützt &kpl; die Anderung der Position von Rahmen-, 3D-Feld-, 3D-Funktions-, Legenden-, Linien-, Pfeil-, Bogen-, Rechteck-, Ellipsen-, Maßstabs- und Bildbestandteilen durch Ziehen mit der Maus.

Um einen Bestandteil zu bewegen, muß seine Fläche mit der linken Maustaste angeklickt werden. Beim Bewegen der Maus bei gedrückter linker Maustaste wird die aktuelle Position durch ein gestricheltes Rechteck markiert und zusätzlich in der Statuszeile angezeigt. Die Darstellung wird nach Loslassen der Maustaste entsprechend der neuen Position aktualisiert.

Das Bewegen eines Rahmenbestandteils bewirkt auch entsprechende Positionsänderungen aller seiner zugehörigen Bestandteile.

Mehrere Bestandteile können zum gleichzeitigen Positionieren durch Anklicken bei gedrückter Taste Strg ausgewählt werden.

### Skalierung mit der Maus

Zusätzlich zum Weg über den Dialog Rahmen kann eine angezeigte 2D-Darstellung mit einem Rahmenbestandteil bequem mit Hilfe der Maus neu skaliert werden. Dazu wird eine Ecke eines Rechtecks durch Drücken der mittleren Maustaste festgelegt. Dann wird durch diagonales Bewegen der Maus ein gestricheltes Rechteck aufgezogen. Seine endgültige Größe wird durch den Punkt definiert, an dem die Maustaste losgelassen wird. Mindestens eine Ecke des Rechtecks muß innerhalb des Rahmens liegen. Die Koordinaten der Ecken in Dateneinheiten werden dann mit Hilfe der Autoskalierung von Kpl auf entprechende Skalierungswerte des Rahmenbestandteils gerundet und die Darstellung wird neu angezeigt.

Die Bereiche für die x-Achsen von Funktions- und Spline-Bestandteilen werden entsprechen verändert; die Schrittweite der x-Werte wird auf 0 gesetzt (entsprechend einer automatischen Teilung der Bereiche in 100 Intervalle).

### Statuszeile

In der Statuszeile am unteren Rand des &kpl;-Fensters werden rechts die horizontale und vertikale Position des Mauszeigers in cm angezeigt, bei Positionen im Datenbereich einer 2D-Darstellung zusätzlich in Dateneinheiten. Beim Ändern der Position von Bestandteilen durch Ziehen mit der Maus wird deren aktuelle Position angezeigt.

Links neben diesen Positionsfeldern wird der Status der Einstellung Dateien hinzufügen angezeigt.

Ganz links erscheint die Kurzhilfe zu den verschiedenen Aktionen.

## Befehlsreferenz

### Das Menü Datei

Strg N Datei Neu

- Erzeugt einen neuen leeren Plot zum Einfügen von Bestandteilen über das Dialogfenster Bestandteile.

Strg O Datei Plotdatei öffnen

- Öffnet eine oder mehrere existierende Plotdateien.

  In einer Plotdatei sind alle Einstellungen einer grafischen Darstellung als Text gespeichert.

  Wenn die Einstellung Autoplot aktiviert ist, erfolgt automatisch nach Einlesen der Datei deren grafische Darstellung.

  Im Fall von mehr als einer ausgewählten Datei und aktivierter Einstellung Dateien hinzufügen werden alle Dateien in einem Fenster angezeigt, andernfalls wird für jede Datei ein neues Fenster geöffnet.

Datei Datendatei öffnen

- Öffnet eine oder mehrere existierende Datendateien.

  Die Zahlenwerte müssen in Form von Zeilen und Spalten einer ASCII-Datei vorliegen. Innerhalb einer Zeile können Zahlenwerte durch Kommas, Tabulator- oder Leerzeichen voneinander separiert sein.

  Als Dezimalzeichen kann im Dialog Punkt oder Komma gewählt werden.

  Kommentarzeilen müssen mit dem Zeichen # beginnen.

  Die Anzahl von Zeilen und Spalten wird von &kpl; erkannt. Leerzeilen werden ignoriert.

  Wenn die Einstellung Autoplot aktiviert ist, erfolgt nach Einlesen der Datei unmittelbar deren Darstellung als 2D-Grafik entsprechend den über die Autoplot-Einstellungen gesetzten Werten.

  Im Fall von mehr als einer ausgewählten Datei und aktivierter Einstellung Dateien hinzufügen werden alle Dateien in einem Fenster angezeigt, andernfalls wird für jede Datei ein neues Fenster geöffnet.

  Das Einlesen von Datendateien überschreibt eine gegebenfalls vorher dargestellte Grafik, wenn die Einstellung Dateien hinzufügen deaktiviert ist. Soll eine Datendatei zusätzlich in eine bestehende grafische Darstellung aufgenommen werden, ist stattdessen über das Dialogfenster Bestandteile ein neuer Bestandteil zu erstellen oder die Einstellung Dateien hinzufügen zu aktivieren.

Datei Zuletzt geöffnete Dateien

- Öffnet ein Untermenü zur Auswahl einer von bis zu zehn kürzlich geöffneten Plot- oder Datendateien.

  Im Fall der aktivierter Einstellung Dateien hinzufügen wird die Datei gegebenenfalls einer aktuellen Darstellung hinzugefügt, andernfalls wird die aktuelle Darstellung ersetzt.

Strg S Datei Speichern

- Speichert erzeugte bzw. geänderte Plotdatei.

Datei Speichern unter

- Erlaubt das Abspeichern einer Darstellung in einer neuen Plotdatei.

Strg W Datei Schließen

- Schließt die aktuelle Plotdatei.

Strg P Datei Drucken

- Gibt die grafische Darstellung auf einen aus einer Liste zu wählenden Drucker oder eine Datei aus.

Datei Plot anzeigen

- Zeigt grafische Darstellung im Fenster an beziehungsweise aktualisiert die Anzeige nach Änderungen.

  Wenn die Option Autoplot aktiviert ist, erfolgt die grafische Darstellung nach Einlesen von Plot- oder Datendateien beziehungsweise nach Änderungen unmittelbar.

Datei PostScript-Ausgabe

- Speichert die grafische Darstellung als PostScript-Datei im Hochformat oder im Querformat.

  Im Vergleich zu der über die Auswahl Drucken mit in Datei drucken erzeugten Ausgabe sind diese Dateien leicht zu bearbeiten. So sind z. B. die Koordinaten von 2D-Datenpunkten unskaliert entsprechend den Werten aus Datendateien bzw. Funktionsberechnungen enthalten.

  Wenn PS-Ausgabe drucken im Menü Einstellungen aktiviert ist, wird nach Schreiben der PostScript-Datei ein Druck-Dialog geöffnet, um sie an einen Drucker zu senden.

  Die Ausgabe kann als Encapsulated PostScript (EPS) zum Importieren von Grafiken in anderen Anwendungen genutzt werden. Die Bounding Box wird exakt berechnet, wenn PS Bounding Box berechnen im Menü Einstellungen aktiviert ist.

Datei PostScript-Vorschau

- Erzeugt eine temporäre PostScript-Datei im Hochformat oder im Querformat und zeigt sie durch Aufruf von KGhostView an. Dies erlaubt den Ausdruck der PostScript-Ausgabe ohne dauerhaftes Anlegen einer PostScript-Datei.

Datei Neues Fenster

- Öffnet eine neue Instanz von &kpl;.

Datei Fenster schließen

- Schließt das Fenster. Wenn das geschlossene Fenster die letzte geöffnete Instanz war, wird &kpl; beendet.

Strg Q Datei Beenden

- Beendet &kpl;.

### Das Menü Bearbeiten

Strg Z Bearbeiten Rückgängig

- Macht letzte Änderung der Darstellung rückgängig. Bis zu 20 Zustände sind gespeichert.

Strg Umschalt Z Bearbeiten Wiederherstellen

- Stellt letzte Rückgängig gemachte Änderung wieder her.

Bearbeiten Bestandteile

- Öffnet das Dialogfenster Bestandteile (wenn nicht bereits geöffnet), in dem Bestandteile der grafischen Darstellung hinzugefügt, geändert, gelöscht und kopiert werden können. Auch Parameteranpassungen von Funktionen an Datensätze aus Dateien können hier vorgenommen werden. Der Dialog kann während der Arbeit mit &kpl; geöffnet bleiben.

### Das Menü Ansicht

Strg Plus Ansicht Vergrößern

- Vergrößert um 20 %.

Strg Minus Ansicht Verkleinern

- Verkleinert um 20 %.

Ansicht Zoom

- Hier kann der Vergrößerungsfaktor der Bildschirmdarstellung eingestellt werden.

F5 Ansicht Anzeige auffrischen

- Hierdurch wird die aktuelle Daten- oder Plotdatei neu eingelesen und dargestellt. Dabei wird Autoplot eingeschaltet.

Ansicht Periodisch neu laden

- Hier kann periodisches Aktualisieren der Darstellung von Plot- und Datendateien aktiviert werden. Auch das Aktualisierungsintervall kann eingestellt werden. Dabei wird gegebenenfalls Autoplot eingeschaltet.

### Das Menü Einstellungen

Einstellungen Werkzeugleiste anzeigen

- Hiermit wird die Anzeige der Werkzeugleiste ein- und ausgeschaltet.

Einstellungen Statuszeile anzeigen

- Hiermit wird die Anzeige der Statuszeile ein- und ausgeschaltet.

Einstellungen Funktionsquelltext anzeigen

- Hierdurch kann die Anzeige der Quelltextdateien der Funktionen in den Dialogen für Funktionsparameter ein- und ausgeschaltet werden.

Einstellungen Autoplot

- Hierdurch kann das automatische Darstellen nach Einlesen von Daten- und Plotdateien sowie nach Änderungen ein- und ausgeschaltet werden.

Einfg Einstellungen Dateien hinzufügen

- Hierdurch kann das Hinzufügen von Plot- und Datendateien zu existierenden Darstellungen beziehungsweise deren Überschreiben ein- und ausgeschaltet werden. Die aktuelle Einstellung wird in der Statuszeile angezeigt.

Einstellungen PS Bounding Box berechnen

- Hierdurch kann das Berechnen der Bounding Box für erzeugte PostScript-Dateien ein- und ausgeschaltet werden. Die Berechnung benötigt GhostScript und geht von einem für alle Teile des Plots genügend groß eingestelltem Seitenformat auf der Seite Grundeinstellungen im Einstellungsdialog von &kpl; aus. Ohne Berechnung wird die Bounding Box entsprechend diesem Seitenformat gesetzt.

Einstellungen PS-Ausgabe drucken

- Hiermit wird die Anzeige eines Druckdialogs nach Erzeugung von PostScript-Dateien ein- und ausgeschaltet.

Einstellungen Absolute Pfade speichern

- Hier kann das Speichern von absoluten Pfaden der Daten- und Bibliotheksdateien in Plotdateien ein- und ausgeschaltet werden. Im eingeschalteten Fall werden die Pfade immer absolut gespeichert. Dies ist die Standardeinstellung, kompatibel zu älteren Versionen von &kpl;. Im ausgeschalteten Fall werden, wenn möglich, Pfade relativ zur Plotdatei gespeichert. Diese Einstellung erlaubt das Verschieben von Verzeichniszweigen, die die Plotdatei und alle von ihr benötigten Dateien enthalten.

Einstellungen Warnung bei ungesicherten Änderungen

- Hierdurch kann die Anzeige der Warnung bei ungesicherten Änderungen ein- und ausgeschaltet werden.

Einstellungen Einstellungen am Ende speichern

- Hierdurch kann das automatische Speichern der aktuellen Fenstergröße, der Sichtbarkeit des Dialogs Bestandteile und der Einstellungen im Menü Einstellungen bei Programmende ein- und ausgeschaltet werden.

  Diese Einstellung selbst wird ebenfalls gespeichert.

Einstellungen Einstellungen speichern

- Hiermit werden die aktuelle Fenstergröße, die Sichtbarkeit des Dialogs Bestandteile und die Einstellungen im Menü Einstellungen gespeichert.

Einstellungen Tastenzuordnungen vornehmen

- Öffnet den Dialog Tastenzuordnungen vornehmen, in dem die Tastaturkürzel für die Aktionen von &kpl; geändert werden können.

Einstellungen Werkzeugleisten einrichten

- Öffnet den Dialog Werkzeugleisten einrichten, in dem die in der Werkzeugleiste verfügbaren Aktionen geändert werden können.

Einstellungen Benachrichtigungen festlegen

- Öffnet das Dialogfenster Benachrichtigungs-Einstellungen, in dem Benachrichtigungen über fertiggestellte Plots und Parameteranpassungen festgelegt werden können.

Einstellungen Kpl einrichten

- Öffnet das Dialogfenster Kpl-Einstellungen. Auf der Seite Grundeinstellungen können Voreinstellungen für die Darstellungsgröße und die Farben sowie das Ausgabeformat für Funktionsparameter in Dateien und Dialogen vorgenommen werden. Auch die Umschalteinstellungen des Menüs Einstellungen können hier auf ein Mal vorgenommen werden.

  Die Seite Autoplot-Einstellungen enthält die Einstellungen für die automatisch skalierte Darstellung von 2D-Datendateien, die mittels Befehlszeilenparameter, Dateimenü oder Drag-and-Drop-Technik eingelesen werden.

  Die Seite Autofit-Einstellungen enthält die Einstellungen für die automatische Parameteranpassung von Funktionen an 2D-Datensätze aus Dateien.

### Das Menü Hilfe

Hilfe Handbuch zu Kpl

- Hier steht die Hilfe für &kpl; zur Verfügung.

Hilfe Über Kpl

- Zeigt wichtige Informationen zu &kpl; an.

Hilfe Berichten Sie Probleme oder Wünsche

- Öffnet einen Dialog zum Erstellen eines Problemberichts an den Autor von &kpl;.

Hilfe Über KDE

- Zeigt wichtige Informationen zu KDE an.

### Kontextmenüs

#### Bestandteil

Das Anklicken des rechteckigen Bereichs eines positionierbaren Bestandteils (Rahmen, 3D-Feld, 3D-Funktion, Bild, Legende, Text, Linie, Pfeil, Bogen, Rechteck, Ellipse oder Maßstab) in der Darstellung mit der rechten Maustaste läßt ein Kontextmenü mit zugehörigen Aktionen (auch im Dialog Bestandteile auswählbar) erscheinen:

Bearbeiten

- Öffnet das entsprechende Dialogfenster für die Einstellungen des Bestandteils.

Löschen

- Löscht den Bestandteil.

Kopieren

- Dupliziert den Bestandteil. Der kopierte Bestandteil wird ans Ende der Liste gehängt, wenn Bestandteil anhängen im Dialog Bestandteile aktiviert ist; andernfalls wird er vor dem ausgewählten Bestandteil eingefügt.

Aktiv

- Ändert den Aktivierungszustand des Bestandteils. Aktivierte Bestandteile werden grafisch dargestellt, deaktivierte versteckt.

#### Darstellung

Anklicken des Darstellungsfensters mit der rechten Maustaste in einem keinem positionierbaren Bestandteil zugehörigen Bereich läßt ein Kontextmenü mit den wichtigsten Aktionen erscheinen:

Neu

- Erzeugt eine neue Plotdatei.

Plotdatei öffnen

- Öffnet eine oder mehrere existierende Plotdateien.

Datendatei öffnen

- Öffnet eine oder mehrere existierende Datendateien.

Speichern

- Speichert aktuelle Plotdatei.

Speichern unter

- Erlaubt das Abspeichern einer Darstellung in einer neuen Plotdatei.

Drucken

- Druckt die Darstellung aus.

PostScript-Ausgabe

- Speichert die grafische Darstellung als PostScript-Datei.

Bestandteile

- Öffnet das Dialogfenster Bestandteile.

Vergrößern

- Vergrößert um 20 %.

Verkleinern

- Verkleinert um 20 %.

Anzeige auffrischen

- Lädt aktuelle Datei neu und frischt die Anzeige auf.

### Tastenzuordnungen

Viele der Tastenzuordnungen können über das Menü Einstellungen geändert werden. Standardgemäß sind folgende Zuordnungen eingestellt:

Tastenzuordnung | Aktion
Strg N | Erzeugt eine neue Plotdatei.
Strg O | Öffnet eine existierende Plotdatei.
Strg S | Speichert aktuelle Plotdatei.
Strg W | Schließt aktuelle Plotdatei.
Strg P | Druckt die Darstellung aus.
Strg Q | Beendet &kpl;.
Strg Z | Macht letzte Anderung rückgängig.
Strg Umschalt Z | Stellt Zustand vor Rückgängigmachen wieder her.
Strg Plus | Vergrößert um 20 %.
Strg Minus | Verkleinert um 20 %.
F5 | Lädt aktuelle Datei neu und frischt die Anzeige auf.
Einfg | Schaltet das Hinzufügen von Plot- und Datendateien zu existierenden Darstellungen beziehungsweise deren Überschreiben ein- und aus.
Nach links | Verschiebt Fenster nach links.
Nach rechts | Verschiebt Fenster nach rechts.
Nach unten | Verschiebt Fenster nach unten.
Nach oben | Verschiebt Fenster nach oben.
Voriger | Verschiebt Fenster eine Bildhöhe nach oben.
Nächster | Verschiebt Fenster eine Bildhöhe nach unten.
Strg Voriger | Verschiebt Fenster eine Bildbreite nach links.
Strg Nächster | Verschiebt Fenster eine Bildbreite nach rechts.
Pos1 | Verschiebt Fenster an unteren Bildrand.
Ende | Verschiebt Fenster an oberen Bildrand.
Strg Pos1 | Verschiebt Fenster an linken Bildrand.
Strg Ende | Verschiebt Fenster an rechten Bildrand.

### Werkzeugleiste

Die Werkzeugleiste kann über das Menü Einstellungen konfiguriert werden. Standardgemäß enthält sie die folgenden Knöpfe:

| Text | Aktion
| Neu | Erzeugt eine neue Plotdatei.
| Plotdatei öffnen | Öffnet eine existierende Plotdatei.
| Datendatei öffnen | Öffnet eine existierende Datendatei.
| Speichern | Speichert aktuelle Plotdatei.
| Drucken | Druckt die Darstellung aus.
| Rückgängig | Macht letzte Anderung rückgängig.
| Wiederherstellen | Stellt Zustand vor Rückgängigmachen wieder her.
| Vergrößern | Vergrößert um 20 %.
| Verkleinern | Verkleinert um 20 %.
| Anzeige auffrischen | Lädt aktuelle Datei neu und frischt die Anzeige auf.
| Handbuch zu Kpl | Zeigt &kpl;-Hilfeseiten an.

## Die Dialoge

### Bestandteile

Die Liste enthält gegebenenfalls die bereits vorhandenen Bestandteile einer grafischen Darstellung. Dabei sind bei einem Rahmen, einem Bogen, einem Rechteck und einer Ellipse Position und Größe des Rahmens angegeben, bei einem Feld der Name der Datendatei sowie die Spaltenindizes für x- und y-Werte, bei einem 3D-Feld der Name der Datendatei, bei einer Funktion und einer 3D-Funktion der Name der shared library und der der Funktion, bei einer parametrischen Funktion die Namen der shared libraries und die der Funktionen für x(t) und y(t), bei einem Spline der Grad des Polynoms, bei einer Legende und einem Text der Text und die Position, bei einem Maßstab die Orientierung und die Position, bei einer Linie und einem Pfeil Position und Richtung. Bei einem Feld, einer Funktion oder parametrischen Funktion und einer Legende wird außerdem das Plotsymbol in der gewählten Farbe angezeigt. Farben werden auch für Bogen-, Rechteck-, Ellipsen-, Linien-, Pfeil- und Maßstabsbestandteile angezeigt. Wenn der Dialog geöffnet bleibt, zeigt er Änderungen in der Bestandteilliste an.

Die Baumansicht zeigt Bestandteile des Typs Rahmen eine Hierachieebene höher als die anderen Bestandteile. Diese anderen Bestandteile, die in der Liste einem Rahmen folgen, werden innerhalb des Rahmens dargestellt. Die Reihe von einem Rahmen zugeordneten Bestandteilen endet, wenn ein anderer Rahmen folgt. Bestandteile ohne Rahmen, d. h. solche, die nicht auf einen Rahmen folgen, werden ohne Rahmen dargestellt. Funktions- und Datenwerte werden dann in cm interpretiert. 3D-Felder und 3D-Funktionen beinhalten die Funktion von Rahmen und benötigen deshalb keinen zusätzlichen Rahmenbestandteil; ihnen können auch weitere Bestandteile zugeordnet sein. Die Position des ausgewählten Bestandteils kann mit den Auf- und Abwärtsknöpfen links neben der Baumansicht geändert werden. Die Position eines Bestandteils kann auch mit der Maus mittels Drag and Drop innnerhalb der Liste geändert werden.

Jedem Bestandteil ist ein Auswahlfeld vorangestellt, daß seinen Aktivierungszustand anzeigt. Aktivierte Bestandteile werden grafisch dargestellt, deaktivierte versteckt. Der Zustand kann durch Anklicken des Auswahlfelds mit der linken Maustaste oder über das Kontextmenü geändert werden, das nach Anklicken eines Bestandteils mit der rechten Maustaste erscheint. Ein Bestandteil kann ohne Änderung seines Zustands durch Anklicken rechts neben dem Auswahlfeld oder mittels der Pfeiltasten ausgewählt werden.

Der Druckknopf Neu für das Hinzufügen eines neuen Bestandteils öffnet das Dialogfenster Neuer Bestandteil, in dem der Typ des Bestandteils gewählt werden kann.

Der Druckknopf Bearbeiten führt zur Anzeige des entsprechenden Dialogfensters für die Einstellungen des ausgewählten Bestandteils. Bearbeiten kann auch aus einem Kontextmenü ausgewählt werden, das nach Anklicken eines Bestandteils mit der rechten Maustaste erscheint. Außerdem kann das Dialogfenster für einen ausgewählten Bestandteil durch Betätigen der Enter-Taste geöffnet werden.

Über den Druckknopf Anpassen können Funktionen und Splines an Datensätze angepasst werden. Bei Auswahl von einer oder mehrerer Funktionen und einem oder mehrerer Felder öffnet der Druckknopf den Dialog Parameteranpassung zur Durchführung einer (mehrdimensionalen) Parameteranpassung der Funktion(en) an den Datensatz bzw. die Datensätze der Feldern. Enthält die Bestandteilliste genau eine Funktion und ein Feld, so ist keine Mehrfachauswahl nötig und der Dialog kann direkt durch Betätigen des Druckknopfs zur Durchführung einer eindimensionalen Parameteranpassung geöffnet werden. Andernfalls müssen Sie eine gleiche Anzahl von Funktionen und Feldern auswählen. Dies kann durch Anklicken der entsprechenden Bestandteile bei gedrückter Strg-Taste erreicht werden. Im Fall von mehrdimensionaler Anpassung wird die erste ausgewählte Funktion in der Liste an den ersten ausgewählten Datensatz in der Liste angepasst und so fort. Bei Auswahl eines Splines und eines Felds öffnet der Druckknopf den Dialog Glättende Spline-Anpassung zur Durchführung einer Anpassung eines (glättenden) Splines an den Datensatz des Feldes.

Mit dem Druckknopf Löschen können der bzw. die ausgewählte(n) Bestandteil(e) gelöscht werden. Das Löschen eines Bestandteils kann auch über sein Kontextmenü vorgenommen werden.

Über den Druckknopf Kopieren können der bzw. die ausgewählte(n) Bestandteil(e) dupliziert werden. Das Kopieren eines Bestandteils kann auch über sein Kontextmenü vorgenommen werden.

Neue oder kopierte Bestandteile werden ans Ende der Liste gehängt, wenn Bestandteil anhängen aktiviert ist; andernfalls werden sie vor den ausgewählten Bestandteilen eingefügt.

In der Baumansicht können Rahmenbestandteile durch Anklicken des Symbols - geschlossen werden um die zugehörigen Bestandteile zur Verbesserung der Übersichtlichkeit zu verstecken. Das Öffnen zum Anzeigen der zugehörigen Bestandteile geschieht durch Anklicken des Symbols +. Der Zustand der Rahmenbestandteile wird in den Plotdateien gespeichert.

Über den Druckknopf Schließen wird das Dialogfenster geschlossen. Der Dialog kann während der Arbeit mit &kpl; geöffnet bleiben.

### Neuer Bestandteil

Über die Druckknöpfe Rahmen, Feld, Funktion, Parametrische Funktion, Spline, 3D-Feld, 3D-Funktion, Bild, Legende, Text, Linie, Pfeil, Bogen, Rechteck, Ellipse und Maßstab kann der Typ des neuen Bestandteils gewählt werden.

Skalierbare Bestandteile wie Felder und Funktionen übernehmen die Normierungsfaktoren des letzten vorangehenden, zum gleichen Rahmen gehörenden Bestandteils.

Nach Auswahl des Typs wird das entsprechende Dialogfenster für die Einstellungen des neuen Bestandteils angezeigt.

Das Dialogfenster kann ohne Auswahl mit dem Druckknopf Abbrechen verlassen werden.

### Rahmen

Hier können die Einstellungen für Rahmen und Beschriftung der Darstellung vorgenommen werden.

In der Gruppe Achsenmodus kann gewählt werden, ob die Darstellung nur einen Rahmen um das Datenfenster oder zusätzlich Tickmarken an den linken und unteren Seiten des Rahmens oder ein Gitter erhält. Tickmarken und Gitter können mit Zahlenwerten beschriftet werden.

In der Gruppe Farben werden die Farben für den Rahmen und das Gitter bzw. die Tickmarken festgelegt. Die Auswahl erfolgt über das Dialogfenster Farbauswahl, das über die farbigen Drucknöpfe erreicht werden kann.

Über die Gruppe Automatik kann die Skalierung der Darstellung bequem automatisch durch Betätigen des Druckknopfs Autoskalierung erfolgen, wenn bereits in weiteren Bestandteilen der Darstellung Datensätze oder Funktionen festgelegt sind. Bei aktiviertem Auswahlfeld Autonormierung werden dabei automatisch Zehnerpotenzen bestimmt, mit denen sehr große oder sehr kleine Zahlenwerte in der Darstellung multipliziert erscheinen. Diese Normierungsfaktoren werden, wenn sie verschieden von 1 sind, in die Beschriftung der Achsen übernommen.

In der Gruppe Fenster können Lage und Größe des Datenfensters festgelegt werden.

In der Gruppe Skalierung kann die Darstellung durch Angabe der Datenkoordinaten für die linke untere und die rechte obere Ecke des Datenfensters skaliert werden. Die Einstellungen können auch über den Druckknopf Autoskalierung automatisch vorgenommen werden. Die Skalierung kann individuell für die Achsen durch Auswahl von log auf logarithmisch gesetzt werden.

In der Gruppe Achsen können die Abstände xtic und ytic von Tickmarken bzw. Gitterlinien festgelegt werden. Mit xoff und yoff können Abstände zwischen den ersten beschrifteten Ticks und dem jeweiligen Skalenanfang eingestellt werden. Bei der Wahl von Achsen mit Ticks können zwischen den großen gegebenenfalls beschrifteten Ticks kleine Ticks gezeichnet werden. Die Zahl der Intervalle, in die der Abstand zwischen zwei großen Ticks unterteilt wird, können über mticx und mticy eingestellt werden. Bei Wahl von beschrifteten Achsenmodi kann die Zahl der Nachkommastellen über ndigx und ndigy eingestellt werden. Werte von -1 führen dabei zur Unterdrückung der Dezimalpunktausgabe. Die Einstellungen können auch über den Druckknopf Autoskalierung automatisch vorgenommen werden, wenn bereits in weiteren Bestandteilen der Darstellung Datensätze oder Funktionen festgelegt sind.

Im Falle logarithmischer Skalierung haben die Einstellungen eine teilweise andere Bedeutung. ndigx und ndigy können nicht eingestellt werden; die Zahl der Nachkommastellen wird automatisch bestimmt. Die Werte von xtic und ytic geben die Faktoren zwischen erstem und zweitem großen Tick vor und werden auf 2, 5 oder 10 gerundet. Immer zehn kleine Ticks pro Dekade werden gezeichnet, wenn mticx bzw. mticy auf größer als 1 gestellt sind. Im Unterschied zu linearer Skalierung werden diese als Gitterlinien gezeichnet, wenn ein Gitterachsenmodus ausgewählt ist. Die Autonormierungsoption bei Autoskalierung wird im Fall logarithmischer Skalierung ausgeschaltet.

In der Gruppe Beschriftung kann Text für die Achsenbeschriftungen und eine Kopfzeile festgelegt werden. Text mit Sonderzeichen gibt man am bequemsten über das Dialogfenster Text editieren ein, das über die Drucknöpfe rechts neben den Eingabefeldern erreicht werden kann. Eine Einstellung von Zehnerexponenten für die gegebenfalls in die Beschriftung eingefügten Normierungsfaktoren kann mit iex und iey hier auch manuell erfolgen. Die Plazierung der x-Achsenbeschriftung kann durch Auswahl von Unten und Oben eingestellt werden, die der y-Achsenbeschriftung durch Auswahl von Links und Rechts.

Im Feld Symbolgröße kann die relative Größe von Zeichensätzen und Plotsymbolen sowie die relative Breite von Linien (bezogen auf die Breite des Datenfensters) festgelegt werden. Die Einstellung von 100 % entspricht dabei dem Normalwert. Zusätzlich kann in den Einstellungsdialogen der entsprechenden Bestandteile noch ein individueller Größenfaktor eingestellt werden.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf Anwenden werden die Änderungen gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### Feld

Im Dialogfenster Feld können die Einstellungen für den Datensatz aus einer Datendatei vorgenommen werden.

Der Druckknopf Datei öffnet einen Dialog zur Auswahl einer Datendatei. Das Dezimalsymbol zum Lesen der Datei kann in diesem Dialog ausgewählt werden. Der Pfad der Dateiwird rechts neben dem Druckknopf angezeigt. Der Knopf rechts neben diesem Feld kann zum erneuten Laden einer Datendatei nach einer Änderung ihres Inhalts benutzt werden. Die Auswahl einer Datei führt zur automatischen Bestimmung geeigneter Werte für die nachstehend beschriebenen Einstellungen.

Durch Markieren von Interne Daten können die Daten innerhalb der Plotdatei gespeichert werden. Aus Effektivitätsgründen sollte dies nicht mit zu großen Datensätzen geschehen. Nur die zur Anzeige eingestellten Spalten werden abgespeichert. Interne Daten können über Bearbeiten eingegeben und verändert werden. Nach Aufheben der Markierung von Interne Daten wird ein Dateiauswahldialog geöffnet, über den eine separate Datendatei zum (Re)exportieren ausgewählt werden kann.

In x-Spalte und y-Spalte können die Spalten für Abszissen- und Ordinatenwerte ausgewählt werden. 0 entspricht dabei der ersten Spalte.

Bei aktiviertem Auswahlfeld Fehlerbalken wird die als Fehlerspalte angegebene Spalte zur Darstellung von Fehlerbalken herangezogen. Diese Spalte wird gegebenenfalls auch bei Parameteranpassungen von Funktionen an die Datensätze zur Gewichtung der Daten herangezogen.

Als Startindex wird der Zeilenindex für den ersten darzustellenden Datenpunkt angegeben. 0 entspricht dabei der ersten Zeile in der Datendatei (Kommentarzeilen werden nicht gezählt). Zusammen mit der Anzahl Punkte wird die darzustellende Portion der Datei ausgewählt.

Die x- und y-Werte können in der Darstellung durch Eingabe von Werten für x-Verschiebung und y-Verschiebung verschoben werden.

Es können manuell Faktoren für x-Normierung und y-Normierung angegeben werden. Diese können auch über das Dialogfenster Rahmen mittels Autoskalierung bei aktivierter Autonormierung automatisch bestimmt werden.

Zur Darstellung der Daten können Plotsymbole (Symbol <= 0) oder Linien (Symbol > 0) gewählt werden. Am einfachsten geschieht dies über das Dialogfenster Linien und Symbole, das über den Druckknopf rechts neben dem Anzeigefeld erreicht werden kann, der auch das aktuelle Plotsymbol anzeigt.

Die Größe der Linien bzw. Symbole kann als zusätzlicher individueller Faktor zu der globalen Einstellung des zugehörigen Rahmenbestandteils festgelegt werden.

Die Farbe der Linien bzw. Symbole wird über das Dialogfenster Farbauswahl eingestellt, das über den farbigen Druckknopf geöffnet werden kann.

Durch Auswahl von einem Füllmuster kann, anstelle einer Darstellung durch Linien oder Symbole, das durch die Punkte des Feldes gegebene Polygon vollständig mit einer Farbe oder mit einer Schraffur gefüllt werden.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf Anwenden werden die Änderungen gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### Funktion

Im Dialogfenster Funktion können die Einstellungen für Funktionsplots vorgenommen werden.

In der Gruppe y(x) kann unter Bibliothek der Pfad der shared library eingetragen werden, die die gewünschte Funktion enthält. Der Druckknopf rechts neben dem Eingabefeld öffnet dazu einen Dateiauswahldialog.

Der Name der Funktion kann in einem weiteren Feld angegeben werden. Befindet sich im gleichen Verzeichnis wie die shared library auch eine Moduldefinitionsdatei gleichen Namens mit der Dateierweiterung `.def`, so kann über den Druckknopf rechts neben dem Eingabefeld das Dialogfenster Funktionen geöffnet werden, in dem die Funktion aus einer Liste ausgewählt werden kann.

Über den Druckknopf Bearbeiten kann das Dialogfenster Parameter geöffnet werden, in dem Zahlenwerte für maximal 20 Parameter der Funktion eingegeben werden können. Bei aktivierter Einstellung Funktionsquelltext anzeigen im Menü Einstellungen und Vorhandensein einer C- bzw. C++-Quelltextdatei gleichen Namens wie die shared library und der Dateierweiterung `.c` bzw. `.cpp` im gleichen Verzeichnis wird deren Inhalt rechts neben den Parametern angezeigt. Über den Druckknopf Laden kann ein Dateiauswahlfenster geöffnet werden, mit dem die Parameter aus einer ASCII-Datei (pro Zeile ein Parameter) eingelesen werden können. Über den Druckknopf Speichern kann ein Dateiauswahlfenster geöffnet werden, mit dem die Parameter in einer ASCII-Datei gespeichert werden können.

In den Feldern xmin und xmax können die Grenzen für das Funktionsargument eingegeben werden. Das Feld Delta x legt die Schrittweite für das Funktionsargument fest. Ein Wert von Null führt dabei zur automatischen Teilung des Bereichs von xmin bis xmax in 100 Intervalle.

Die x- und y-Werte können in der Darstellung durch Eingabe von Werten für x-Verschiebung und y-Verschiebung verschoben werden.

Es können manuell Faktoren für x-Normierung und y-Normierung angegeben werden. Diese können auch über das Rahmen mittels Autoskalierung bei aktivierter Autonormierung automatisch bestimmt werden.

Zur Darstellung der Funktion können Plotsymbole (Symbol <= 0) oder Linien (Symbol > 0) gewählt werden. Am einfachsten geschieht dies über das Dialogfenster Linien und Symbole, das über den Druckknopf rechts neben dem Anzeigefeld erreicht werden kann, der auch das aktuelle Plotsymbol anzeigt.

Die Größe der Linien bzw. Symbole kann als zusätzlicher individueller Faktor zu der globalen Einstellung des zugehörigen Rahmenbestandteils festgelegt werden.

Die Farbe der Linien bzw. Symbole wird über das Dialogfenster Farbauswahl eingestellt, das über den farbigen Druckknopf geöffnet werden kann.

Durch Auswahl von einem Füllmuster kann, anstelle einer Darstellung durch Linien oder Symbole, das durch die Punkte der Funktion gegebene Polygon vollständig mit einer Farbe oder mit einer Schraffur gefüllt werden.

Der Dialog Wurzeln zum Auffinden von Nullstellen der Funktion oder ihrer Ableitungen kann über den Druckknopf Wurzeln geöffnet werden.

Eine Wertetabelle der Funktion kann über den Druckknopf Exportieren als Datendatei exportiert werden. Dazu wird ein Dateiauswahldialog geöffnet.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf Anwenden werden die Änderungen gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### Parametrische Funktion

Im Dialogfenster Parametrische Funktion können die Einstellungen für Plots parametrischer Funktionen vorgenommen werden.

In den Gruppen x(t) und y(t) können auf gleiche Weise die Funktionseinstellungen für die Abszissen- bzw. Ordinatenfunktion vorgenommen werden.

Unter Bibliothek können die Pfade der shared libraries eingetragen werden, die die gewünschten Funktion enthalten. Die Druckknöpfe rechts neben den Eingabefeldern öffnen dazu einen Dateiauswahldialog.

Die Namen der jeweiligen Funktion für x(t) bzw. y(t) können in weiteren Feldern angegeben werden. Befindet sich im gleichen Verzeichnis wie die zugehörige shared library auch eine Moduldefinitionsdatei gleichen Namens mit der Dateierweiterung `.def`, so kann über die Druckknöpfe rechts neben den Eingabefeldern das Dialogfenster Funktionen geöffnet werden, in dem die jeweilige Funktion aus einer Liste ausgewählt werden kann.

Über die Druckknöpfe Bearbeiten kann das Dialogfenster Parameter geöffnet werden, in dem Zahlenwerte für maximal 20 Parameter der jeweiligen Funktion eingegeben werden können. Bei aktivierter Einstellung Funktionsquelltext anzeigen im Menü Einstellungen und Vorhandensein einer C- bzw. C++-Quelltextdatei gleichen Namens wie die shared library und der Dateierweiterung `.c` bzw. `.cpp` im gleichen Verzeichnis wird deren Inhalt rechts neben den Parametern angezeigt. Über die Druckknöpfe Laden kann ein Dateiauswahlfenster geöffnet werden, mit dem die Parameter aus einer ASCII-Datei (pro Zeile ein Parameter) eingelesen werden können. Über die Druckknöpfe Speichern kann ein Dateiauswahlfenster geöffnet werden, mit dem die Parameter in einer ASCII-Datei gespeichert werden können.

In den Feldern tmin und tmax können die Grenzen für das gemeinsame Funktionsargument t eingegeben werden. Das Feld Delta t legt die Schrittweite für das Funktionsargument fest. Ein Wert von Null führt dabei zur automatischen Teilung des Bereichs von tmin bis tmax in 100 Intervalle.

Die x- und y-Werte können in der Darstellung durch Eingabe von Werten für x-Verschiebung und y-Verschiebung verschoben werden.

Es können manuell Faktoren für x-Normierung und y-Normierung angegeben werden. Diese können auch über das Dialogfenster Rahmen mittels Autoskalierung bei aktivierter Autonormierung automatisch bestimmt werden.

Zur Darstellung der Funktionen können Plotsymbole (Symbol <= 0) oder Linien (Symbol > 0) gewählt werden. Am einfachsten geschieht dies über das Dialogfenster Linien und Symbole, das über den Druckknopf rechts neben dem Anzeigefeld erreicht werden kann, der auch das aktuelle Plotsymbol anzeigt.

Die Größe der Linien bzw. Symbole kann als zusätzlicher individueller Faktor zu der globalen Einstellung des zugehörigen Rahmenbestandteils festgelegt werden.

Die Farbe der Linien bzw. Symbole wird über das Dialogfenster Farbauswahl eingestellt, das über den farbigen Druckknopf geöffnet werden kann.

Durch Auswahl von einem Füllmuster kann, anstelle einer Darstellung durch Linien oder Symbole, das durch die Punkte der Funktion gegebene Polygon vollständig mit einer Farbe oder mit einer Schraffur gefüllt werden.

Eine Wertetabelle der Funktionen kann über den Druckknopf Exportieren als Datendatei exportiert werden. Dazu wird ein Dateiauswahldialog geöffnet.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf Anwenden werden die Änderungen gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### Glättender Spline

Im Dialogfenster Glättender Spline können die Einstellungen für Plots von glättenden Spline-Funktionen vorgenommen werden. Die Festlegung des Grades des Splines und die Berechnung seiner Koeffizienten entsprechend einer Anpassung an einen Datensatz eines Felds erfolgt über den Dialog Glättende Spline-Anpassung, der über Anpassen vom Dialog Bestandteile aus zu erreichen ist.

In der Gruppe Ausgabe kann über eine Kombobox ausgewählt werden, ob die Spline-Funktion selbst, eine ihrer Ableitungen oder ihr Integral dargestellt werden soll. Im Fall eines Integrals kann zusätzlich eine Untergrenze, d. h. der x-Wert, bei dem das Integral den Wert Null annimmt, angegeben werden.

In den Feldern xmin und xmax können die Grenzen für das Funktionsargument eingegeben werden. Das Feld Delta x legt die Schrittweite für das Funktionsargument fest. Ein Wert von Null führt dabei zur automatischen Teilung des Bereichs von xmin bis xmax in 100 Intervalle.

Die x- und y-Werte können in der Darstellung durch Eingabe von Werten für x-Verschiebung und y-Verschiebung verschoben werden.

Es können manuell Faktoren für x-Normierung und y-Normierung angegeben werden. Diese können auch über das Dialogfenster Rahmen mittels Autoskalierung bei aktivierter Autonormierung automatisch bestimmt werden.

Zur Darstellung der Funktion können Plotsymbole (Symbol <= 0) oder Linien (Symbol > 0) gewählt werden. Am einfachsten geschieht dies über das Dialogfenster Linien und Symbole, das über den Druckknopf rechts neben dem Anzeigefeld erreicht werden kann, der auch das aktuelle Plotsymbol anzeigt.

Die Größe der Linien bzw. Symbole kann als zusätzlicher individueller Faktor zu der globalen Einstellung des zugehörigen Rahmenbestandteils festgelegt werden.

Die Farbe der Linien bzw. Symbole wird über das Dialogfenster Farbauswahl eingestellt, das über den farbigen Druckknopf geöffnet werden kann.

Durch Auswahl von einem Füllmuster kann, anstelle einer Darstellung durch Linien oder Symbole, das durch die Punkte der Spline-Funktion gegebene Polygon vollständig mit einer Farbe oder mit einer Schraffur gefüllt werden.

Der Dialog Wurzeln zum Auffinden von Nullstellen eines kubischen Splines oder seiner Ableitungen kann über den Druckknopf Wurzeln geöffnet werden.

Eine Tabelle der dargestellten Werte kann über den Druckknopf Exportieren als Datendatei exportiert werden. Dazu wird ein Dateiauswahldialog geöffnet.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf Anwenden werden die Änderungen gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### 3D-Feld

Im Dialogfenster 3D-Feld können die Einstellungen für die dreidimensionale Darstellung eines Datensatzes aus einer Datei vorgenommen werden. Die Daten werden als eine über glättende Spline-Interpolation beschriebene Fläche y(x,z) repräsentiert. Der Dialog ist auf drei Seiten aufgeteilt.

#### Feld

Auf der Seite Feld kann in der Gruppe Daten über den Auswahlknopf ... ein Dialog zur Auswahl einer Datendatei geöffnet werden. Das Dezimalsymbol zum Lesen der Datei kann in diesem Dialog ausgewählt werden. Der aktuelle Pfad wird links daneben angezeigt. Der Knopf an der rechten Seite kann zum erneuten Laden einer Datendatei nach einer Änderung ihres Inhalts benutzt werden.

Durch Markieren von Interne Daten können die Daten innerhalb der Plotdatei gespeichert werden. Aus Effektivitätsgründen sollte dies nicht mit zu großen Datensätzen geschehen. Nur die zur Anzeige eingestellten Spalten werden abgespeichert. Interne Daten können über Bearbeiten eingegeben und verändert werden. Nach Aufheben der Markierung von Interne Daten wird ein Dateiauswahldialog geöffnet, über den eine separate Datendatei zum (Re)exportieren ausgewählt werden kann.

In x-Spalte, y-Spalte und z-Spalte können die Spalten für die Koordinaten der dreidimensionalen Darstellung ausgewählt werden. 0 entspricht dabei der ersten Spalte der Datei. Die Daten werden als Fläche y(x,z) dargestellt. Bei aktiviertem Auswahlfeld Fehlerbalken wird die als Fehlerspalte angegebene Spalte als Standardabweichung der y-Werte zur Gewichtung bei der glättenden Spline-Interpolation herangezogen. Der Glättungsfaktor beeinflusst die mittlere Abweichung der Spline-Funktion von den y-Werten des Datensatzes und gibt in diesem Fall den Faktor an, um den sich im Mittel die Abweichungen vom Fehler der Daten unterscheiden sollen. Ein Wert von 0 führt zu einem nichtglättenden Spline. In diesem Fall müssen die x- und z-Koordinaten des Datensatzes auf Gitterplätze fallen; im Fall eines glättenden Splines können die Koordinaten frei in der x,z-Ebene plaziert sein. Ist das Feld Fehlerbalken nicht aktiviert, wird der Wert des Glättungsfaktors direkt als konstante Standardabweichung der y-Werte herangezogen.

Als Startindex wird der Zeilenindex für den ersten der zur Berechnung der Fläche y(x,z) herangezogenen Datenpunkte angegeben. 0 entspricht dabei der ersten Zeile in der Datendatei (Kommentarzeilen werden nicht gezählt). Zusammen mit der Anzahl Punkte wird die zur Berechnung der Fläche genutzte Portion der Datei ausgewählt. Mit xmin, xmax, zmin und zmax werden die Grenzen für den dargestellten Bereich der Fläche y(x,z) und die x- und z-Achse festgelegt. Die Schrittweiten Delta x und Delta z bestimmen die Abstände des Liniennetzes der Flächendarstellung. Werte von 0 führen dabei zur automatischen Teilung des jeweiligen Bereichs in 40 Intervalle. Mit ymin und ymax werden die Grenzen der y-Achse festgelegt. Die Skalierung jeder Achse kann individuell durch Auswahl von log auf logarithmisch eingestellt werden.

#### Skalierung

Auf der Seite Skalierung kann in der Gruppe Fenster der rechteckige Bereich in cm eingestellt werden, in dem die 3D-Darstellung angezeigt wird und um den gegebenfalls ein Rahmen gezeichnet wird.

In der Gruppe Bezugspunkt können die Abstände des Mittelpunkts der von x- und z-Achse bei ymin aufgespannten Fläche vom linken und unteren Rand des Fensters in cm angegeben werden.

In der Gruppe 3D-Box können die Längen der x-, y- und z-Achse der 3D-Darstellung in cm angegeben werden.

Die Drehung des Koordinatensystems kann über die zwei Winkel phi und theta angegeben werden. Der Wert von phi gibt dabei die Drehung um die y-Achse an; der Wert von theta die Neigung der y-Achse nach vorne.

In der Gruppe Achsen können mit xtic, ytic und ztic die Abstände von großen (gegebenfalls beschrifteten) Tickmarken eingestellt werden. Die Zahl der Intervalle, in die diese Abstände durch kleine Tickmarken unterteilt werden, wird über mticx, mticy und mticz festgelegt. Bei beschrifteten Achsen kann die Zahl der Nachkommastellen über ndigx, ndigy und ndigz eingestellt werden. Werte von -1 führen dabei zur Unterdrückung der Dezimalpunktausgabe.

Es können manuell Faktoren für Normierung der x-, y- und z-Achse angegeben werden. Diese können auch mittels Autoskalierung bei aktivierter Autonormierung automatisch bestimmt werden. Die Autoskalierung bestimmt weiterhin für den duch Startindex und Anzahl Punkte ausgewählten Bereich des Datensatzes die Grenzen der Achsen, die Abstände der großen Tickmarken, die Zahl der Intervalle zwischen den großen Tickmarken, die Zahl der Nachkommastellen der Beschriftung, den Bezugspunkt der 3D-Darstellung und die Länge der Achsen.

#### Darstellung

Auf der Seite Darstellung kann in der Gruppe Achsenmodus eingestellt werden, ob Tickmarken mit oder ohne Beschriftung gezeichnet werden.

In der Gruppe 3D-Modus kann festgelegt werden, ob die Darstellung der Fläche y(x,z) als Linien in x- oder z-Richtung oder als Netz von Linien in x- und z-Richtung erfolgt.

In der Gruppe Farben werden die Farben für Rahmen, Tickmarken und die die Daten darstellende Fläche festgelegt. Die Auswahl erfolgt über das Dialogfenster Farbauswahl, das über die farbigen Drucknöpfe erreicht werden kann.

Über Zeige Rahmen kann die Anzeige eines Rahmens um den rechteckigen Fensterbereich des Plots eingestellt werden. Die relative Linienbreite der Netzlinien der Fläche y(x,z) kann bezogen auf die Breite des Datenfensters festgelegt werden. Die Einstellung von 100 % entspricht dabei dem Normalwert

Eine Tabelle der Werte der dargestellten Fläche kann über den Druckknopf Exportieren als Datendatei exportiert werden. Dazu wird ein Dateiauswahldialog geöffnet.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf Anwenden werden die Änderungen gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### 3D-Funktion

Im Dialogfenster 3D-Funktion können die Einstellungen für die dreidimensionale Darstellung einer Funktion y(x,z) zweier unabhängiger Variablen vorgenommen werden. Der Dialog ist auf drei Seiten aufgeteilt.

#### Funktion

Auf der Seite Funktion kann in der Gruppe y(x,z) unter Bibliothek der Pfad der shared library eingetragen werden, die die gewünschte Funktion enthält. Der Druckknopf rechts neben dem Eingabefeld öffnet dazu einen Dateiauswahldialog.

Der Name der Funktion kann in einem weiteren Feld angegeben werden. Befindet sich im gleichen Verzeichnis wie die shared library auch eine Moduldefinitionsdatei gleichen Namens mit der Dateierweiterung `.def`, so kann über den Druckknopf rechts neben dem Eingabefeld das Dialogfenster Funktionen geöffnet werden, in dem die Funktion aus einer Liste ausgewählt werden kann.

Über den Druckknopf Bearbeiten kann das Dialogfenster Parameter geöffnet werden, in dem Zahlenwerte für maximal 20 Parameter der Funktion eingegeben werden können. Bei aktivierter Einstellung Funktionsquelltext anzeigen im Menü Einstellungen und Vorhandensein einer C- bzw. C++-Quelltextdatei gleichen Namens wie die shared library und der Dateierweiterung `.c` bzw. `.cpp` im gleichen Verzeichnis wird deren Inhalt rechts neben den Parametern angezeigt. Über den Druckknopf Laden kann ein Dateiauswahlfenster geöffnet werden, mit dem die Parameter aus einer ASCII-Datei (pro Zeile ein Parameter) eingelesen werden können. Über den Druckknopf Speichern kann ein Dateiauswahlfenster geöffnet werden, mit dem die Parameter in einer ASCII-Datei gespeichert werden können.

In der Gruppe Bereich können in den Feldern xmin, xmax, zmin und zmax die Grenzen für die Funktionsargumente und die x- und z-Achse eingegeben werden. Die Felder Delta x und Delta z legen die Schrittweite für die Funktionsargumente fest. Ein Wert von Null führt dabei zur automatischen Teilung des jeweiligen Bereichs in 40 Intervalle. Mit ymin und ymax werden die Grenzen der y-Achse festgelegt. Die Skalierung jeder Achse kann individuell durch Auswahl von log auf logarithmisch eingestellt werden.

#### Skalierung

Auf der Seite Skalierung kann in der Gruppe Fenster der rechteckige Bereich in cm eingestellt werden, in dem die 3D-Darstellung angezeigt wird und um den gegebenfalls ein Rahmen gezeichnet wird.

In der Gruppe Bezugspunkt können die Abstände des Mittelpunkts der von x- und z-Achse bei ymin aufgespannten Fläche vom linken und unteren Rand des Fensters in cm angegeben werden.

In der Gruppe 3D-Box können die Längen der x-, y- und z-Achse der 3D-Darstellung in cm angegeben werden.

Die Drehung des Koordinatensystems kann über die zwei Winkel phi und theta angegeben werden. Der Wert von phi gibt dabei die Drehung um die y-Achse an; der Wert von theta die Neigung der y-Achse nach vorne.

In der Gruppe Achsen können mit xtic, ytic und ztic die Abstände von großen (gegebenfalls beschrifteten) Tickmarken eingestellt werden. Die Zahl der Intervalle, in die diese Abstände durch kleine Tickmarken unterteilt werden, wird über mticx, mticy und mticz festgelegt. Bei beschrifteten Achsen kann die Zahl der Nachkommastellen über ndigx, ndigy und ndigz eingestellt werden. Werte von -1 führen dabei zur Unterdrückung der Dezimalpunktausgabe.

Es können manuell Faktoren für Normierung der x-, y- und z-Achse angegeben werden. Diese können auch mittels Autoskalierung bei aktivierter Autonormierung automatisch bestimmt werden. Die Autoskalierung bestimmt weiterhin für den duch Startindex und Anzahl Punkte ausgewählten Bereich des Datensatzes die Grenzen der Achsen, die Abstände der großen Tickmarken, die Zahl der Intervalle zwischen den großen Tickmarken, die Zahl der Nachkommastellen der Beschriftung, den Bezugspunkt der 3D-Darstellung und die Länge der Achsen.

#### Darstellung

Auf der Seite Darstellung kann in der Gruppe Achsenmodus eingestellt werden, ob Tickmarken mit oder ohne Beschriftung gezeichnet werden.

In der Gruppe 3D-Modus kann festgelegt werden, ob die Darstellung der Fläche y(x,z) als Linien in x- oder z-Richtung oder als Netz von Linien in x- und z-Richtung erfolgt.

In der Gruppe Farben werden die Farben für Rahmen, Tickmarken und die die Daten darstellende Fläche festgelegt. Die Auswahl erfolgt über das Dialogfenster Farbauswahl, das über die farbigen Drucknöpfe erreicht werden kann.

Über Zeige Rahmen kann die Anzeige eines Rahmens um den rechteckigen Fensterbereich des Plots eingestellt werden. Die relative Linienbreite der Netzlinien der Fläche y(x,z) kann bezogen auf die Breite des Datenfensters festgelegt werden. Die Einstellung von 100 % entspricht dabei dem Normalwert

Eine Tabelle der Werte der dargestellten Fläche kann über den Druckknopf Exportieren als Datendatei exportiert werden. Dazu wird ein Dateiauswahldialog geöffnet.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf Anwenden werden die Änderungen gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### Bild

Der Dialog Bild ermöglicht das Einbetten elaubt das Einbetten einer EPS-Abbildung (Encapsulated PostScript) in die Darstellung.

Ein Dateiauswahldialog erlaubt die Angabe einer EPS-Datei. Unter x0 und y0 kann die Position der linken unteren Ecke eingestellt werden.

x-Skalierung und y-Skalierung erlauben die Angabe von horizontalen und vertikalen Skalierungsfaktoren. Werte von 100 % entsprechen der Originalgröße der Abbildung. Der gleiche Skalierungsfaktor für x- und y-Richtung wird verwendet, wenn Seitenverhältnis beibehalten ausgewählt ist.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf Anwenden werden die Änderungen gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### Legende

Im Dialogfenster Legende können die Einstellungen für die Erklärung von Linientypen und Plotsymbolen und andere Beschriftungen vorgenommen werden.

In der Gruppe Daten kann ein zu erklärendes Symbol bzw. Linientyp ausgewählt werden. Am einfachsten geschieht dies über das Dialogfenster Linien und Symbole, das über den Druckknopf rechts neben dem Anzeigefeld erreicht werden kann, der auch das aktuelle Plotsymbol anzeigt. Die Symbolnummer -17 kann gewählt werden, um eine Beschriftung ohne Symbol bzw. Linie zu realisieren. Die Größe der Linien bzw. Symbole kann als zusätzlicher individueller Faktor zu der globalen Einstellung des zugehörigen Rahmenbestandteils festgelegt werden. Die Farbe der Linien bzw. Symbole wird über das Dialogfenster Farbauswahl eingestellt, das über den farbigen Druckknopf geöffnet werden kann. Unter x und y kann die Position des Symbols relativ zur linken unteren Ecke des Fensters bzw. Blattes eingestellt werden.

In der Gruppe Beschriftung kann unter Text der Beschriftungstext eingegeben werden. Text mit Sonderzeichen gibt man am bequemsten über das Dialogfenster Text editieren ein, das über den Druckknopf rechts neben dem Eingabefeld erreicht werden kann. Im Feld Größe kann die relative Größe der Zeichen festgelegt werden. Die Einstellung von 100 % entspricht dabei dem Normalwert. Die Farbe des Textes wird über das Dialogfenster Farbauswahl eingestellt, das über den farbigen Druckknopf geöffnet werden kann. Unter xoff und yoff kann die Position des Textanfangs relativ zur Position des Symbols angegeben werden.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf Anwenden werden die Änderungen gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### Text

Im Dialogfenster Text können die Einstellungen für einen Text zur Dekoration der Darstellung vorgenommen werden.

Unter Text kann der Text eingegeben werden. Text mit Sonderzeichen gibt man am bequemsten über das Dialogfenster Text editieren ein, das über den Druckknopf rechts neben dem Eingabefeld erreicht werden kann. Die Richtung des Texts kann in Grad eingegeben werden. Die Ausrichtung des Texts relativ zur angebenen Position kann linksbündig, zentriert, oder rechtsbündig gewählt werden. Unter x0 und y0 kann die Position des Texts in cm eingestellt werden.

Im Feld Größe kann die relative Größe der Zeichen festgelegt werden. Die Einstellung von 100 % entspricht dabei dem Normalwert. Die Farbe des Texts wird über das Dialogfenster Farbauswahl eingestellt, das über den farbigen Druckknopf geöffnet werden kann.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf Anwenden werden die Änderungen gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### Linie

Im Dialogfenster Linie können die Einstellungen für eine Linie zur Dekoration der Darstellung vorgenommen werden.

Die Richtung der Linie kann in Grad eingegeben werden. Mit Länge wird die Länge der Linie in cm eingestellt. Unter x0 und y0 kann die Startposition der Linie eingestellt werden.

Im Feld Breite kann die relative Breite der Linie festgelegt werden. Die Einstellung von 100 % entspricht dabei dem Normalwert. Die Farbe der Linie wird über das Dialogfenster Farbauswahl eingestellt, das über den farbigen Druckknopf geöffnet werden kann.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf Anwenden werden die Änderungen gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### Pfeil

Im Dialogfenster Pfeil können die Einstellungen für einen Pfeil zur Dekoration der Darstellung vorgenommen werden.

Die Richtung des Pfeils kann in Grad eingegeben werden. Mit Länge wird die Gesamtlänge des Pfeils in cm eingestellt. Unter x0 und y0 kann die Position der Pfeilspitze eingestellt werden.

Im Feld Größe kann die relative Größe der Pfeilspitze festgelegt werden. Die Einstellung von 100 % entspricht dabei dem Normalwert. Die Farbe des Pfeils wird über das Dialogfenster Farbauswahl eingestellt, das über den farbigen Druckknopf geöffnet werden kann.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf Anwenden werden die Änderungen gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### Bogen

Im Dialogfenster Bogen können die Einstellungen für einen Ellipsenbogen zur Dekoration der Darstellung vorgenommen werden.

Die Breite und Höhe der Ellipse können in cm eingegeben werden. Die Höhe wird gleich der Breite gesetzt, wenn Kreisbogen aktiviert ist. Mit Anfang und Länge können Startwinkel und Länge des Bogens in Grad eingestellt werden. Die Drehung der Ellipse gegen die Horizontale kann in Grad angegeben werden. Unter x0 und y0 kann die Mittenposition eingestellt werden.

Im Feld Linienbreite kann die relative Breite der Linie zum Zeichnen des Bogens festgelegt werden. Die Einstellung von 100 % entspricht dabei dem Normalwert. Die Farbe des Bogens wird über das Dialogfenster Farbauswahl eingestellt, das über den farbigen Druckknopf geöffnet werden kann.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf Anwenden werden die Änderungen gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### Rechteck

Im Dialogfenster Rechteck können die Einstellungen für ein Rechteck zur Dekoration der Darstellung vorgenommen werden.

Die Breite und Höhe des Rechtecks können in cm eingegeben werden. Die Höhe wird gleich der Breite gesetzt, wenn Quadrat aktiviert ist. Die Drehung des Rechtecks um die linke untere Ecke gegen die Horizontale kann in Grad angegeben werden. Unter x0 und y0 kann die Position der linken unteren Ecke eingestellt werden.

Im Feld Linienbreite kann die relative Breite der Linie zum Zeichnen des Rechtecks festgelegt werden. Die Einstellung von 100 % entspricht dabei dem Normalwert. Die Farbe des Rechtecks wird über das Dialogfenster Farbauswahl eingestellt, das über den farbigen Druckknopf geöffnet werden kann.

Durch Auswahl von einem Füllmuster kann, anstelle einer Darstellung durch eine Linie, das Rechteck vollständig mit einer Farbe oder mit einer Schraffur gefüllt werden.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf Anwenden werden die Änderungen gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### Ellipse

Im Dialogfenster Ellipse können die Einstellungen für eine Ellipse zur Dekoration der Darstellung vorgenommen werden.

Die Breite und Höhe der Ellipse können in cm eingegeben werden. Die Höhe wird gleich der Breite gesetzt, wenn Kreis aktiviert ist. Die Drehung der Ellipse gegen die Horizontale kann in Grad angegeben werden. Unter x0 und y0 kann die Mittenposition eingestellt werden.

Im Feld Linienbreite kann die relative Breite der Linie zum Zeichnen der Ellipse festgelegt werden. Die Einstellung von 100 % entspricht dabei dem Normalwert. Die Farbe der Ellipse wird über das Dialogfenster Farbauswahl eingestellt, das über den farbigen Druckknopf geöffnet werden kann.

Durch Auswahl von einem Füllmuster kann, anstelle einer Darstellung durch eine Linie, das Rechteck vollständig mit einer Farbe oder mit einer Schraffur gefüllt werden.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf Anwenden werden die Änderungen gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### Maßstab

Der Dialog Maßstab dient zur Darstellung eines Maßstabs zur Anzeige einer Längenskala. Als Ausrichtung kann Waagrecht oder Senkrecht gewählt werden. Ein Text (gewöhnlich eine Länge, die der Maßstab repräsentieren soll) kann angegeben werden. Die tatsächliche Länge des Maßstabs in der Darstellung ist in cm anzugeben. Unter x0 und y0 kann die Position der linken unteren Ecke eingestellt werden.

Im Feld Größe kann die relative Größe von Beschriftung und Linienbreite festgelegt werden. Die Einstellung von 100 % entspricht dabei dem Normalwert. Die Farbe des Maßstabs wird über das Dialogfenster Farbauswahl eingestellt, das über den farbigen Druckknopf geöffnet werden kann.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf Anwenden werden die Änderungen gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### Parameteranpassung

Der Dialog Parameteranpassung dient zur Durchführung einer Parameteranpassung einer Funktion (oder mehrerer, vom gleichen Parametersatz abhängiger Funktionen bei mehrdimensionaler Anpassung) an die gleiche Zahl von Datensätzen. Der Dialog wird entweder durch Auswahl von Anpassen im Dialog Bestandteile oder automatisch angezeigt, wenn eine Datendatei geladen wird und die Einstellungen Autofit in den Grundeinstellungen und Dialog anzeigen in den Autofit-Einstellungen aktiviert sind.

Anfangswerte für die Parameter können in die entsprechenden Felder eingegeben werden. Beim Öffen des Dialogs werden die Felder mit den Werten des aktuellen Parametersatzes der Funktion initialisiert (im Fall von mehrdimensionaler Anpassung mit denen der ersten Funktion aus der Liste der ausgewählten Funktionen). Durch Aktivieren der Auswahlfelder links neben den Eingabefeldern werden die anzupassenden Parameter ausgewählt; die Werte der anderen Parameter werden konstant gehalten. Im Fall von allgemeinen linearen Parameteranpassungen müssen für die anzupassenden Parameter keine Anfangswerte eingegeben werden. Die berechneten Standardabweichungen der Parameter werden rechts neben den entsprechenden Eingabefeldern angezeigt.

Die Druckknöpfe Laden und Speichern dienen zum Laden und Speichern des aktuellen Parametersatzes von bzw. in Textdateien. Im Unterschied zu dem bei den anderen Parametereinstellungsdialogen verwendeten Format werden hier in einer zweiten Spalte auch die resultierenden Standardabweichungen der Parameter abgespeichert.

Bei aktiviertem Auswahlfeld Nichtlineare Anpassung werden nichtlineare Parameteranpassungen nach der iterativen Levenberg-Marquardt-Methode durchgeführt. Andernfalls sind nichtiterative allgemeine lineare Parameteranpassungen ausgewählt. In diesem Fall muß die Funktion linear von allen anzupassenden Parametern abhängen.

In der Gruppe Fehler der Daten können die Einstellungen für die Gewichtung der Datenpunkte vorgenommen werden. Das ausgewählte Feld, für das die Einstellungen vorgenommen werden, wird durch seinen Dateinamen und die Indices für die x-, y- und Fehlerspalte angezeigt. Im Fall mehrdimensionaler Anpassung kann das Feld aus der Liste mit einer Spinbox gewählt werden, die den Listenindex anzeigt. Die Einstellungen können dann für jedes Feld individuell vorgenommen werden.

Bei aktiviertem Auswahlfeld Fehlerspalte wird die entsprechende Spalte des Datensatzes, die im Dialog Feld eingestellt ist, als Standardabweichung der y-Werte bei der Berechnung von Chi-Quadrat herangezogen. Andernfalls wird die Standardabweichung über eine Fehlermodellfunktion mit den x- oder y-Werten als Argument ermittelt. Diese Funktion und ihre Parameter können in einem Dialog ausgewählt werden, der über den Druckknopf Modell angezeigt wird. Ein einfaches Fehlermodell könnte in der Auswahl eines Polynoms mit p1 = 0.01 bestehen, mit dem Resultat einer Standardabweichung von 1 %.

Die Abbruchbedingung des iterativen Algorithmus für die nichtlineare Parameteranpassung kann durch eine Zahl Maximale Iterationen und einen Wert für die Toleranz gesteuert werden. Die Parameteranpassung wird abgebrochen, wenn entweder die maximale Anzahl Iterationen erreicht ist oder die relativen Fehler von Chi-Quadrat oder der Parameter den Toleranzwert unterschreiten.

Die Anpassung wird mittels des Druckknopfs Start gestartet. Die im Verlauf der Iterationen erhaltenen Chi-Quadrat-Werte werden in dem Fenster im unteren Bereich des Dialogs angezeigt. Die Anpassung kann mittels des Druckknopfs Abbrechen beendet werden. Zum Schluß wird der Grund des Abbruchs angezeigt, sowie die mittlere Abweichung der y-Werte, die Zahl der Freiheitsgrade ny und die Signifikanz Q, die die Wahrscheinlichkeit dafür angibt, daß Chi-Quadrat den erreichten Wert überschreitet. Die Matrix der resultierenden Korrelationskoeffizienten der Parameter kann über den Druckknopf Korrelationen angezeigt werden.

Die Residuen des Fits (die Differenzen zwischen Daten- und Funktionswerten) können über den Druckknopf Residuen grafisch dargestellt werden. Der in einem neuen Fenster erscheinende Plot kann dann gedruckt und als neue Plotdatei mit intern gespeicherten Daten der Residuen gesichert werden.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die Parameter zu speichern. Mit dem Druckknopf Anwenden werden die Parameter gespeichert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Parameter gespeichert und das Dialogfenster geschlossen. Im Fall mehrdimensionaler Anpassung werden dabei die Parameter jeder ausgewählten Funktion aktualisiert.

### Glättende Spline-Anpassung

Der Dialog Glättende Spline-Anpassung dient zur Durchführung einer Anpassung einer Spline-Funktion an einen Datensatz. Der Dialog wird durch Auswahl von Anpassen im Dialog Bestandteile angezeigt.

In der Gruppe Spline können der Grad der Spline-Funktion sowie die Grenzen xmin und xmax des Approximationsintervalls eingestellt werden. Sie begrenzen den Bereich, für den der Spline dargestellt werden kann und umfassen mindestens den Bereich der x-Werte des im Dialog Feld ausgewählten Bereichs des Datensatzes. Der Glättungsfaktor beeinflusst die mittlere Abweichung der Spline-Funktion von den y-Werten des Datensatzes und gibt den Faktor an, um den sich im Mittel die Abweichungen vom Fehler der Daten unterscheiden sollen. Ein Wert von 0 führt zu einem nichtglättenden Spline.

In der Gruppe Fehler der Daten können die Einstellungen für die Gewichtung der Datenpunkte vorgenommen werden. Das Feld, für das die Anpassung vorgenommen wird, wird durch seinen Dateinamen und die Indices von x-, y- und Fehlerspalte angezeigt. Bei aktiviertem Auswahlfeld Fehlerspalte wird die entsprechende Spalte des Datensatzes, die im Dialog Feld eingestellt ist, als Standardabweichung der y-Werte bei der Anpassung herangezogen. Andernfalls wird die Standardabweichung über eine Fehlermodellfunktion mit den x- oder y-Werten als Argument ermittelt. Diese Funktion und ihre Parameter können in einem Dialog ausgewählt werden, der über den Druckknopf Modell angezeigt wird. Ein einfaches Fehlermodell könnte in der Auswahl eines Polynoms mit p1 = 0.01 bestehen, mit dem Resultat einer Standarabweichung von 1 %.

Die Anpassung wird mittels des Druckknopfs Start durchgeführt. Die Zahl der bei der Anpassung erhaltenen Knotenpunkte des Splines, das resultierende Chi-Quadrat sowie die mittlere Abweichung der y-Werte sowie gegebenenfalls eine Fehlermeldung werden in dem Fenster im unteren Bereich des Dialogs angezeigt.

Die Residuen der Anpassung (die Differenzen zwischen Daten- und Spline-Funktionswerten) können über den Druckknopf Residuen grafisch dargestellt werden. Der in einem neuen Fenster erscheinende Plot kann dann gedruckt und als neue Plotdatei mit intern gespeicherten Daten der Residuen gesichert werden.

Der Dialog Wurzeln zum Auffinden von Nullstellen eines kubischen Splines oder seiner Ableitungen kann über den Druckknopf Wurzeln geöffnet werden.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die Spline-Koeffizienten zu speichern. Mit dem Druckknopf Anwenden werden die Spline-Koeffizienten gespeichert und der Plot aktualisiert, ohne das Dialogfenster zu schließen. Mit dem Druckknopf OK werden die Spline-Koeffizienten gespeichert und das Dialogfenster geschlossen.

### Wurzeln

Der Dialog Wurzeln kann über den Druckknopf Wurzeln der Dialoge Funktion, Glättender Spline und Glättende Spline-Anpassung geöffnet werden. Er erlaubt das Auffinden von Nullstellen der Funktion bzw. des Splines oder der entsprechenden Ableitungen. Im Fall einer Funktion wird dabei eine interpolierende (nichtglättende) Spline-Darstellung genutzt, im Falle eines glättenden Splines der aktuelle Spline, dessen Grad kubisch sein muß.

Die Bedingung für die zu suchenden und anzuzeigenden Nullstellen kann ausgewählt werden. Eine Konstante c erlaubt das Auffinden von Punkten mit Werten des Splines oder seiner Ableitungen ungleich Null. Der Druckknopf Aktualisieren dient zum Aktualisieren der angezeigten Liste von Punkten nach Änderung der Konstante c. Als Bedingung kann auch Minimum oder Maximum eingestellt werden. Dann werden Punkte mit einer verschwindenden ersten Ableitung und positiver (Minimum) bzw. negativer (Maximum) zweiter Ableitung aufgelistet.

Die Liste der Punkte mit ihren x-, y-, y'- und y"-Werte kann über den Druckknopf Exportieren in einer Textdatei gespeichert werden. Dazu wird ein Dateiauswahldialog geöffnet.

Über den Druckknopf Schließen wird das Dialogfenster geschlossen.

### Text editieren

Im Dialogfenster Text editieren kann ein Beschriftungstext mit hoch- und tiefgestellten Zeichen aus verschiedenen Zeichensätzen erstellt werden.

Die Wahl einer Schriftart und einer Position bestimmt eine mit dem Zeichen # eingeleitete und aus zwei weiteren Zeichen bestehende Steuersequenz im Feld rechts neben dem Druckknopf mit dem Symbol <. Durch Betätigung des Druckknopfs wird die Sequenz (oder eine andere, manuell eingetragene Zeichenkette) an der Cursorposition in den aktuellen Inhalt des Texteingabefelds links neben dem Druckknopf eingefügt. Text kann manuell an eine beliebige Stelle im Texteingabefeld eingefügt werden. Die Auswirkungen des aktuellen Inhalts des Texteingabefensters auf das Beschriftungsbild sind sofort im Ausgabefenster darüber sichtbar.

Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Mit dem Druckknopf OK werden die Änderungen gespeichert und das Dialogfenster geschlossen.

### Kpl-Einstellungen

Im Dialogfenster Kpl-Einstellungen können allgemeine Voreinstellungen sowie die Autoplot- und Autofit-Einstellungen vorgenommen werden. Das Dialogfenster kann mit dem Druckknopf Abbrechen verlassen werden, ohne die geänderten Einstellungen zu speichern. Durch Betätigen des Druckknopfes Anwenden werden die Änderungen angewendet, ohne den Dialog zu verlassen. Mit Einstellungen speichern werden die Einstellungen angewendet und dauerhaft gespeichert, ohne den Dialog zu verlassen. Mit dem Druckknopf OK werden die Änderungen angewendet und das Dialogfenster geschlossen.

Der Dialog besteht aus drei Seiten.

#### Grundeinstellungen

Auf der Seite Grundeinstellungen können Voreinstellungen für die Darstellungsgröße und die Farben vorgenommen werden.

In der Gruppe Seitenformat kann die Größe der Darstellungsseite ausgewählt werden. Die Einstellung Benutzerdefiniert erlaubt eigene Werte für Breite und Höhe.

In der Gruppe Standardfarben können die Voreinstellungen der Farben für Rahmen, Gitter und Daten für die Dialogfenster Rahmen, Feld, Funktion und Parametrische Funktion gewählt werden. Die Auswahl erfolgt dabei über das Dialogfenster Farbauswahl, das über die farbigen Drucknöpfe erreicht werden kann.

Für das Dezimalsymbol zum Einlesen von Datendateien kann ein Punkt oder ein Komma gewählt werden.

In der Gruppe Ausgabeformat können die Darstellung und die Genauigkeit der double-Werte von Funktionsparametern und -bereichen in Dateien und Dialogen entsprechend dem Format der C-Funktion `printf()` eingestellt werden. Das Trennzeichen zur Trennung von Spalten in exportierten Dateien kann mittels der Kombobox Trennzeichen eingestellt werden. Es kann zwischen Leerzeichen, Tabulator und Komma gewählt werden.

Auch die Umschalteinstellungen des Menüs Einstellungen können hier auf ein Mal vorgenommen werden.

Bei aktiviertem Feldern Autofit und Autoplot wird nach dem Laden einer Datendatei eine automatische Parameteranpassung durchgeführt, entsprechend den Vorgaben auf der Seite Autofit-Einstellungen.

#### Autoplot-Einstellungen

Auf der Seite Autoplot-Einstellungen erfolgen die Einstellungen für die automatisch skalierte Darstellung von Datendateien, die mittels Befehlszeilenparameter, Dateimenü oder Drag-and-Drop-Technik eingelesen werden.

In der Gruppe Achsenmodus kann gewählt werden, ob die Darstellung nur einen Rahmen um das Datenfenster oder zusätzlich Tickmarken an den linken und unteren Seiten des Rahmens oder ein Gitter erhält. Tickmarken und Gitter können mit Zahlenwerten beschriftet werden.

In der Gruppe Fenster können Lage und Größe des Datenfensters festgelegt werden.

In der Gruppe Beschriftung kann Text für die Achsenbeschriftungen und eine Kopfzeile festgelegt werden. Text mit Sonderzeichen gibt man am bequemsten über das Dialogfenster Text editieren, das über die Drucknöpfe rechts neben den Eingabefeldern erreicht werden kann. Mittels des Auswahlfelds = Pfad kann der Kopf automatisch mit dem Pfad der jeweiligen Daten beschriftet werden.

In der Gruppe Daten können in x-Spalte und y-Spalte die Spalten der Datendatei für Abszissen- und Ordinatenwerte ausgewählt werden. 0 entspricht dabei der ersten Spalte. Logaritmische Skalierung kann individuell durch Auswahl von log eingestellt werden. Bei aktiviertem Auswahlfeld Fehlerbalken wird, wenn vorhanden, die als Fehlerspalte angegebene Spalte zur Darstellung von Fehlerbalken herangezogen. Zur Darstellung der Daten können Plotsymbole (Symbol <= 0) oder Linien (Symbol > 0) gewählt werden. Am einfachsten geschieht dies über das Dialogfenster Linien und Symbole, das über den Druckknopf rechts neben dem Anzeigefeld erreicht werden kann, der auch das aktuelle Plotsymbol anzeigt. Im Feld Symbolgröße kann die relative Größe von Zeichensätzen und Plotsymbolen sowie die relative Breite von Linien (bezogen auf die Breite des Datenfensters) festgelegt werden. Die Einstellung von 100 % entspricht dabei dem Normalwert. Bei aktiviertem Auswahlfeld Normierung werden bei der automatischen Skalierung Zehnerpotenzen bestimmt, mit denen sehr große oder sehr kleine Zahlenwerte in der Darstellung multipliziert erscheinen. Diese Normierungsfaktoren werden, soweit sie verschieden von 1 sind, in die Beschriftung der Achsen übernommen.

#### Autofit-Einstellungen

Auf der Seite Autofit-Einstellungen werden die Einstellungen für automatische Parameteranpassungen von Funktion an Datensätze vorgenommen, die in Verbindung mit Autoplot erfolgen, wenn die Einstellung Autofit auf der Seite Grundeinstellungen aktiviert ist.

In der Gruppe y(x) kann unter Bibliothek der Pfad der shared library eingetragen werden, die die anzupassende Funktion enthält. Der Druckknopf rechts neben dem Eingabefeld öffnet dazu einen Dateiauswahldialog.

Der Name der Funktion kann in einem weiteren Feld angegeben werden. Befindet sich im gleichen Verzeichnis wie die shared library auch eine Moduldefinitionsdatei gleichen Namens mit der Dateierweiterung .def, so kann über den Druckknopf rechts neben dem Eingabefeld das Dialogfenster Funktionen geöffnet werden, in dem die Funktion aus einer Liste ausgewählt werden kann.

Über den Druckknopf Bearbeiten kann das Dialogfenster Parameter geöffnet werden, in dem Zahlenwerte für maximal 20 Parameter der Funktion eingegeben werden können. Hier werden auch durch Aktivieren der Auswahlfelder links neben den Eingabefeldern die anzupassenden Parameter ausgewählt; die Werte der anderen Parameter werden konstant gehalten. Bei aktivierter Einstellung Funktionsquelltext anzeigen im Menü Einstellungen und Vorhandensein einer C-Quelltextdatei gleichen Namens wie die shared library und der Dateierweiterung `.c` im gleichen Verzeichnis wird deren Inhalt rechts neben den Parametern angezeigt. Über den Druckknopf Laden kann ein Dateiauswahlfenster geöffnet werden, mit dem die Parameter aus einer ASCII-Datei (pro Zeile ein Parameter) eingelesen werden können. Über den Druckknopf Speichern kann ein Dateiauswahlfenster geöffnet werden, mit dem die Parameter in einer ASCII-Datei gespeichert werden können.

Bei aktiviertem Auswahlfeld Nichtlineare Anpassung werden nichtlineare Parameteranpassungen nach der iterativen Levenberg-Marquardt-Methode durchgeführt. Andernfalls sind nichtiterative allgemeine lineare Parameteranpassungen ausgewählt. In diesem Fall muß die Funktion linear von allen anzupassenden Parametern abhängen.

Bei aktiviertem Auswahlfeld Fehlerspalte wird die entsprechende Spalte des Datensatzes, die im Dialog Feld eingestellt ist, als Standardabweichung der y-Werte bei der Berechnung von Chi-Quadrat herangezogen. Andernfalls wird die Standardabweichung über eine Fehlermodellfunktion mit den x- oder y-Werten als Argument ermittelt. Diese Funktion und ihre Parameter können in einem Dialog ausgewählt werden, der über den Druckknopf Modell angezeigt wird. Ein einfaches Fehlermodell könnte in der Auswahl eines Polynoms mit p1 = 0.01 bestehen, mit dem Resultat einer Standardabweichung von 1 %.

Die Abbruchbedingung des iterativen Algorithmus für die nichtlineare Parameteranpassung kann durch eine Zahl Maximale Iterationen und einen Wert für die Toleranz gesteuert werden. Die Parameteranpassung wird abgebrochen, wenn entweder die maximale Anzahl Iterationen erreicht ist oder die relativen Fehler von Chi-Quadrat oder der Parameter den Toleranzwert unterschreiten.

Zur Darstellung der anzupassenden Funktion können Plotsymbole (Symbol <= 0) oder Linien (Symbol > 0) gewählt werden. Am einfachsten geschieht dies über das Dialogfenster Linien und Symbole, das über den Druckknopf rechts neben dem Anzeigefeld erreicht werden kann, der auch das aktuelle Plotsymbol anzeigt.

Die Farbe der Linien bzw. Symbole wird über das Dialogfenster Farbauswahl eingestellt, das über den farbigen Druckknopf geöffnet werden kann.

Wenn die Einstellung Dialog anzeigen aktiviert ist, wird der Dialog Parameteranpassung bei der Anpassung angezeigt und damit Beobachtung und Interaktion ermöglicht.

Bei aktivierter Einstellung Parameter speichern werden die Parameter nach erfolgter Anpassung automatisch in einer ASCII-Datei gespeichert. Der Dateiname wird aus dem der Datendatei abgeleitet; als Dateierweiterung wird `.par` verwendet.

Wenn Parametern folgen aktiviert ist, wird der Anfangsparametersatz vor Beginn der Anpassung einer Funktion an den nächsten Datensatz aus einer Serie von Datendateien nicht zurückgesetzt.

## Programmierleitfaden zu Kpl

### Funktionen

Benutzerdefinierte C- oder C++-Funktionen zur grafischen Darstellung von gewöhnlichen und parametrischen Funktionen sowie zur Parameteranpassung werden von &kpl; in Form von shared libraries genutzt. Entsprechende Funktionen sind vom Typ `double` und erwarten ein `double`-Funktionsargument und einen Zeiger auf ein `double`-Array von bis zu 20 Parametern:

    double myfunction(double x, const double *p);

Funktionen zur dreidimensionalen Darstellung von Oberflächen sind vom Typ `double` und erwarten zwei `double`-Funktionsargumente und einen Zeiger auf ein `double`-Array von bis zu 20 Parametern:

    double my3Dfunction(double x, double z, const double *p);

Moduldefinitionsdateien (mit dem Dateityp `.def` und gleichem Namen wie Quell- und Bibliotheksdateien) dienen zur Auflistung der Funktionsnamen in &kpl;. Sie entsprechen der Ausgabe des Programms `nm`.

Im Verzeichnis $`KDEDIR``/share/apps/kpl` wird bereits eine shared library `fkt.so` sowie die Quelldatei `fkt.c`, die Moduldefinitionsdatei `fkt.def` und eine make-Datei `Makefile.fkt` installiert. Die Dateien `fkt.c` und `Makefile.fkt` dienen als Beispiele und sind gegebenenfalls anzupassen.

Als ein Beispiel für mehrdimensionale Parameteranpassung befinden sich im gleichen Verzeichnis eine C++-Quelldatei `fcompl.cpp` sowie die zugehörigen Dateien `fcompl.so`, `fcompl.def` und `Makefile.fcompl`. Hier nutzen zwei `double`-Funktionen Real- und Imaginärteil einer mit Hilfe der Klasse `complex` realisierten komplexen Funktion.

### DCOP-Schnittstelle

Die DCOP-Schnittstelle erlaubt die Steuerung von &kpl; durch andere KDE-Anwendungen und Skripte.

Für eine KDE-Anwendung, die von der DCOP-Schnittstelle von &kpl; Gebrauch machen soll, sollten Sie die Header-Datei `kpl_stub.h` einbinden, die im Verzeichnis $`KDEDIR``/include` installiert ist. Sie müssen außerdem die Datei `kpl_stub.cpp` aus $`KDEDIR``/share/apps/kpl` übersetzen und zu Ihrer Anwendung binden. Diese beiden Dateien stellen die DCOP-Schnittstellenfunktionen von &kpl; als Methoden der Klasse `KplApp_stub` zur Verfügung. Ein C++-Beispiel `demo1.cpp`, das sie nutzt, ist im Verzeichnis $`KDEDIR``/share/apps/kpl` installiert.

Ab KDE-Version 3.2 steht der KDE XmlRpc Daemon (siehe unten) nicht mehr zur Verfügung. Eine Alternative, die DCOP-Schnittstelle von &kpl; von in Python geschriebenen Skripten zu nutzen, ist die Verwendung der DCOP bindings für Python, Bestandteil des KDE-Pakets kdebindings, das zu diesem Zweck zu installieren ist. Ein Beispiel-Skript `demo2.py` ist im Verzeichnis $`KDEDIR``/share/apps/kpl` installiert. Es läßt praktisch dasselbe wie das C++-Beispiel ablaufen.

Der KDE XmlRpc Daemon (`kxmlrpcd`) eröffnet (mit KDE-Versionen < 3.2) einen Weg, die DCOP-Schnittstelle von &kpl; von in Python geschriebenen Skripten durch remote procedure calls (RPC) mittels XML und HTTP zu nutzen. Ein Beispiel-Skript `demo1.py` ist im Verzeichnis $`KDEDIR``/share/apps/kpl` installiert. Es läßt praktisch dasselbe wie das C++-Beispiel ablaufen. Für Python-Versionen < 2.2 benötigen Sie zusätzlich die Python-XML-RPC-Bibliothek (erhältlich bei http://www.pythonware.com/products/xmlrpc/). Beachten Sie, daß der Authentifizierungsmechanismus von `kxmlrpcd` als allerersten Parameter die Authentifizierungszeichenkette beim Aufruf jeder Schnittstellenfunktion benötigt.

Um die DCOP-Schnittstelle von &kpl; zu testen, können Sie auch die KDE-DCOP-Hilfsprogramme `dcop` (Kommandozeile) und `kdcop` (GUI) benutzen.

Bei einigen Installationen führt der XmlRpc Daemon von KDE leider zu Fehlern aufgrund von unvollständigen remote procedure calls, wenn dabei mehr als 1 KByte übertragen werden müssen. Dies passiert bei Nutzung von Funktionen mit sehr langen Parameterlisten wie `newFrameItem()` (siehe unten). Für KDE 3.1.4 können Sie einen Patch auf den Quellcode von kxmlrpcd anwenden. Die Patch-Datei mit dem Namen kxmlrpcserver-patch ist im Verzeichnis $`KDEDIR``/share/apps/kpl` installiert. Sie müssen das Paket mit dem Quellcode von kdenetwork-3.1.4 (erhältlich auf ftp://ftp.kde.org/pub/kde/) entpacken und den Patch im Verzeichnis `kdenetwork-3.1.4/kxmlrpc` anwenden durch Eingabe von

    % patch -p0 < kxmlrpcserver-patch

Danach sollten Sie im Verzeichnis `kdenetwork-3.1.4`

    % ./configure

starten und (zumindest im Verzeichnis `kdenetwork-3.1.4/kxmlrpc`)

    % make

und (als root)

    % make install

Die gepatchte Version von kxmlrpc wird dann bei Ihrem nächsten Login aktiv.

Die DCOP-Schnittstelle von &kpl; stellt die folgenden Funktionen zur Verfügung:

#### newPlot

    void newPlot();

Löscht den aktuellen Plot.

#### openPlot

    int openPlot(const QString& url);

Öffnet eine Plotdatei.

Parameter:

`url`

- URL der Datei.

Rückgabewert: true bei Erfolg.

#### openData

    int openData(const QString& url);

Öffnet eine Datendatei.

Parameter:

`url`

- URL der Datei.

Rückgabewert: true bei Erfolg.

#### doPlot

    void doPlot();

Stellt Plot dar.

#### savePlot

    int savePlot(const QString& url);

Speichert Plotdatei.

Parameter:

`url`

- URL der Datei.

Rückgabewert: true bei Erfolg.

#### savePS

    int savePS(const QString& url,
               int landscape);

Erzeugt PostScript-Datei.

Parameter:

`url`

- URL der Datei.

`landscape`

- true für Querformat.

Rückgabewert: true bei Erfolg.

#### printPlot

    int printPlot(const QString& printerName,
                  const QString& fileName,
                  int landscape,
                  int numCopies);

Druckt aktuellen Plot aus.

Parameter:

`printerName`

- Name des Druckers.

`fileName`

- Name einer Ausgabedatei (leer bei Ausgabe auf Drucker).

`landscape`

- true für Querformat.

`numCopies`

- Anzahl Kopien.

Rückgabewert: true bei Erfolg.

#### setAutoplotOption

    void setAutoplotOption(int setting);

Legt Autoplot-Einstellung fest.

Parameter:

`setting`

- true für automatisches Plotten nach Änderungen.

#### setAddFilesOption

    void setAddFilesOption(int setting);

Legt Einstellung für Dateien hinzufügen fest.

Parameter:

`setting`

- true für Hinzufügen von Plot- und Datendateien zu existierenden Plots.

#### setPathOption

    void setPathOption(int setting);

Legt Einstellung für Abspeicherung absoluter/relativer Pfade fest.

Parameter:

`setting`

- true für Speichern absoluter Pfade.

#### setBoundingBoxOption

    void setBoundingBoxOption(int setting);

Legt Einstellung für Berechnung der PostScript Bounding Box fest.

Parameter:

`setting`

- true für automatisches Berechnen der Bounding Box.

#### setPageFormat

    void setPageFormat(double w,
                       double h);

Stellt Seitenformat ein.

Parameter:

`w`

- Breite in cm.

`h`

- Höhe in cm.

#### setColors

    void setColors(const QString& colFrame,
                   const QString& colGrid,
                   const QString& colData);

Stellt Standardfarben ein (hexadezimalkodierte RGB-Zeichenketten, z. B. "ff" für rot).

Parameter:

`colFrame`

- Farbe für Rahmen und Beschriftung.

`colGrid`

- Farbe für Gitter und Tickmarken.

`colData`

- Farbe für Linien und Symbole.

#### setOutputFormat

    void setOutputFormat(const QString& pres,
                         int prec);

Stellt Format für numerische Ausgaben ein.

Parameter:

`pres`

- Darstellungszeichen entsprechend der Funktion `printf()`.

`prec`

- Genauigkeit.

#### setAutoplot

    void setAutoplot(double x0,
                     double w,
                     double y0,
                     double h,
                     int gridmode,
                     const QString& sx,
                     const QString& sy,
                     const QString& sh,
                     int pathHeading,
                     int ix,
                     int iy,
                     int ie,
                     int logx,
                     int logy,
                     int errbars,
                     int symb,
                     int autoNorm,
                     int autoFit);

Setzt Autoplot-Einstellungen.

Parameter:

`x0`

- linker Seitenrand in cm.

`w`

- Breite des Datenfensters in cm.

`y0`

- unterer Seitenrand in cm.

`h`

- Höhe des Datenfensters in cm.

`gridmode`

- 0 für nur Rahmen, 1 für Achsen mit Tickmarken, 2 für Achsen mit Tickmarken und Beschriftung, 3 für Gitter, 4 für Gitter mit Beschriftung.

`sx`

- x-Achsentext.

`sy`

- y-Achsentext.

`sh`

- Kopfzeilentext.

`pathHeading`

- true für Kopfzeile = Pfad.

`ix`

- x-Spaltenindex.

`iy`

- y-Spaltenindex.

`ie`

- Fehlerspaltenindex.

`logx`

- true für logarithmische Skalierung der x-Achse.

`logy`

- true für logarithmische Skalierung der y-Achse.

`errbars`

- true für Zeichnen von Fehlerbalken.

`symb`

- 0 für Kreise, < 0 für verschiedene Symbole, > 0 für verschiedene Linienarten.

`autoNorm`

- true für automatische Normierung.

`autoFit`

- true für automatische Parameteranpassung.

#### setAutofit

    void setAutofit(const QString& path,
                    const QString& name,
                    int nonLin,
                    int errCol,
                    const QString& errModPath,
                    const QString& errModName,
                    int itMax,
                    double tol,
                    int symb,
                    const QString& color,
                    int showDlg,
                    int savePar,
                    int follow);

Setzt Autofit-Einstellungen.

Parameter:

`path`

- absoluter Pfad der Bibliothek mit der anzupassenden Funktion.

`name`

- Name der anzupassenden Funktion.

`nonLin`

- true für nichtlineare Parameteranpassung.

`errCol`

- true für Wichten der Daten durch Fehlerspalte, false für Wichten durch Fehlermodellfunktion.

`errModPath`

- absoluter Pfad der Bibliothek mit der Fehlermodellfunktion.

`errModName`

- Name der Fehlermodellfunktion.

`itMax`

- maximale Anzahl Iterationen (nur nichtlineare Anpassung).

`tol`

- Toleranz (nur nichtlineare Anpassung).

`symb`

- Funktionsplot: 0 für Kreise, < 0 für verschiedene Symbole, > 0 für verschiedene Linienarten.

`color`

- Farbe für Funktionsplot.

`showDlg`

- true für Anzeige des Dialogs Parameteranpassung.

`savePar`

- true für Speichern der resultierenden Parameter in Dateienfiles.

`follow`

- true für Parametern folgen bei Serien von Anpassungen.

#### loadAutofitPar

    int loadAutofitPar(const QString& url);

Lädt Parametersatz der Autofit-Funktion von Datei.

Parameter:

`url`

- URL der Datei.

Rückgabewert: true bei Erfolg.

#### setAutofitPar

    int setAutofitPar(int iPar,
                      double value);

Setzt Wert eines Parameters für Autofit-Funktion.

Parameter:

`iPar`

- Parameterindex.

`value`

- Parameterwert.

Rückgabewert: true bei Erfolg.

#### enableFitPar

    int enableFitPar(int iPar,
                     int fit);

Legt anzupassende und nicht anzupassende Parameter fest.

Parameter:

`iPar`

- Parameterindex.

`fit`

- true stellt Parameter als anzupassend ein.

Rückgabewert: true bei Erfolg.

#### loadErrModPar

    int loadErrModPar(const QString& url,
                      int iArr);

Lädt Parametersatz für Fehlermodellfunktion von Datei.

Parameter:

`url`

- URL der Datei.

`iArr`

- Feldlistenindex.

Rückgabewert: true bei Erfolg.

#### setErrModPar

    int setErrModPar(int iPar,
                     double value,
                     int iArr);

Setzt Wert eines Parameters einer Fehlermodellfunktion.

Parameter:

`iPar`

- Parameterindex.

`value`

- Parameterwert.

`iArr`

- Feldlistenindex.

Rückgabewert: true bei Erfolg.

#### deleteItem

    int deleteItem(int iItem);

Löscht Plot-Bestandteil.

Parameter:

`iItem`

- Index des Bestandteils.

Rückgabewert: true bei Erfolg.

#### moveItem

    int moveItem(int is,
                 int id);

Verschiebt Plot-Bestandteil.

Parameter:

`is`

- Quellindex des Bestandteils.

`id`

- Zielindex des Bestandteils.

Rückgabewert: true bei Erfolg.

#### activateItem

    int activateItem(int iItem,
                     int active);

Setzt Aktivierungszustand eines Plotbestandteils.

Parameter:

`iItem`

- Index des Bestandteils.

`active`

- true für sichtbaren Bestandteil.

Rückgabewert: true bei Erfolg.

#### newFrameItem

    void newFrameItem(double x0,
                      double w,
                      double y0,
                      double h,
                      double xmin,
                      double xmax,
                      double ymin,
                      double ymax,
                      int logx,
                      int logy,
                      int ndigx,
                      int ndigy,
                      const QString& colFrame,
                      const QString& colGrid,
                      double xtic,
                      double ytic,
                      int mticx,
                      int mticy,
                      int gridmode,
                      int iex,
                      int iey,
                      const QString& sx,
                      const QString& sy,
                      const QString& sh,
                      double relSize,
                      int active);

Fügt neuen Rahmen-Bestandteil hinzu.

Parameter:

`x0`

- linker Seitenrand in cm.

`w`

- Breite in cm.

`y0`

- unterer Seitenrand in cm.

`h`

- Höhe in cm.

`xmin`

- x-Wert für linken Rand des Datenfensters in Benutzereinheiten.

`xmax`

- x-Wert für rechten Rand des Datenfensters in Benutzereinheiten.

`ymin`

- y-Wert für unteren Rand des Datenfensters in Benutzereinheiten.

`ymax`

- y-Wert für oberen Rand des Datenfensters in Benutzereinheiten.

`logx`

- true für logarithmische Skalierung der x-Achse.

`logy`

- true für logarithmische Skalierung der y-Achse.

`ndigx`

- Anzahl Nachkommastellen für x-Achse.

`ndigy`

- Anzahl Nachkommastellen für y-Achse.

`colFrame`

- Farbe für Rahmen und Beschriftung.

`colGrid`

- Farbe für Gitter und Tickmarken.

`xtic`

- Abstand zwischen großen Tickmarken der x-Achse.

`ytic`

- Abstand zwischen großen Tickmarken der y-Achse.

`mticx`

- Anzahl Intervalle zwischen großen Tickmarken der x-Achse.

`mticy`

- Anzahl Intervalle zwischen großen Tickmarken der y-Achse.

`gridmode`

- 0 für nur Rahmen, 1 für Achsen mit Tickmarken, 2 für Achsen mit Tickmarken und Beschriftung, 3 für Gitter, 4 für Gitter mit Beschriftung.

`iex`

- Logarithmus des Normierungsfaktors für x-Achse.

`iey`

- Logarithmus des Normierungsfaktors für y-Achse.

`sx`

- x-Achsentext.

`sy`

- y-Achsentext.

`sh`

- Kopfzeilentext.

`relSize`

- relative Größe für Text, Symbole und Linienbreiten.

`active`

- true für sichtbaren Bestandteil.

#### newAutoFrameItem

    void newAutoFrameItem();

Fügt neuen Rahmen-Bestandteil entsprechend den Autoplot-Einstellungen hinzu.

#### newArrayItem

    int newArrayItem(const QString& path,
                     int ix,
                     int iy,
                     int ie,
                     int istart,
                     int n,
                     int errbars,
                     int symb,
                     const QString& color,
                     double fx,
                     double fy,
                     int active);

Fügt neuen Feld-Bestandteil hinzu.

Parameter:

`path`

- absoluter Pfad der Datendatei.

`ix`

- x-Spaltenindex.

`iy`

- y-Spaltenindex.

`ie`

- Fehlerspaltenindex.

`istart`

- Startzeilenindex.

`n`

- Anzahl Datenpunkte.

`errbars`

- true für Zeichnen von Fehlerbalken.

`symb`

- 0 für Kreise, < 0 für verschiedene Symbole, > 0 für verschiedene Linienarten.

`color`

- Farbe für Datenplot.

`fx`

- Normierungsfaktor für x-Werte.

`fy`

- Normierungsfaktor für y-Werte.

`active`

- true für sichtbaren Bestandteil.

Rückgabewert: true bei Erfolg.

#### newFunItem

    int newFunItem(const QString& path,
                   const QString& name,
                   double xmin,
                   double xmax,
                   double dx,
                   int symb,
                   const QString& color,
                   double fx,
                   double fy,
                   int active);

Fügt neuen Funktions-Bestandteil hinzu.

Parameter:

`path`

- absoluter Pfad der Funktionsbibliothek.

`name`

- Name der Funktion.

`xmin`

- minimaler Wert des Arguments.

`xmax`

- maximaler Wert des Arguments.

`dx`

- Schrittweite der Argumentenwerte.

`symb`

- 0 für Kreise, < 0 für verschiedene Symbole, > 0 für verschiedene Linienarten.

`color`

- Farbe für Funktionsplot.

`fx`

- Normierungsfaktor für x-Werte.

`fy`

- Normierungsfaktor für y-Werte.

`active`

- true für sichtbaren Bestandteil.

Rückgabewert: true bei Erfolg.

#### newParFunItem

    int newParFunItem(const QString& pathx,
                      const QString& namex,
                      const QString& pathy,
                      const QString& namey,
                      double tmin,
                      double tmax,
                      double dt,
                      int symb,
                      const QString& color,
                      double fx,
                      double fy,
                      int active);

Fügt neuen Bestandteil Parametrische Funktion hinzu.

Parameter:

`pathx`

- absoluter Pfad der Bibliothek mit derFunktion für die y-Werte.

`namex`

- Name der Funktion für die x-Werte.

`pathy`

- absoluter Pfad der Bibliothek mit der Funktion für die y-Werte.

`namey`

- Name der Funktion für die y-Werte.

`tmin`

- minimaler Wert des Arguments.

`tmax`

- maximaler Wert des Arguments.

`dt`

- Schrittweite der Argumentenwerte.

`symb`

- 0 für Kreise, < 0 für verschiedene Symbole, > 0 für verschiedene Linienarten.

`color`

- Farbe für Funktionsplot.

`fx`

- Normierungsfaktor für x-Werte.

`fy`

- Normierungsfaktor für y-Werte.

`active`

- true für sichtbaren Bestandteil.

Rückgabewert: true bei Erfolg.

#### newSplineItem

    void newSplineItem(int deriv,
                       double low,
                       double xmin,
                       double xmax,
                       double dx,
                       int symb,
                       const QString& color,
                       double relSize,
                       double fx,
                       double fy,
                       int active);

Fügt neuen Spline-Bestandteil hinzu.

Parameter:

`deriv`

- Ordnung der Ableitung, 0 für Funktion selbst, -1 für Integral.

`low`

- Untergrenze für Spline-Integral.

`xmin`

- minimaler Wert des Arguments.

`xmax`

- maximaler Wert des Arguments.

`dx`

- Schrittweite der Argumentenwerte.

`symb`

- 0 für Kreise, < 0 für verschiedene Symbole, > 0 für verschiedene Linienarten.

`color`

- Farbe des Symbols oder der Linie.

`relSize`

- relative Größe für Symbole und Linienbreiten.

`fx`

- Normierungsfaktor für x-Werte.

`fy`

- Normierungsfaktor für y-Werte.

`active`

- true für sichtbaren Bestandteil.

#### newArray3DItem

    int newArray3DItem(double x0,
                       double w,
                       double y0,
                       double h,
                       double xmin,
                       double xmax,
                       double ymin,
                       double ymax,
                       double zmin,
                       double zmax,
                       int logx,
                       int logy,
                       int logz,
                       int ndigx,
                       int ndigy,
                       int ndigz,
                       const QString& colFrame,
                       const QString& colGrid,
                       const QString& colData,
                       double xtic,
                       double ytic,
                       double ztic,
                       int mticx,
                       int mticy,
                       int mticz,
                       int frame,
                       int gridmode,
                       int gridmode3D,
                       double xBox,
                       double yBox,
                       double zBox,
                       double xRef,
                       double yRef,
                       double phi,
                       double theta,
                       int iex,
                       int iey,
                       int iez,
                       const QString& sx,
                       const QString& sy,
                       const QString& sz,
                       const QString& sh,
                       double relSize,
                       const QString& path,
                       int ix,
                       int iy,
                       int iz,
                       int ie,
                       int istart,
                       int n,
                       int errbars,
                       double smf,
                       double dx,
                       double dz,
                       double fx,
                       double fy,
                       double fz,
                       int active);

Fügt neuen 3D-Feld-Bestandteil hinzu.

Parameters:

`x0`

- linker Seitenrand in cm.

`w`

- Breite in cm.

`y0`

- unterer Seitenrand in cm.

`h`

- Höhe in cm.

`xmin`

- minimaler x-Wert.

`xmax`

- maximaler x-Wert.

`ymin`

- minimaler y-Wert.

`ymax`

- maximaler y-Wert.

`zmin`

- minimaler z-Wert.

`zmax`

- maximaler z-Wert.

`logx`

- true für logarithmische Skalierung der x-Achse.

`logy`

- true für logarithmische Skalierung der y-Achse.

`logz`

- true für logarithmische Skalierung der z-Achse.

`ndigx`

- Anzahl Nachkommastellen für x-Achse.

`ndigy`

- Anzahl Nachkommastellen für y-Achse.

`ndigz`

- number of digits for z axis.

`colFrame`

- Farbe für Rahmen und Beschriftung.

`colGrid`

- Farbe für Tickmarken.

`colData`

- Farbe für Fläche.

`xtic`

- Abstand zwischen großen Tickmarken der x-Achse.

`ytic`

- Abstand zwischen großen Tickmarken der y-Achse.

`ztic`

- Abstand zwischen großen Tickmarken der z-Achse.

`mticx`

- Anzahl Intervalle zwischen großen Tickmarken der x-Achse.

`mticy`

- Anzahl Intervalle zwischen großen Tickmarken der y-Achse.

`mticz`

- Anzahl Intervalle zwischen großen Tickmarken der z-Achse.

`frame`

- true für Rahmen zeichnen.

`gridmode`

- 0 für nur Rahmen, 1 für Achsen mit Tickmarken, 2 für Achsen mit Tickmarken und Beschriftung.

`gridmode3D`

- 0 für Linien parallel zu x, 1 für Linien parallel zu z, 2 für x-z-Netz.

`xBox`

- x-Boxlänge in cm.

`yBox`

- y-Boxlänge in cm.

`zBox`

- z-Boxlänge in cm.

`xRef`

- x-Position der Mitte der Bodenfläche der Box.

`yRef`

- y-Position der Mitte der Bodenfläche der Box.

`phi`

- Winkel für Rotation um y-Achse in Grad.

`theta`

- Winkel für Neigung der y-Achse in Grad.

`iex`

- Logarithmus des Normierungsfaktors für x-Achse.

`iey`

- Logarithmus des Normierungsfaktors für y-Achse.

`iez`

- Logarithmus des Normierungsfaktors für z-Achse.

`sx`

- x-Achsentext.

`sy`

- y-Achsentext.

`sz`

- z-Achsentext.

`sh`

- Kopfzeilentext.

`relSize`

- relative Größe für Text und Linienbreiten.

`path`

- absolute path of the data file.

`ix`

- x-Spaltenindex.

`iy`

- y-Spaltenindex.

`iz`

- z-Spaltenindex.

`ie`

- y-Fehlerspaltenindex.

`istart`

- Startzeilenindex.

`n`

- Anzahl Datenpunkte.

`errbars`

- true für Gewichten der y-Werte mit Fehlerbalken.

`smf`

- Glättungsfaktor.

`dx`

- x-Netzlinienschrittweite.

`dz`

- z-Netzlinienschrittweite.

`fx`

- Normierungsfaktor für x-Werte.

`fy`

- Normierungsfaktor für y-Werte.

`fz`

- Normierungsfaktor für z-Werte.

`active`

- true für sichtbaren Bestandteil.

Rückgabewert: true bei Erfolg.

#### newFun3DItem

    int newFun3DItem(double x0,
                     double w,
                     double y0,
                     double h,
                     double xmin,
                     double xmax,
                     double ymin,
                     double ymax,
                     double zmin,
                     double zmax,
                     int logx,
                     int logy,
                     int logz,
                     int ndigx,
                     int ndigy,
                     int ndigz,
                     const QString& colFrame,
                     const QString& colGrid,
                     const QString& colData,
                     double xtic,
                     double ytic,
                     double ztic,
                     int mticx,
                     int mticy,
                     int mticz,
                     int frame,
                     int gridmode,
                     int gridmode3D,
                     double xBox,
                     double yBox,
                     double zBox,
                     double xRef,
                     double yRef,
                     double phi,
                     double theta,
                     int iex,
                     int iey,
                     int iez,
                     const QString& sx,
                     const QString& sy,
                     const QString& sz,
                     const QString& sh,
                     double relSize,
                     const QString& path,
                     const QString& name,
                     double dx,
                     double dz,
                     double fx,
                     double fy,
                     double fz,
                     int active);

Fügt neuen 3D-Funktions-Bestandteil hinzu.

Parameters:

`x0`

- linker Seitenrand in cm.

`w`

- Breite in cm.

`y0`

- unterer Seitenrand in cm.

`h`

- Höhe in cm.

`xmin`

- minimaler x-Wert.

`xmax`

- maximaler x-Wert.

`ymin`

- minimaler y-Wert.

`ymax`

- maximaler y-Wert.

`zmin`

- minimaler z-Wert.

`zmax`

- maximaler z-Wert.

`logx`

- true für logarithmische Skalierung der x-Achse.

`logy`

- true für logarithmische Skalierung der y-Achse.

`logz`

- true für logarithmische Skalierung der z-Achse.

`ndigx`

- Anzahl Nachkommastellen für x-Achse.

`ndigy`

- Anzahl Nachkommastellen für y-Achse.

`ndigz`

- number of digits for z axis.

`colFrame`

- Farbe für Rahmen und Beschriftung.

`colGrid`

- Farbe für Tickmarken.

`colData`

- Farbe für Fläche.

`xtic`

- Abstand zwischen großen Tickmarken der x-Achse.

`ytic`

- Abstand zwischen großen Tickmarken der y-Achse.

`ztic`

- Abstand zwischen großen Tickmarken der z-Achse.

`mticx`

- Anzahl Intervalle zwischen großen Tickmarken der x-Achse.

`mticy`

- Anzahl Intervalle zwischen großen Tickmarken der y-Achse.

`mticz`

- Anzahl Intervalle zwischen großen Tickmarken der z-Achse.

`frame`

- true für Rahmen zeichnen.

`gridmode`

- 0 für nur Rahmen, 1 für Achsen mit Tickmarken, 2 für Achsen mit Tickmarken und Beschriftung.

`gridmode3D`

- 0 für Linien parallel zu x, 1 für Linien parallel zu z, 2 für x-z-Netz.

`xBox`

- x-Boxlänge in cm.

`yBox`

- y-Boxlänge in cm.

`zBox`

- z-Boxlänge in cm.

`xRef`

- x-Position der Mitte der Bodenfläche der Box.

`yRef`

- y-Position der Mitte der Bodenfläche der Box.

`phi`

- Winkel für Rotation um y-Achse in Grad.

`theta`

- Winkel für Neigung der y-Achse in Grad.

`iex`

- Logarithmus des Normierungsfaktors für x-Achse.

`iey`

- Logarithmus des Normierungsfaktors für y-Achse.

`iez`

- Logarithmus des Normierungsfaktors für z-Achse.

`sx`

- x-Achsentext.

`sy`

- y-Achsentext.

`sz`

- z-Achsentext.

`sh`

- Kopfzeilentext.

`relSize`

- relative Größe für Text und Linienbreiten.

`path`

- absoluter Pfad der Funktionsbibliothek.

`name`

- Name der Funktion.

`dx`

- Schrittweite des x-Arguments.

`dz`

- Schrittweite des z-Arguments.

`fx`

- Normierungsfaktor für x-Werte.

`fy`

- Normierungsfaktor für y-Werte.

`fz`

- Normierungsfaktor für z-Werte.

`active`

- true für sichtbaren Bestandteil.

Rückgabewert: true bei Erfolg.

#### newImageItem

    void newImageItem(const QString& path,
                      double x,
                      double y,
                      double fx,
                      double fy,
                      int active);

Fügt neuen Bild-Bestandteil hinzu.

Parameter:

`path`

- absoluter Pfad der EPS-Datei.

`x`

- x-Position in cm.

`y`

- y-Position in cm.

`fx`

- horizontaler Skalierungsfaktor.

`fy`

- vertikaler Skalierungsfaktor.

`active`

- true für sichtbaren Bestandteil.

#### newLegendItem

    void newLegendItem(int symb,
                       const QString& colSymb,
                       double x,
                       double y,
                       const QString& text,
                       const QString& colText,
                       double xoff,
                       double yoff,
                       double relSize,
                       int active);

Fügt neuen Legenden-Bestandteil hinzu.

Parameter:

`symb`

- 0 für Kreise, < 0 für verschiedene Symbole, > 0 für verschiedene Linienarten.

`colSymb`

- Farbe des Symbols oder der Linie.

`x`

- x-Position in cm.

`y`

- y-Position in cm.

`text`

- Text.

`colText`

- Farbe des Texts.

`xoff`

- x-Offset des Texts in cm.

`yoff`

- y-Offset des Texts in cm.

`relSize`

- relative Zeichengröße.

`active`

- true für sichtbaren Bestandteil.

#### newTextItem

    void newTextItem(const QString& text,
                     const QString& color,
                     int align,
                     double x,
                     double y,
                     double dir,
                     double relSize,
                     int active);

Fügt neuen Text-Bestandteil hinzu.

Parameter:

`text`

- Text.

`color`

- Farbe des Texts.

`align`

- 1: linksbündig, 2: zentriert, 3: rechtsbündig.

`x`

- x-Position in cm.

`y`

- y-Position in cm.

`dir`

- Richtung in Grad.

`relSize`

- Relative Zeichengröße.

`active`

- true für sichtbaren Bestandteil.

#### newLineItem

    void newLineItem(int symb,
                     const QString& color,
                     double x,
                     double y,
                     double dir,
                     double len,
                     double relSize,
                     int active);

Fügt neuen Linien-Bestandteil hinzu.

Parameter:

`symb`

- 1 bis 9 für verschiedene Linienarten.

`color`

- Farbe der Linie.

`x`

- x Startposition in cm.

`y`

- y Startposition in cm.

`dir`

- Richtung in Grad.

`len`

- Länge in cm.

`relSize`

- Relative Breite.

`active`

- true für sichtbaren Bestandteil.

#### newArrowItem

    void newArrowItem(const QString& color,
                      double x,
                      double y,
                      double dir,
                      double len,
                      double relSize,
                      int active);

Fügt neuen Pfeil-Bestandteil hinzu.

Parameter:

`color`

- Farbe des Pfeils.

`x`

- x Position der Spitze in cm.

`y`

- y Position der Spitze in cm.

`dir`

- Richtung in Grad.

`len`

- Gesamtlänge in cm.

`relSize`

- Relative Größe der Pfeilspitze.

`active`

- true für sichtbaren Bestandteil.

#### newArcItem

    void newArcItem(const QString& color,
                    double x,
                    double y,
                    double w,
                    double h,
                    double a,
                    double alen,
                    double relSize,
                    double ang,
                    int active);

Fügt neuen Ellipsenbogen-Bestandteil hinzu.

Parameter:

`color`

- Farbe des Bogens.

`x`

- x-Position des Mittelpunkts in cm.

`y`

- y-Position des Mittelpunkts in cm.

`w`

- Breite der Ellipse in cm.

`h`

- Höhe der Ellipse in cm.

`a`

- Anfangswinkel in Grad.

`alen`

- Länge in Grad.

`relSize`

- relative Linienbreite.

`ang`

- Rotationswinkel in Grad.

`active`

- true für sichtbaren Bestandteil.

#### newRectangleItem

    void newRectangleItem(const QString& color,
                          double x,
                          double y,
                          double w,
                          double h,
                          double relSize,
                          int fill,
                          int active);

Fügt neuen Rechteck-Bestandteil hinzu.

Parameter:

`color`

- Farbe des Rechtecks.

`x`

- x-Position der linken Seite in cm.

`y`

- y-Position der unteren Seite in cm.

`w`

- Breite in cm.

`h`

- Höhe in cm.

`relSize`

- relative Linienbreite.

`fill`

- true für mit Farbe gefülltes Rechteck.

`active`

- true für sichtbaren Bestandteil.

#### newEllipseItem

    void newEllipseItem(const QString& color,
                        double x,
                        double y,
                        double w,
                        double h,
                        double relSize,
                        int fill,
                        int active);

Fügt neuen Ellipsen-Bestandteil hinzu.

Parameter:

`color`

- Farbe der Ellipse.

`x`

- x-Position des Zentrums in cm.

`y`

- y-Position des Zentrums in cm.

`w`

- Breite in cm.

`h`

- Höhe in cm.

`relSize`

- relative Linienbreite.

`fill`

- true für mit Farbe gefüllte Ellipse.

`active`

- true für sichtbaren Bestandteil.

#### newScaleBarItem

    void newScaleBarItem(const QString& str,
                         const QString& color,
                         double x,
                         double y,
                         double len,
                         double relSize,
                         int orientation,
                         int active);

Fügt neuen Maßstabs-Bestandteil hinzu.

Parameter:

`str`

- Text.

`color`

- Farbe des Maßstabs.

`x`

- x-Position in cm.

`y`

- y-Position in cm.

`len`

- Länge in cm.

`relSize`

- relative Linienbreite.

`orientation`

- 0 für horizontal, 1 für vertikal.

`active`

- true für sichtbaren Bestandteil.

#### autoScaleFrame

    int autoScaleFrame(int iItem,
                       int autoNorm);

Skaliert Rahmen automatisch gemäß allen zugehörigen Bestandteilen.

Parameter:

`iItem`

- Index des Rahmen-Bestandteils.

`autoNorm`

- true für zusätzliche automatische Normierung.

Rückgabewert: true bei Erfolg.

#### loadPar

    int loadPar(const QString& url,
                int iItem,
                int yFun);

Lädt Parametersatz für Funktion von Datei.

Parameter:

`url`

- URL der Datei.

`iItem`

- Index des Funktions-Bestandteils.

`yFun`

- true für y-Funktionsparameter, false für x-Funktionsparameter (nur für parametrische Funktionen).

Rückgabewert: true bei Erfolg.

#### setPar

    int setPar(int iItem,
               int iPar,
               double value,
               int yFun);

Setzt Wert eines Funktionsparameters.

Parameter:

`iItem`

- Index des Funktions-Bestandteils.

`iPar`

- Parameterindex.

`value`

- Parameterwert.

`yFun`

- true für y-Funktionsparameter, false für x-Funktionsparameter (nur für parametrische Funktionen).

Rückgabewert: true bei Erfolg.

#### setArrayRange

    int setArrayRange(int iItem,
                      int iStart,
                      int n);

Legt Zeilenbereich eines Felds fest.

Parameter:

`iItem`

- Index des Feld-Bestandteils.

`iStart`

- Startzeilenindex.

`n`

- Anzahl Datenpunkte.

Rückgabewert: true bei Erfolg.

#### addFitItems

    int addFitItems(int erase,
                    int iArr,
                    int iFun,
                    int errCol,
                    const QString& errModPath,
                    const QString& errModName);

Fügt Feld- und Funktions-Bestandteile zu Listen für (multidimensionale) Parameteranpassung hinzu.

Parameter:

`erase`

- true: löscht Liste vorher.

`iArr`

- Index des Feld-Bestandteils.

`iFun`

- Index des Funktionsbestandteils.

`errCol`

- true für Wichten der Daten entsprechend Fehlerspalte, false für Wichten entsprechend Fehlermodellfunktion.

`errModPath`

- absoluter Pfad der Bibliothek mit der Fehlermodellfunktion.

`errModName`

- Name der Fehlermodellfunktion.

Rückgabewert: true bei Erfolg.

#### fit

    int fit(int nonLin,
            int savePar,
            int follow);

Führt Parameteranpassung durch.

Parameter:

`nonLin`

- true für nichtlineare Parameteranpassung.

`savePar`

- true für Speichern der resultierenden Parameter in Datei.

`follow`

- true für Parametern folgen bei Serienanpassungen.

Rückgabewert: true bei Erfolg.

#### splineFit

    int splineFit(int iArr,
                  int iSpl,
                  int deg,
                  double smf,
                  double xmin,
                  double xmax,
                  int errCol,
                  const QString& errModPath,
                  const QString& errModName);

Führt Anpassung eines glättenden Splines durch.

Parameters:

`iArr`

- Index des Feld-Bestandteils.

`iSpl`

- Index des Spline-Bestandteils.

`deg`

- Grad des Splines.

`smf`

- Glättungsfaktor.

`xmin`

- Untergrenze des Approximationsintervalls.

`xmax`

- Obergrenze des Approximationsintervalls.

`errCol`

- true für Wichten der Daten entsprechend Fehlerspalte, false für Wichten entsprechend Fehlermodellfunktion.

`errModPath`

- Absoluter Pfad der Bibliothek mit der Fehlermodellfunktion.

`errModName`

- Name der Fehlermodellfunktion.

Rückgabewert: true bei Erfolg.

#### chiSquare

    double chiSquare();

Gibt Chi-Quadrat-Wert der letzen Parameteranpassung zurück.

Rückgabewert: Chi-Quadrat.

#### saveFitPar

    int saveFitPar(const QString& url);

Speichert aus einer Anpassung resultierende Parameter und ihre Fehler in einer Datei.

Parameter:

`url`

- URL der Datei.

Rückgabewert: true bei Erfolg.

#### exportValues

    int exportValues(const QString& url,
                     int iItem);

Exportiert Funktionswertetabelle in Datei.

Parameter:

`url`

- URL der Datei.

`iItem`

- Index des Funktions-Bestandteils.

Rückgabewert: true bei Erfolg.

## Fragen und Antworten

Die automatische Berechnung der Bounding Box für PostScript-Dateien funktioniert nicht richtig. Die berechneten Werte schneiden Teile des Plots ab. Woran liegt das?

Zum richtigen Funktionieren muß das Seitenformat auf der Seite Grundeinstellungen im Dialog Kpl-Einstellungen genügend groß eingestellt sein, denn &kpl; sucht in dieser Fläche nach dem kleinsten, alle Teile des Plots enthaltenden Rechteck.

Warum endet mein Plot einer Datendatei mit einer Linie zum Ursprung, obwohl der letzte Punkt in der Datei nicht die Koordinaten (0, 0) hat?

Ihre Datendatei scheint mit einigen unsichtbaren, aber störenden Zeichen zu enden. Löschen Sie diese Zeichen!

Warum beginnt das Strichmuster von aufeinanderfolgenden Kurven nicht beim gleichen Punkt?

Dies erlaubt das Plotten einer Kurve aus mehreren Stücken (mit z. B. unterschiedlicher Schrittweite des Funktionsarguments) ohne "Sprünge" im Strichmuster. Sie können die Strichmusterposition durch Einfügen von Legenden (unsichtbar mit Symbol -17 und leerem Text) vor den entsprechenden Bestandteilen zurücksetzen.

## Danksagung und Lizenz

&kpl;

&kpl; Copyright 2005 Werner Stille stille@uni-freiburg.de

Dank an

- das KDevelop-Team für die Entwicklungsumgebung, die das KDE-Programmieren sehr erleichtert

- Dimi Shahbaz dshahbaz@ucla.edu für Vorschläge und Änderungen

- Jürgen Siepmann siepmann@kanzlei-siepmann.de für Tests und Kritik

- Wojciech Migda migda@chemia.uj.edu.pl für die polnische Übersetzung

- Taiki Komoda kom@kde.gr.jp für die japanische Übersetzung

- Alan Mizrahi alan@ldc.usb.ve für die spanische Übersetzung

- Paul Dierckx Paul.Dierckx@cs.kuleuven.ac.be für FITPACK, die Sammlung von FORTRAN-Programmen beschrieben in seinem Buch "Curve and Surface Fitting with Splines", Oxford University Press, 1993 (Versionen in C++ einiger FITPACK-Funktionen werden in Kpl genutzt)

Dokumentations-Copyright 2005 Werner Stille stille@uni-freiburg.de

&underFDL; &underGPL;

## Installation

### Woher bekommt man &kpl;?

&kpl; kann auf seiner homepage http://frsl06.physik.uni-freiburg.de/privat/stille/kpl/ und auf der Haupt-FTP-Site des KDE-Projects ftp://ftp.kde.org/pub/kde/ gefunden werden.

### Voraussetzungen

Um &kpl; erfolgreich einzusetzen, benötigen Sie KDE. Der PostScript-Interpreter Ghostscript wird für das automatische Berechnen der Bounding Box von erzeugten PostScript-Dateien benötigt.

### Übersetzen und Installieren

Um &kpl; auf Ihrem System zu übersetzen und zu installieren, geben Sie im Basisverzeichnis der &kpl;-Distribution folgende Anweisungen ein:

    % ./configure
    % make
    % make install

Da &kpl; autoconf und automake nutzt, sollten Sie keine Schwierigkeiten beim Übersetzen haben. Sollte es Probleme geben, berichten Sie bitte dem Autor von &kpl; darüber.