UniScript Manual - UniPlot für Windows
Transcription
UniScript Manual - UniPlot für Windows
UniScript Manual Release R2016 Uniplot Software GmbH 24.11.2016 Inhaltsverzeichnis 1 . . . . . . . 1 1 1 2 2 2 3 3 2 Dokumentation, Support 2.1 Support . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 6 3 Das Wichtigste in Kurzform 7 4 Ein einfaches Beispiel 4.1 Ein neues Dokument erzeugen . . . . 4.2 Daten in ein Diagramm importieren . 4.3 Editieren der Isolinien . . . . . . . . 4.4 Diagramm- und Achsen-Titel ändern 4.5 Diagramm-Konfiguration bearbeiten . 4.6 2D-Datensatz importieren . . . . . . 5 Installation von UniPlot 1.1 Systemvoraussetzungen . . . . . . . . . . . . . . 1.2 Installation . . . . . . . . . . . . . . . . . . . . . 1.3 UniPlot-Verzeichnis . . . . . . . . . . . . . . . . 1.4 Installation von der Kommandozeile . . . . . . . . 1.5 Verwendung eines eigenen Installationsprogramms 1.6 Netzwerk-Installation . . . . . . . . . . . . . . . 1.7 Deinstallation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13 13 14 17 20 21 22 UniPlot-Objekte 5.1 UniPlot-Dokumente . . . . . . . . . . . . . . 5.2 2D-Diagramm . . . . . . . . . . . . . . . . . 5.3 Gestapelte Diagramme mit mehreren Y-Achsen 5.4 3D-Diagramm . . . . . . . . . . . . . . . . . 5.5 Wasserfall-Diagramm . . . . . . . . . . . . . 5.6 Datensatz-Objekte . . . . . . . . . . . . . . . 5.7 Zeichenobjekte . . . . . . . . . . . . . . . . . 5.8 Formeln und Latex-Texte . . . . . . . . . . . 5.9 Textobjekte . . . . . . . . . . . . . . . . . . . 5.10 Text-Platzhalter . . . . . . . . . . . . . . . . . 5.11 Eingabe über Dialog . . . . . . . . . . . . . . 5.12 Feldfunktionen . . . . . . . . . . . . . . . . . 5.13 Schriftfelder . . . . . . . . . . . . . . . . . . 5.14 Erstellung eigener Schriftfelder . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 25 26 29 32 33 33 34 36 36 43 45 45 48 49 . . . . . . . . . . . . . . . . . . . . . . . . i 5.15 Tabellen-Objekte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 6 7 8 9 Die Zwischenablage 6.1 Objekte in UniPlot einfügen . . . . . 6.2 Bearbeiten eines eingefügten Objekts 6.3 Zeichenobjekte kopieren . . . . . . . 6.4 Datensatz kopieren . . . . . . . . . . 6.5 Diagramm kopieren . . . . . . . . . 6.6 Ganze Seite kopieren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 53 53 53 54 54 54 Beispiele 7.1 2D-Datensatz-Attribute . . . . . . . . . . . . . . . . 7.2 Diagramm mit 3 überlappenden y-Achsen . . . . . . . 7.3 2D-Datensatz - Ableitung und Integral . . . . . . . . 7.4 Diagramm mit 2 Kurven und Farbfüllung . . . . . . . 7.5 Mathematische Funktionen f(x) graphisch darstellen . 7.6 Konturdiagramm mit Farbverlauf und Legende . . . . 7.7 Konturdiagramm und 3D-Diagramm . . . . . . . . . 7.8 Mathematische Funktionen f(x,y) graphisch darstellen 7.9 Kennfeldschnitte . . . . . . . . . . . . . . . . . . . . 7.10 Kennfeldschnitt entlang einer Kurve . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 55 56 57 58 59 60 61 62 63 64 Import von Daten 8.1 Datensatz-Import . . . . . . . . . . . . . . . . . . . . 8.2 Formatvorschriften für CSV-, Text- und Excel-Dateien 8.3 UTX-Datendatei-Format . . . . . . . . . . . . . . . . 8.4 Import von 3D-Matrix-Daten . . . . . . . . . . . . . 8.5 Definition der Volllastlinie . . . . . . . . . . . . . . . 8.6 Speichern einer Hülle . . . . . . . . . . . . . . . . . 8.7 Laden der Hülle . . . . . . . . . . . . . . . . . . . . 8.8 Daten-Import in ein Wasserfalldiagramm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 68 69 71 79 79 83 83 83 Automatisierung der Diagrammerstellung 9.1 Automatisierte Diagrammerstellung aus Benutzersicht . . . . . . . . . . . . . . . . . . 9.2 Erstellung einer Automatisierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.3 Die wichtigsten Automatisierungs-Funktionen . . . . . . . . . . . . . . . . . . . . . . 87 87 89 91 10 Lizenzbestimmungen 10.1 UniPlot . . . . . 10.2 netCDF . . . . . 10.3 Scintilla . . . . . 10.4 VTK . . . . . . 10.5 PCRE . . . . . . 10.6 zlib . . . . . . . 10.7 LZF . . . . . . . 10.8 expat . . . . . . 10.9 qhull . . . . . . 10.10 jpeg . . . . . . . 10.11 png . . . . . . . 10.12 cxImage . . . . 10.13 nullsoft Installer 10.14 libffi . . . . . . ii . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97 97 98 98 99 99 100 101 101 102 103 103 105 105 105 10.15 10.16 10.17 10.18 10.19 10.20 10.21 10.22 10.23 HDF5 . . . . . . . . . . . . . . . . . kazlib . . . . . . . . . . . . . . . . . upfirdn (Polyphase FIR Resampling) LZ4 . . . . . . . . . . . . . . . . . . libxml2 . . . . . . . . . . . . . . . . Color Brewer . . . . . . . . . . . . . cURL Library (http://curl.haxx.se) . . OpenSSL . . . . . . . . . . . . . . . libssh2 . . . . . . . . . . . . . . . . Stichwortverzeichnis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 107 107 108 109 109 110 110 112 115 iii iv KAPITEL 1 Installation von UniPlot 1.1 Systemvoraussetzungen UniPlot kann mit den folgenden Betriebssystemen verwendet werden: • Windows Vista • Windows 7 • Windows 8 • Windows 10 Empfehlenswert sind die Versionen 7, 8 und 10. 1.2 Installation • Während der Installation benötigen Sie Ihre Lizenznummer. Sie finden die Nummer auf der ersten Seite der Benutzeranleitung. • Die Installationsprogramme befinden auf der CD-ROM im Verzeichnis \setup oder Sie können die aktuelle Version von http://www.uniplot.de/download.html laden. • Es existieren zwei Installationsprogramme: setup-uniplot-R2015_8-win64.exe setup-uniplot-R2015_8-win32.exe Falls Sie ein 64-Bit Windows verwenden, installieren Sie die 64-Bit-Version von UniPlot (setup-uniplot-R2015_8-win64.exe) sonst die 32-Bit-Version. Unter einem 64-Bit Windows können beide Versionen installiert und gestartet werden, unter einem 32-Bit-Windows kann nur die 32-Bit-UniPlot-Version gestartet werden. • Es werden alle benötigten Programm- und Beispieldateien auf Ihre Festplatte in das Verzeichnis c:\Program Files (x86)\UniPlot Software\R2015-win64 oder ein Verzeichnis Ihrer Wahl kopiert. • Nach der erfolgreichen Installation doppelklicken Sie auf das Symbol von UniPlot, um das Programm zu starten. 1 UniScript Manual, Release R2016 Sollten bei der Installation oder beim Start von UniPlot Probleme auftreten, rufen Sie uns an. 1.3 UniPlot-Verzeichnis Die aktuelle 64-Bit UniPlot-Version wird in einem 64-Bit-Windows normalerweise im Verzeichnis: c:\Program Files (x86)\UniPlot Software\R2015-win64 installiert. Ab UniPlot R2016 wird die 64-Bit-Version unter: c:\Program Files\UniPlot Software\R2016-win64 installiert. Die 32-Bit-Version in: c:\Program Files (x86)\UniPlot Software\R2015-win32 In einem gestarteten UniPlot können Sie das Installationsverzeichnis über die Funktion GetRootDirectory ermitteln. 1.4 Installation von der Kommandozeile Der Lizenzschlüssel und das Installationsverzeichnis können in der Kommandozeile übergeben werden. Beispiel: setup-uniplot-R2015_8-win64.exe /S /LIC=NNN /ALLUSERS /D=C:\Program Files(x86)\UniPlot S Schlüssel /S /Lic=NNN /ALLUSERS /D=SSS Beschreibung Silent. Das Setup-Programm zeigt keine Dialoge an. Lizenzschlüssel. NNN steht für einen gültigen Lizenzschlüssel. Icons für alle Benutzer erstellen. Default ist der aktuelle User. Setzt das Installations-Verzeichnis. /D muss der letzte Parameter der Kommandozeile sein. Auch wenn der Pfadname Leerzeichen enthält, darf der Pfadname nicht von Anführungszeichen umschlossen sein. Es muss der komplette Pfad mit Laufwerk angegeben werden. 1.5 Verwendung eines eigenen Installationsprogramms Ein Installationsprogramm für UniPlot braucht lediglich den kompletten UniPlot-Baum in das Verzeichnis c:\Program Files (x86)\UniPlot Software\R2015-win64 oder ein anderes Verzeichnis kopieren. Beim ersten Start von UniPlot unter dem Anwenderkonto werden dann alle erforderlichen Registrierdatenbank-Einträge sowie drei UniPlot-Icons (im Startmenü, auf dem Desktop und in der sogenannten Schnellstartleiste) erzeugt. 2 Kapitel 1. Installation von UniPlot UniScript Manual, Release R2016 1.6 Netzwerk-Installation Falls Sie mehrere UniPlot-Lizenzen haben und sicherstellen können, dass nur die entsprechende Anzahl an Lizenzen verwendet wird, können Sie UniPlot auf einem Server installieren. Beim ersten Start von UniPlot auf dem Arbeitsplatzrechner unter dem richtigen Anwenderkonto werden dann alle erforderlichen Registrierdatenbank-Einträge sowie drei UniPlot-Icons (im Startmenü, auf dem Desktop und in der sogenannten Schnellstartleiste) erzeugt. 1.7 Deinstallation Öffnen Sie Programme und Funktionen, indem Sie auf die Schaltfläche Start klicken, auf Systemsteuerung klicken, auf Programme klicken und dann auf Programme und Funktionen klicken. Wählen Sie dann UniPlot R2015. Alternativ können Sie das Uninstall-Programm über den DOS-Prompt aufrufen: c:\Program Files (x86)\UniPlot Software\R2015-win64\uninstall.exe /S Das Deinstallations-Programm löscht nicht das UniPlot-Anwenderverzeichnis: C:\Users\<USER-NAME>\Documents\UniPlot\ und nicht die Registry-Einträge von UniPlot, die sich unter: HKEY_CURRENT_USER\Software\RSB befinden. 1.6. Netzwerk-Installation 3 UniScript Manual, Release R2016 4 Kapitel 1. Installation von UniPlot KAPITEL 2 Dokumentation, Support Die vorliegende UniPlot-Benutzeranleitung besteht aus zwei Teilen: Der erste Teil beschäftigt sich mit UniPlot, der zweite Teil beschäftigt sich mit der in UniPlot eingebauten Programmiersprache UniScript. Sie können diese Anleitung auch mit dem Acrobat-Reader lesen oder ausdrucken. Die deutsche und die englische Version des Acrobat-Readers befindet sich auf der UniPlot-CD im Verzeichnis \tools\acrobat. Im Internet finden Sie den Acrobat-Reader unter http://www.adobe.com/acrobat. Dieses Dokument befindet sich als PDF-Datei in deutsch und englisch im Verzeichnis docs der CD. Sie können aktuelle Versionen der Dateien auch im Internet unter http://www.uniplot.de/documents/de/download.html erhalten. Bitte beachten Sie auch die Release-Notes, die wichtige Informationen enthalten, die in dieser Anleitung u.U. noch nicht berücksichtigt wurden. Diese Benutzer-Anleitung enthält nicht die vollständige Dokumentation von UniPlot. Die Dokumentation besteht aus weiteren Teilen, die sich in der Online-Hilfe befinden. 5 UniScript Manual, Release R2016 2.1 Support Nach Kauf von UniPlot können Sie UniPlot-Updates aus dem Internet downloaden. Sie sollten deshalb alle paar Wochen mal auf unserer Homepage (http://www.uniplot.de oder http://www.uniplot.com) vorbei schauen. Sie können sich den RSS-Feed unter http://www.uniplot.de/news.html abonnieren, wenn Sie über Änderungen in UniPlot informiert werden möchten. (Zu RSS siehe Wikipedia: http://de.wikipedia.org/wiki/RSS) Falls Sie keinen Internet-Zugriff haben, können wir Ihnen auf Anfrage auch gern ein Update auf CD zusenden. Falls Ihnen dieses Handbuch sowie die Online-Hilfe bei der Installation oder Anwendung von UniPlot einmal nicht weiterhelfen, erhalten Sie von uns ein Jahr lang kostenlosen Support per Telefon oder EMail. Wir versuchen Ihre E-Mails kurzfristig zu beantworten. Falls Sie Sie es sehr eilig haben, rufen Sie uns an. Sie erreichen Sie uns am besten Montags bis Freitags in der Zeit von 10-12 Uhr und von 14-16 Uhr. Uniplot Software GmbH Am Seekanal 16 D-15834 Rangsdorf Tel.: 033708/73754 Fax: 033708/73755 [email protected] Internet: http://www.uniplot.de oder http://www.uniplot.com 6 Kapitel 2. Dokumentation, Support KAPITEL 3 Das Wichtigste in Kurzform • Die mitgelieferten Beispieldateien befinden sich in dem Verzeichnis UniPlot\samples und können mit dem Befehl Öffnen im Menü Datei geladen werden (dateioffnen) oder mit Schalter . • Diagramme, Datensätze und Zeichenobjekte werden durch Anklicken mit der Maus markiert. Durch Doppelklicken kann die Bearbeitungsmaske des Objekts aufgerufen werden (z. B. für die Objekte Achsen, Achsenlabel, Achsentitel, Texte, Datensätze, Diagramme usw.). • Die Bearbeitungsmasken für Datensätze können auch über die Schalter 1D- und 2D Konfiguration und 3D-Konfiguration geöffnet werden. • Um ein Diagramm zu verschieben, muss es mit der Maus am Rand angefaßt werden. Um die Größe von Diagrammen oder Zeichenobjekten zu ändern, muss das Objekt mit der Maus in den markierten Ecken angefasst werden. • Beim Verschieben von Objekten werden die Ecken automatisch auf ein Fanggitter gezogen. Um diesen Snap-To-Grid-Effekt vorübergehend abzuschalten, drücken Sie die Strg-Taste. Die Maschenweite des Fanggitters kann mit dem Befehl extraseinstellungen-andern festgelegt werden. • Zeichenobjekte und Diagramme können auch mit Hilfe der Pfeiltasten der Tastatur verschoben werden. Wenn die Shift-Taste gedrückt wird, kann die Höhe und Breite verändert werden. Um den Snap-To-Grid-Effekt vorübergehend abzuschalten, drücken Sie die Strg-Taste. 7 UniScript Manual, Release R2016 • Ein neues Dokument kann mit dem Befehl dateineu, Schalter , erzeugt werden. • Ein neues Diagramm kann mit dem Befehl diagrammneues-diagramm-hinzufugen erstellt werden (Schalter ). Ziehen Sie dazu einen Rahmen mit der Maus auf. Diagramme mit mehreren Achsen werden aus einzelnen Diagrammen aufgebaut. Die Achsenposition kann über den Dialog diagramdiagram-settings geändert werden. Mittels des Dialogfelds diagrammlayout können die Achsen gegenüber ihrer Standardposition verschoben werden (Schalter ). • Um dem aktiven Dokument eine neue Seite zuzufügen, positionieren Sie den Mauszeiger auf dem Seitenregister und drücken die rechte Maustaste oder wählen Sie den Befehl bearbeitenseiteneueseite. • Ein Zeichenobjekt wird erzeugt, indem Sie einen der Schalter wählen und mit der Maus das Objekt zeichnen. , , , , usw. aus- • Neu erzeugte Zeichenobjekte werden dem markierten Diagramm zugeordnet. Verschiebt man das Diagramm, verschieben sich auch die Objekte. Zeichenobjekte verschiedener Diagramme können nicht zusammengefaßt werden. Man kann Zeichenobjekte aber ausschneiden und in ein anderes Diagramm kopieren. • Mit Hilfe der Schalter , und können Diagramme, Zeichenobjekte und Datensätze über die Zwischenablage in andere Diagramme oder andere UniPlot-Dokumente kopiert werden. • Um eine Seite in andere Windows-Anwendungen einzufügen, wählen Sie die Funktion bearbeitenganze-seite-kopieren. Wechseln Sie in die Windows Anwendung und wählen Sie dort die Funktion Einfügen im Bearbeiten-Menü, um die UniPlot-Seite einzufügen. • Mehrere Zeichenobjekte können markiert werden, wenn man beim Anklicken die Shift-Taste gedrückt hält. Versehentlich markierte Objekte können durch erneutes Anklicken wieder abgewählt werden. zu einem Objekt zusam• Mehrere Zeichenobjekte eines Diagramms können mit dem Schalter mengefaßt werden. Mit dem Schalter können zusammengefasste Objekte wieder in einzelne Objekte aufgelöst werden. • Zeichenobjekte, Datensätze und Diagramme werden mit der Entf-Taste (Delete-Taste) gelöscht. 8 Kapitel 3. Das Wichtigste in Kurzform UniScript Manual, Release R2016 Wird ein Diagramm gelöscht, werden auch die zu diesem Diagramm gehörenden Zeichenobjekte und Datensätze entfernt. • Ein Bildausschnitt wird vergrößert, indem man den Schalter Rahmen aufzieht. betätigt und mit der Maus einen • Mit den Schaltern , , und können Beschriftungen und Isolinien in IsolinienDiagramme eingefügt oder gelöscht werden. Befinden sich in einem Diagramm mehrere 3DDatensätze, muß für diese Funktion einer der Datensätze markiert werden. Klicken Sie dazu eine Isolinie des gewünschten Datensatzes an. • Um Isolinien zu beschriften, wählen Sie aus der Symbolleiste den Schalter . Ziehen Sie mit der Maus eine Linie, die mindestens eine Isolinie schneidet. An den Schnittpunkten werden die Isolinien beschriftet. Einzelne Labels können durch Anklicken eines Punktes der Isolinie eingefügt werden. • Um Isolinien-Beschriftungen zu löschen, wählen Sie den Schalter und ziehen mit der Maus einen Rahmen auf, der die unerwünschten Labels umschließt. Einzelne Labels werden durch Anklicken gelöscht. • Isolinien werden mit Schalter in das Kennfeld eingefügt. Um eine Linie einzufügen, klicken Sie mit der Maus einen Punkt im Kennfeld an. • Isolinien werden gelöscht, indem Schalter angeklickt wird. • Isolinien-Diagramme können mit den Schaltern umgeschaltet werden. eingeschaltet wird und eine zu löschende Isolinie und • Bei der 3D-Darstellung kann die Ansicht mit Schalter zwischen der 2D- und 3D-Darstellung verändert werden. • Das Auswahlfeld zeigt den Namen des markierten Diagramms im Dokument. Um ein anderes Diagramm zu markieren, wählt man einen Namen aus der Liste aus. Man kann ein Diagramm auch auswählen, indem man innerhalb des Diagramms mit der Maus klickt. Falls mehrere Diagramme direkt übereinander liegen, kann man auch einen der Achsentitel oder Beschriftungen anklicken. • Schalter anzeigt. öffnet ein Dialogfeld, das die Namen aller Datensätze des markierten Diagramms • Um Daten aus einer ASCII-, Excel- oder netCDF-Datei zu importieren, wählen Sie dateidatenimportieren. Die in der ASCII- oder Excel-Datei spaltenweise angeordneten Daten werden beim Import zunächst in das netCDF-Dateiformat umgewandelt (Dateiendung .nc). Die Datensätze können anschließend sehr schnell aus der netCDF-Datei geladen werden. Die DatenimportFunktionen sind in UniScript geschrieben und können verändert werden. • Das Auswahlfeld zeigt den Namen der zuletzt importierten Datendatei. Die aufgeklappte Liste enthält die Namen der 20 zuletzt importierten Datendateien. Um eine Datei zu öffnen, öffnen Sie die Auswahlliste und wählen die gewünschte Datei aus. Im folgenden Dialogfeld können Sie die Kanäle für einen Datensatz auswählen: 9 UniScript Manual, Release R2016 Der neue Datensatz wird in das markierte Diagramm geladen. • Der Schalter schalten den Cursor für 1D- und 2D- Datensätze ein. Erneutes Klicken schaltet den Cursor wieder ab. Die Cursor-Linien werden mit der Maus verschoben. Die Messwerte an der Cursor-Position können in einem Fenster angezeigt werden: • Der Schalter ändert die Achsenskalierung. Markieren Sie ein Diagramm. Klicken Sie auf den Schalter und ziehen anschließend einen Rahmen um den zu vergrößernden Ausschnitt des markierten Diagramms auf. Die Diagrammachsen werden neu skaliert und zeigen den gewünschten Ausschnitt. • Mit dem Schalter kann eine Autoskalierung der Achsen durchgeführt werden. Bei der Autoskalierung werden die Achsen so skaliert, daß alle Datensätze im Diagramm sichtbar werden. Mit dieser Funktion kann die Zoom-Operation (Schalter ) rückgängig gemacht werden. • Mit den Schaltern , und können periodische Signale oder Zeitsignale abschnittsweise durchlaufen werden. Laden Sie dazu ein Signal, und vergrößern einen Teil des Signals (Schalter ). Nun klicken Sie auf den Schalter und stellen die Periodenlänge ein, beispielsweise 720 Grad KW. Mit Hilfe der Schalter und können Sie nun um einzelne Perioden nach rechts oder links springen. • Undo: Der Schalter macht die letzte Änderung rückgängig. Es können bis zu 255 Aktionen rückgängig gemacht werden. • Redo: Der Schalter wiederholt die zuletzt rückgängig gemachte Änderung. • Mit Hilfe der Liste Datensatzstil, können Sie die Darstellungsattribute aller markierten Datensätze ändern. Um den Stil eines Datensatzes zu ändern, markieren Sie den gewünschten Datensatz, öffnen die Liste und wählen einen Stil aus. Über den Befehl extrasdatensatzstile-bearbeiten können die in der Liste angezeigten Stile geändert, neue Stile erzeugt oder nicht benötigte Stile entfernt werden. 10 Kapitel 3. Das Wichtigste in Kurzform UniScript Manual, Release R2016 • Mit dem Befehl ansichtkommando-fenster erreichen Sie das UniScript-Kommandofenster (Schalter ). Geben Sie z. B. ein: x = linspace(0, 2*PI) y = sin(x) plot(x, y) plot ist eine in UniScript geschriebene Funktion, die ein Diagramm erzeugt. Schauen Sie sich den Quelltext der Funktion plot an: Öffnen Sie mit dateioffnen (Schalter ) die Datei plot.ic aus dem Verzeichnis uniplot\script. Setzen Sie den Cursor auf den Funktionsnamen XYCreate oder einen anderen Funktionsnamen und drücken Sie die Funktionstaste F1, um eine Funktionsbeschreibung zu erhalten. • Mit der Datei-Schnellansicht können Sie sich einen Überblick über eine Messdatei verschaffen. Wählen Sie dateidatei-schnellansicht. Im folgenden Datei-Öffnen Dialog wählen Sie die gewünschte Datendatei aus. Die Datei wird konvertiert und danach der folgende Dialog angezeigt: Als Vorlage kann jede UniPlot-Datei (.ipw) verwendet werden. Die Standartvorlage wird die Datei UniPlot\template\rs_conta.ipw verwendet. • Ab UniPlot 4 können 3D-Oberflächendiagramme und 3D-Streuplots mit mehreren Datensätzen erzeugt werden. Erzeugen Sie dazu zunächst ein Isolinien-Diagramm mit mehreren Datensätzen. 11 UniScript Manual, Release R2016 Klicken Sie dann mit der rechten Maustaste das Diagramm an und wählen Sie den Befehl uniplot_3dview. • Tabellen. • Datensätze mit Transformationen. • Mit UniPlot können Sie sehr einfach gestapelte Diagramme erzeugen. 90 1000 1800 2200 2600 3000 3400 3800 x-Title 4200 4600 5000 5400 [1/min] 50 B [l/h] 30 10 0 20 10 0 20 1400 Ps [kW] 30 40 60 40 120 M [Nm] 100 300 250 be [g/kWh] 200 1.0 0.5 λm 1.5 2.0 140 70 160 P [kW] 0 80 αz 10 20 100 Thema: $Subject$ 6200 $TemplateDateEtc$ 12 Kapitel 3. Das Wichtigste in Kurzform KAPITEL 4 Ein einfaches Beispiel Das folgende Beispiel soll Sie mit einigen wichtigen Funktionen von UniPlot vertraut machen. Aufgabe: Es soll ein Isolinien-Diagramm und ein 2D-Diagramm mit einer Volllastkennlinie auf einer DIN A4-Seite im Hochformat erzeugt werden. 4.1 Ein neues Dokument erzeugen Im ersten Schritt wollen wir ein neues Dokument im Hochformat mit zwei Diagrammen erzeugen. Wählen Sie dazu im Menü Datei die Funktion Neu (dateineu) oder wählen aus der Symbolleiste den Schalter aus. Es wird ein Dialogfeld mit einer Liste von Optionen angezeigt. Wählen Sie aus der Liste den Eintrag 2 Diagramme. Um die Funktion auszuführen, können Sie den Eintrag mit der Maus markieren und danach die Schaltfläche OK wählen oder einfach den Eintrag mit der Maus doppelklicken. Es wird ein neues Fenster erzeugt, das eine Seite mit zwei Diagrammen zeigt. Der violette Seitenrand und der Rahmen sollen Ihnen beim Anordnen der Diagramme und Zeichenobjekte zur Orientierung dienen. Der Seitenrahmen und der Rand werden nicht auf dem Drucker ausgegeben. Der Abstand des Rahmens zum Seitenrand kann mit der Funktion dateiseitenrand-einstellen geändert werden. Wenn kein Drucker installiert ist, können Sie in diesem Dialog auch die Größe und das Format der Seite einstellen. Im Normalfall wird jedoch ein Drucker installiert sein. In diesem Fall wird die Seitengröße und das Format mit dem Dialog dateiseite-einrichten eingestellt. 13 UniScript Manual, Release R2016 Sie können die Seiteneinstellungen jederzeit ändern; die Position der Zeichenobjekte und Diagramme wird jedoch nicht automatisch an die neuen Einstellungen angepaßt. 4.2 Daten in ein Diagramm importieren Es soll nun ein 3D-Datensatz importiert werden. Ein 3D-Datensatz kann entweder aus beliebig verteilten x/y/z-Datenpunkten oder aus einer Matrix mit z-Werten erzeugt werden. In diesem Beispiel soll der 3D-Datensatz aus den x/y/z-Daten des Kraftstoffverbrauchs eines Motors in Abhängigkeit von Drehzahl und Moment dargestellt werden. Bevor nun die Daten importiert werden, können Sie über die Funktion Import-Optionen aus dem Menü Datei (dateiimport-optionen) ein Dialogfeld aufrufen, in dem Sie Einstellungen für den Datenimport festlegen können. Für Text-Dateien können Sie die Spaltentrennzeichen (Leer- und Tabulatorzeichen, ein Komma, ein Semikolon oder ein einzelnes Tabulatorzeichen) und das Dezimaltrennzeichen (ein Punkt oder ein Komma) einstellen. Falls die Text- oder Excel-Datei Bezeichnungen über den Datenspalten 14 Kapitel 4. Ein einfaches Beispiel UniScript Manual, Release R2016 enthält, können diese für die Bezeichnung der Diagrammachsen und für die Bezeichnung der Datensätze verwendet werden. Im Verzeichnis uniplot\samples befinden sich einige Excel- und Text-Dateien mit Beispieldaten. An diesen Beispielen können Sie auch erkennen, wie Ihre Daten formatiert sein müssen, damit sie geladen werden können. Für die Datendatei, die wir in diesem Beispiel laden werden, sollten die Einstellungen mit folgendem Dialogfeld übereinstimmen: Nachdem Sie die Import-Optionen eingestellt haben, wählen Sie aus dem Menü Datei die Funktion Daten importieren. Es wird ein Datei-Öffnen-Dialog angezeigt. Wählen Sie die Datei map2.asc aus dem Verzeichnis uniplot\samples. Die Textdatei wird geöffnet und von den Daten wird eine netCDF-Datei erzeugt. Der Name der neuen Datei wird aus dem Namen der zu importierenden Datei gebildet, wobei die Dateinamenserweiterung durch .nc ersetzt wird. Wurde die Datendatei gelesen und die netCDF-Datei erzeugt, wird das folgende Dialogfeld DatenImport angezeigt. Im Titel des Dialogfelds wird der Name der importierten Datei angezeigt. Die Auswahllisten X, Y, Z zeigen die Namen der gelesenen Spalten der importierten Daten-Datei. Spalten, die nicht ausschließlich Zahlen enthalten, beispielsweise Uhrzeit- oder Datumsspalten, werden beim Import überlesen. Einzige Ausnahme ist die Definition der Volllastlinie . Rechts neben den Auswahllisten werden die Optionsschaltflächen 1D, 2D und 3D angezeigt. Um eine x/y-Kurve zu erzeugen, wählen Sie die Option 2D. Um ein Kennfeld von Ihren Daten zu erzeugen, wählen Sie die Optionsschaltfläche 3D. Mit der Option 1D können Signale (y/t-Datensätze) importiert werden, die in äquidistanten Schritten aufgezeichnet wurden (Zeit-oder Kurbelwinkel-bezogene Signale). Um weitere Informationen zu der importierten Datei zu erhalten, wählen Sie die Schaltfläche mit dem Doppelpfeil (>>). Dadurch wird das Dialogfeld vergrößert und es werden weitere Dialogelemente angezeigt. In der Liste der Variablen werden die Variablennamen der importierten Datei angezeigt. Vor dem Namen steht der Typ der Variablen. Dabei bedeutet double, daß jeder Wert als doppelt genaue Gleitkomma4.2. Daten in ein Diagramm importieren 15 UniScript Manual, Release R2016 zahl (8 Bytes) gespeichert ist. Die Anzahl der Datenpunkte einer Spalte steht in Klammern hinter dem Variablennamen. Wenn Sie eine Variable auswählen, werden im linken Listenfeld die Daten angezeigt. Sie können mit der Bildlaufleiste alle Datenpunkte der Variablen anschauen und gegebenenfalls bearbeiten. Dazu klicken Sie den zu bearbeitenden Datenpunkt an. Im Textfeld unterhalb der Liste können Sie den Wert korrigieren und mit der Schaltfläche Setze in die Liste übertragen. Zu jeder Variablen werden einige Attribute angezeigt. Zur Zeit werden nur die Attribute title, units und long_name von UniPlot beim Konvertieren gefüllt und auf Wunsch beim Laden der Daten für die Beschriftung der Achsen verwendet. Die Variable Global Attribs hat keine Daten. Sie besitzt nur einige globale Attribute. Dabei hat das Attribut Range für das Laden von 1D- und 2D-Daten eine besondere Bedeutung. Es zeigt standardmäßig die Nummer des ersten und letzten Datenpunktes an. Über das Attribut Range können Sie festlegen, ob alle Daten oder nur ein Ausschnitt geladen werden sollen. Vorsicht: Die Änderungen, die Sie an Datenpunkten und Attributen im Dialog Daten-Import vornehmen, werden sofort in die Datei übertragen und gespeichert. Es soll nun der Datensatz Kraftstoffverbrauch BEFF in Abhängigkeit von Drehzahl N und Mitteldruck PME erzeugt werden. Wählen Sie die Optionsschaltfläche 3D. Ordnen Sie der x-Achse die Daten der Spalte N (Drehzahl), der y-Achse die Daten der Spalte PME (eff. Mitteldruck) und der z-Achse die Daten der Spalte BEFF (spez. Kraftstoffverbrauch, eff.) zu. Wenn Sie alle Einstellungen vorgenommen haben, wählen Sie die Schaltfläche Laden, um die Daten in das markierte Diagramm zu laden. Beim Importieren werden die Daten aus der Datei gelesen und in einem Datensatzobjekt gespeichert. Aus den Messdaten wird eine in x- und y-Richtung äquidistante Datenmatrix mit z-Werten berechnet. Aus der interpolierten Matrix wird in einem nächsten Schritt der Verlauf der Isolinien berechnet. Ne- 16 Kapitel 4. Ein einfaches Beispiel UniScript Manual, Release R2016 ben den Originaldaten und der Matrix werden noch weitere Informationen im Objekt gespeichert, wie beispielsweise die Isolinien-Werte, die Farben zwischen den Isolinien, die Schriftart für die Isolinienbeschriftungen, die Datenhülle usw. Bei der Erzeugung werden diese Informationen mit Standardwerten initialisiert. Die Standardeinstellungen für die Datensatzerzeugung und die Erzeugung anderer Objekte können Sie mit dem Kommando extraseinstellungen-andern Ihren Vorstellungen anpassen. Die Isolinien und die Beschriftung der Linien werden automatisch erzeugt. Im nächsten Schritt werden wir die Beschriftungen und die Verteilung der Isolinien ändern. 4.3 Editieren der Isolinien Mit der Zoom-Funktion können Sie Ausschnitte des Dokuments vergrößern. Wählen Sie die ZoomFunktion aus der Symbolleiste und ziehen Sie mit der Maus bei gedrückter linker Maustaste einen Rahkönnen Sie das Dokument men um den gewünschten Ausschnitt auf. Mit dem Schalter Verkleinern wieder in die Vollbild-Darstellung verkleinern. Wird die Funktion Verkleinern wiederholt ausgeführt, können Sie zwischen Vollbild-Darstellung, 50%-Darstellung und der 1:1-Darstellung umschalten. Vergrößern Sie nun das Diagramm mit der Zoom-Funktion, damit wir die Isolinien einfacher bearbeiten können. Zuerst sollten Sie die automatisch erzeugten Isolinien- Beschriftungen löschen. Wählen Sie dazu aus der Symbolleiste das Symbol mit der rot durchgestrichenen 10 aus . Der Mauszeiger wechselt zu einem Fadenkreuz mit der Beschriftung Iso. Positionieren Sie den Mauszeiger in der oberen linken Ecke des Diagramms und ziehen Sie einen Rahmen auf. Alle Isolinien-Beschriftungen innerhalb des Rahmens werden gelöscht. Falls durch das Löschen von Isolinien-Beschriftungen Darstellungsfehler im Kennfeld entstehen, können ) neu zeichnen. Sie das Diagramm mit der Tastenkombination Strg+R (Replot Im nächsten Schritt sollen zusätzliche Isolinien in das Kennfeld eingefügt werden. Wählen Sie dazu das Symbol mit der Isolinie aus der Symbolleiste . Markieren Sie einen Punkt, durch den die neue Isolinie geführt werden soll. Isolinien können nur innerhalb des Kennfeldes eingefügt werden. Wenn Sie einen Punkt innerhalb des Kennfelds anklicken, wird ein Dialogfeld mit den Koordinaten des Punktes und des dazu gehörenden z-Werts angezeigt. 4.3. Editieren der Isolinien 17 UniScript Manual, Release R2016 Falls Sie einen Punkt außerhalb des Kennfelds anklicken, schaltet UniPlot in den normalen Modus zurück. Der Schalter mit dem Mauszeiger wird eingeschaltet . aus der Symbolleiste aus. Ziehen Sie bei Zur Beschriftung der Isolinien wählen Sie nun den Schalter gedrückter linker Maustaste eine Linie, die mindestens eine Isolinie schneidet. An den Schnittpunkten mit den Isolinien werden die Beschriftungen eingefügt. Um einzelne Beschriftungen einzufügen, klicken Sie die Linien an den gewünschten Punkten an. Die Beschriftung der Volllastlinie kann auf diese Weise nicht bearbeitet werden. Welche Möglichkeiten für die Beschriftung der Volllastlinie zur Verfügung stehen, wird im Kapitel “Definition der Volllastlinie” beschrieben. Um Linien aus dem Kennfeld zu löschen, wählen Sie das Symbol mit der rot durchgestrichenen Isolinie und klicken die zu löschenden Isolinien an einer beliebigen Stelle mit der Maus an. Eine Isolinie kann aus mehreren Einzellinien mit demselben Isolinien-Wert bestehen. Mit diesem Befehl löschen Sie alle Einzellinien mit demselben Isolinien-Wert einschließlich der Beschriftung. Klicken Sie nun außerhalb des Kennfeldes. Der Mauszeiger wechselt in den Standardcursor. Sie können auch das Symbol mit dem Mauszeiger aus der Symbolleiste wählen, um in den Normalmodus umzuschalten. Im nächsten Schritt soll ein Farbverlauf für das Kennfeld definiert werden. Klicken Sie dazu eine Isolinie doppelt, um die Konfigurationsmaske des Kennfeld-Datensatzes aufzurufen. Wählen Sie die Seite Isolinien aus. 18 Kapitel 4. Ein einfaches Beispiel UniScript Manual, Release R2016 Markieren Sie das Kontrollkästchen Flächen zwischen den Isolinien farblich ausfüllen, damit das Kennfeld mit einem Farbverlauf gezeichnet wird. In dieser Seite können Sie auch das Zahlenformat und die Ausrichtung der Isolinien-Beschriftungen sowie die Verbindung der Punkte der Isolinien festlegen. Wählen Sie danach die Dialogseite Iso-Werte, um die Farben für den Farbverlauf des Kennfeldes einzustellen. Im Listenfeld Isolinien-Werte werden neben den Werten, die in aufsteigender Folge sortiert sind, auch die Linienart und die Füllfarbe angezeigt. In der ersten Zeile steht der Isolinien-Wert min, der benötigt wird, damit auch für den kleinsten Bereich, unterhalb des ersten z-Werts, eine Füllfarbe definiert werden kann. Wenn Sie einen Wert in der Liste anklicken, wird er in das Textfeld übertragen. Sie können den Wert bearbeiten und durch Wahl der Schaltfläche Ändern in die Liste zurückstellen, wodurch der alte Wert überschrieben wird. Benötigen Sie Informationen zu den weiteren Einstellmöglichkeiten des Dialogfeldes, wählen Sie die Schaltfläche Hilfe. Um den Farbverlauf einzustellen, markieren Sie alle Werte einschließlich min und wählen dann die Schaltfläche ** Farbstufen**, um das folgende Dialogfeld zu öffnen: 4.3. Editieren der Isolinien 19 UniScript Manual, Release R2016 Wählen Sie für Minimum und Maximum eine Mischfarbe aus rot, grün und blau. Der Farbverlauf wird im linken Feld des Dialogs angezeigt. Wenn Sie den Verlauf eingestellt haben, wählen Sie OK. 4.4 Diagramm- und Achsen-Titel ändern Das Diagramm soll nun einen Titel erhalten. Wählen Sie aus der Symbolleiste den Schalter (Text zeichnen). Ziehen Sie mit der Maus einen Rahmen oberhalb des Diagramms auf, um das Textobjekt zu erzeugen. An den Ecken des Objekts werden kleine Rechtecke angezeigt, mit deren Hilfe Sie das Objekt vergrößern können. Um den Text des Objekts zu ändern, klicken Sie das Objekt doppelt. 20 Kapitel 4. Ein einfaches Beispiel UniScript Manual, Release R2016 Im Dialog objekt-bearbeitentext können Sie den Diagrammtitel eingeben. Der Titel kann aus mehreren Zeilen bestehen. Die Schriftart und der Rahmen kann über die entsprechenden Schaltflächen eingestellt werden. Geben Sie für den Titel den Text spez. Kraftstoffverbrauch b_{e} [g/kWh] ein und schließen danach den Dialog mit der Schaltfläche OK. Wenn sich der Mauszeiger über den verschiedenen Elementen des Diagramms befindet, wechselt der Maus-Cursor zu einem Fadenkreuz mit dem Text Title für Achsentitel, Label für Achsenwerte und Axis für die Achsenskalierung. Um das entsprechende Dialogfeld zur Bearbeitung des Elements zu öffnen, müssen Sie das Element doppelklicken. Positionieren Sie nun den Mauszeiger auf dem x-Achsen-Titel und rufen Sie die Bearbeitungsmaske auf. Geben Sie als Titel die folgende Zeile ein: Drehzahl n [min^{-1}] und wählen danach die Schaltfläche OK. Korrigieren Sie nun noch den y-Achsen-Titel. 4.5 Diagramm-Konfiguration bearbeiten Um das Diagramm zu verschieben, fassen Sie das Diagramm am Rand zwischen den blauen Markierungen an. Wenn Sie mit der Maus über dem Rand stehen, wechselt der Mauszeiger zu einem Fadenkreuz. Drücken Sie die linke Maustaste und verschieben das Diagramm. Um die Größe zu verändern, müssen Sie das Diagramm an den blauen Markierungen anfassen. Der Mauszeiger ändert sich zu einem Doppelpfeil. Sie können das Diagramm auch mit Hilfe der Pfeiltasten der Tastatur verschieben. In diesem Fall darf außer dem Diagramm kein Zeichenobjekt selektiert sein. 4.5. Diagramm-Konfiguration bearbeiten 21 UniScript Manual, Release R2016 4.6 2D-Datensatz importieren In das untere Diagramm soll nun ein 2D-Datensatz importiert werden. Klicken Sie mit der Maus das untere Diagramm an, um es zu markieren. Wählen Sie die Funktion dateidaten-importieren. Im DateiÖffnen Dialog wählen Sie die Datei vollast.asc. Die Messdaten der Datei werden im ImportDialog angezeigt. Wählen Sie für die x-Achse die Datenspalte N und für die y-Achse die Datenspalte PME aus. Wählen Sie die Optionsschaltfläche 2D und anschließend die Schaltfläche Laden. 22 Kapitel 4. Ein einfaches Beispiel UniScript Manual, Release R2016 4.6. 2D-Datensatz importieren 23 UniScript Manual, Release R2016 24 Kapitel 4. Ein einfaches Beispiel KAPITEL 5 UniPlot-Objekte 5.1 UniPlot-Dokumente Ein UniPlot-Dokument kann aus bis zu 255 Seiten bestehen. Die Seite wird auf dem Monitor im richtigen Größenverhältnis dargestellt. Zusätzlich wird ein Seitenrand als violetter Rahmen angezeigt. Wenn das Dokument aus mehreren Seiten besteht, erkennt man die aktive Seite an dem weißen Seitenregister. Einem Dokument kann eine neue Seite mit dem Befehl bearbeitenseiteneue-seite zugefügt werden. Das folgende Bild zeigt den Aufbau einer Seite: Y X x = 0, y = 0 Rand x = 20, y = -28.8 (bei DIN A4) Die Seitengröße und das Format (Hoch- oder Querformat) wird über die Funktion dateiseite-einrichten festgelegt. Der Seitenrand wird im Dialogfeld dateiseitenrand-einstellen eingestellt. Die Seitengröße, die Seitenränder und das Format werden im Dokument gespeichert. Die Abbildung zeigt auch das Koordinatensystem, das für die Festlegung der Größe und Position von Diagrammen und Zeichenobjekten verwendet wird. Die x-Achse des Koordinatensystems zeigt nach rechts, die y-Achse nach oben. Der Ursprung befindet sich in der oberen linken Ecke der Seite. Die Koordinaten der Objekte werden in Zentimetern eingegeben. Eine Seite wird in UniPlot schichtweise aus Diagrammen aufgebaut. Die unterste Schicht bildet der Hintergrund, der nur Zeichenobjekte aufnehmen kann. Auf den Hintergrund werden die Diagramme gezeichnet, die sich gegenseitig überdecken können. Jedes Diagramm kann beliebig viele Datensätze und Zeichenobjekte aufnehmen. Die Ausgabereihenfolge der Diagramme kann mit den Schaltern Eine 25 UniScript Manual, Release R2016 Ebene nach vorne , Eine Ebene nach hinten , Nach vorne und Nach hinten geändert werden. Die Schalter ändern auch die Ausgabereihenfolge von Zeichenobjekten und Datensätzen. Damit ein Zeichenobjekt hinter den Diagrammen liegt, sollte es dem Hintergrund zugefügt werden. Hintergrund Diagramm 1 Diagramm 2 Diagramm 3 Wenn UniPlot eine Seite auf dem Monitor zeichnet oder auf den Drucker ausgibt, werden die Elemente in folgender Reihenfolge ausgegeben: • Zeichenobjekte des Hintergrunds • Diagrammrechteck • Datensätze (Farbfüllung, Schraffur) • Diagrammgitter • Achsen mit Zahlenwerten und Achsentitel • Datensätze (Linien und Marker) • Zeichenobjekte 5.2 2D-Diagramm In UniPlot hat ein 2D-Diagramm genau eine x- und eine y-Achse, die senkrecht aufeinander stehen. Die x-Achsenwerte steigen nach rechts, die y-Achsenwerte nach oben an. Auf Wunsch kann die Skalierung der Achsen auch absteigend erfolgen. Die y-Achse kann rechts oder links, die x-Achse oben oder unten an das Diagramm gezeichnet werden. Die Achsen können versteckt werden, d.h. sie spannen zwar ein Koordinatensystem auf, die versteckte Achse wird jedoch nicht gezeichnet. Die Position der Achse kann gegenüber ihrer Standardposition parallel verschoben werden. Das folgende Bild zeigt einige Beispiele: 5 4 3 2 1 0 5 0 5 4 1 4 3 2 3 2 3 2 1 4 1 0 5 0 0 1 2 3 4 5 0 2 5 2 1 4 1 1 2 3 4 5 1 2 3 4 5 3 0 -2 -1 1 2 2 -1 -1 1 -2 -2 -2 26 -1 0 1 2 Kapitel 5. UniPlot-Objekte UniScript Manual, Release R2016 Aus einzelnen Diagrammen können Diagramme mit mehreren Achsen aufgebaut werden. Im folgenden Bild werden einige Beispiele für zusammengesetzte Diagramme gezeigt. 5 2.0 1 4 5 4 1.5 3 1.0 2 3 3 2 5 1 0.5 0 0.0 1 4 0 1 2 3 4 5 0 3 2 2.0 5 1.5 4 2 1 5 0 4 3 3 2 2 0.5 1 1 0.0 0 1.0 0 0 1 2 3 4 5 0 1 2 3 4 5 Das Diagramm 1 besitzt eine y-Achse links, eine y-Achse rechts und eine x-Achse unten. Das Diagramm 2 zeigt zwei nebeneinander liegende y-Achsen und eine x-Achse. Im Diagramm 3 sind die drei Diagramme überlappend angeordnet. Nur das untere Diagramm zeigt eine x-Achse. Bei den beiden darüber liegenden Diagrammen ist die x-Achse versteckt worden. Im Diagramm 3 werden drei Koordinatensysteme aufgespannt, die in x-Richtung die gleiche Skalierung haben sollen. Damit nicht drei verschieden skalierte x-Achsen erzeugt werden, besteht die Möglichkeit, Achsen gleichen Typs zu verknüpfen. Wird nun eine der drei x-Achsen neu skaliert, werden die beiden anderen (unsichtbaren) Achsen automatisch mit skaliert. Die Verknüpfung, die Größe und Position der Achsen und andere Diagrammattribute können im Dialogfeld Diagramm Einstellungen festgelegt werden. 5.2.1 Ändern der Konfiguration Ändern der Schrift: Wählen Sie diagram-select-all-diagrams und wählen Sie anschließend die gewünschte Schriftart und Schriftgröße aus der Text-Format-Symbolleiste aus. Die Skalierung der Achsen wird im Dialogfeld Achsen-Parameter eingestellt. Der Wertebereich des Diagramms wird durch die Parameter Kleinstwert und Größtwert festgelegt. Sind die Kontrollkästchen Erstes Label und Letztes Label nicht markiert, hat die Achse die gleiche Länge wie die entsprechende Seite des Diagramms. 5.2. 2D-Diagramm 27 UniScript Manual, Release R2016 Soll das erste Label und damit der Anfang der Achse erst bei einem größeren Wert als dem Kleinstwert beginnen, muss das Kontrollkästchen markiert werden und der Wert der ersten Achsenbeschriftung in das Textfeld eingetragen werden. Die Achsen werden normalerweise aufsteigend skaliert. Falls Sie die Achse jedoch absteigend skalieren möchten, wählen Sie das Kontrollkästchen Absteigend skalieren. Die folgende Abbildung zeigt einige Möglichkeiten für die Darstellung der Achsen. Achse 1 100.0 90.0 80.0 70.0 60.0 50.0 40.0 30.0 20.0 30.0 40.0 50.0 60.0 70.0 80.0 90.0 30.0 40.0 50.0 60.0 70.0 80.0 90.0 10.0 Achse 2 20.0 Achse 3 20.0 Achse 4 15.0 25.0 35.0 45.0 55.0 65.0 75.0 85.0 95.0 Achse 5 Montag Dienstag Mittwoch Donnerstag Freitag Samstag Sonntag 6·101 7·101 8·101 9·101 9·101 5·101 8·101 4·101 7·101 3·101 6·101 2·101 5·101 1·101 4·101 Achse 6 1·102 1·102 3·101 2·101 1·101 Achse 7 Achse 8 10 100 1000 10000 Achse 9 200 300 400 500 600 700 800 900 1000 29.02.2000 31.03.2000 Achse 10 31.10.1999 30.11.1999 31.12.1999 31.01.2000 Die Achse 1 ist absteigend skaliert. Bei Achse 2 wurde das erste Label auf den Wert 20 und das letzte Label auf den Wert 90 gesetzt. Bei Achse 3 wurden die Kontrollkästchen Erstes Label und Letztes Label nicht markiert. Damit die erste Achsenbeschriftung bei 20 beginnt, die Achse aber bei 10 anfängt, wurde bei diesem Beispiel der Text für das Label 10 und 100 im Dialogfeld Label gelöscht. Bei Achse 5 wurden 7 Label erzeugt (1 bis 7) und die Labeltexte im Dialogfeld Label durch die Wochentage ersetzt. Bei Achse 6 wurde im Dialogfeld Achsen-Parameter für die Beschriftungen das Exponentialformat gewählt. Bei Achse 7 wurden die Achsenbeschriftungen im Dialogfeld Label um 90 Grad gedreht. Bei Achse 8 wurde im Dialogfeld Achsen-Parameter eine logarithmische Achsenskalierung von 10 bis 10000 gewählt. Bei Achse 9 wurde eine quadratische Achsenskalierung von 200 bis 10000 gewählt. 28 Kapitel 5. UniPlot-Objekte UniScript Manual, Release R2016 Bei Achse 10 wurde eine Zeit/Datum-Achsenskalierung vom 31.10.1999 bis 31.3.2000 mit einer Schrittweite von einem Monat gewählt. Die zusammengesetzten Diagramme können auch als gestapelte Diagramme konfiguriert werden. 5.3 Gestapelte Diagramme mit mehreren Y-Achsen Die folgende Abbildung zeigt ein gestapeltes Diagramm. Die Y-Achsen sind auf der rechten und linken Seite des Diagramms verteilt. Das Diagramm enthält am unteren Rand eine X-Achse. 90 1000 1800 2200 2600 3000 3400 3800 x-Title 4200 4600 5000 5400 [1/min] 50 B [l/h] 30 10 0 20 10 0 20 1400 Ps [kW] 30 40 60 40 120 M [Nm] 100 300 250 be [g/kWh] 200 1.0 0.5 λm 1.5 2.0 140 70 160 P [kW] 0 80 αz 10 20 100 Thema: $Subject$ 6200 $TemplateDateEtc$ Ein gestapeltes Diagramm setzt sich aus mehreren überlagerten Einzeldiagrammen zusammen, die im folgenden auch Layer genannt werden. Jeder Layer zeigt eine Y-Achse auf der rechten oder linken Seite des Diagramms. Das besondere an einem gestapelten Diagramm ist, dass die Achsenskalierung der Y-Achsen nur so verändert werden kann, dass die Achsenteilung mit den Netzlinien des Netzgitters übereinstimmt. Die Y-Achsen können nur linear skaliert werden. Für die Darstellung des Netzgitters enthält das Diagramm einen speziellen Layer der üblicherweise in der Z-Ordnung ganz hinten liegt. Dieser Layer sollte keine Datensätze enthalten. Der Layer wird nur für die Ausgabe des Netzes und der X-Achse verwendet. Alle Layer eines gestapelten Diagramms verwenden die X-Achse des Netz-Layers. Eine Seite kann mehrere gestapelte Diagramme enthalten. In diesem Fall müssen die Namen der Netzlayer durchnummeriert werden (Grid1, Grid2, ... oder Netz1, Netz2 etc.). Ein gestapeltes Diagramm erkennt man an den gelben Ziehpunkten in den vier Ecken des Diagramms. 5.3.1 Erzeugen eines gestapelten Diagramms • Erzeugen Sie mehrere Diagrammen, die sich auch überlappen dürfen. 5.3. Gestapelte Diagramme mit mehreren Y-Achsen 29 UniScript Manual, Release R2016 100.0 90.0 80.0 70.0 y-Title 60.0 50.0 40.0 30.0 20.0 10.0 10.0 20.0 30.0 40.0 50.0 60.0 70.0 80.0 90.0 100.0 x-Title • Fügen Sie für die gewünschte Anzahl y-Achsen jeweils ein Diagramm zu. 100.0 y-Title 100.0 90.0 80.0 70.0 90.0 60.0 50.0 40.0 30.0 20.0 10.0 10.0 80.0 20.0 30.0 40.0 50.0 60.0 70.0 80.0 90.0 100.0 x-Title 70.0 y-Title 60.0 50.0 40.0 30.0 20.0 10.0 10.0 20.0 30.0 40.0 50.0 60.0 70.0 80.0 90.0 100.0 x-Title • Markieren Sie nun alle Diagramme, die zu dem gestapelten Diagramm gehören sollen und wählen dann den Befehl diagram-create-stacked-diagram, bzw. wählen das Kommando aus dem Rechtsklick-Menü aus. Zum Markieren der Diagramme halten Sie die Shift-Taste gedrückt. 30 Kapitel 5. UniPlot-Objekte UniScript Manual, Release R2016 y-Title 10 5 0 1000.0 1400.0 1800.0 2200.0 2600.0 3000.0 3400.0 3800.0 4200.0 4600.0 5000.0 5400.0 5800.0 6200.0 x-Title Der Layer eines gestapelten Diagramms hat nur noch zwei Ziehpunkte anstatt 8. Ein Ziehpunkt wird auf die obere Diagrammbegrenzung und einer auf der unteren Diagrammbegrenzung gezeichnet. Die Ziehpunkte können dazu verwendet werden, die Y-Achsenlänge mit der Maus zu verändern. • Wenn Sie die Achse auf der rechten Seite des gestapelten Diagramms angezeigt werden soll, klicken Sie die y-Achse an. Die Achse wird als rote Linie gezeichnet. Ziehen Sie die rote Linie mit der Maus auf die rechte Seite des Diagramms. Bei gedrückter Shift-Taste wird die Achse automatisch gespiegelt, so dass die Beschriftung ausserhalb des Diagramms liegt. 5.3.2 Besonderheiten des gestapelten Diagramms • Alle Layer haben die gleiche Breite und die gleiche x-Achse. • Die Netzgitterteilung wird über die Achsenskalierung des Netz-Layers festgelegt. Um die Netzteilung in y-Richtung zu ändern, markieren Sie die x-Achse und drücken dann auf den y-Schalter in den Schalterleisten. Die Teilung in x-Richtung wird über die x-Achse festgelegt. • Um den Netz-Layer zu selektieren, klicken Sie die x-Achse an. • Die Datensätze werden an der Diagrammgrenze des Netzes abgeschnitten. 5.3.3 Ändern der Netzteilung Selektieren Sie den Netz-Layer. Klicken Sie dazu die X-Achse des Diagramms an. Nun können Sie den Schalter Y in der Schalterleiste klicken um die y-Achsenskalierung der Netzlayers zu ändern. Über die Parameter Kleinstwert, Größtwert und Delta können Sie die Skalierung ändern, d.h. festlegen wie viele Netzlinien ausgegeben werden. Um beispielsweise ein Zentimeter-Netz zu erzeugen, lesen Sie die Größe des Diagramms aus der Statuszeile ab, z. B. 16 cm und setzen dann die Parameter auf die folgenden Werte: Minimum = 1, Maximum = 16 und Delta = 1. Entsprechend können Sie die Teilung in X-Achsenrichtung ändern. Klicken Sie dazu den Schalter X an um das entsprechende Dialogfeld zu öffnen. 5.3. Gestapelte Diagramme mit mehreren Y-Achsen 31 UniScript Manual, Release R2016 5.3.4 Zufügen einer weiteren Y-Achse und zugefügt werden. Markieren Sie eine yEine weitere Y-Achse kann über die Schaltflächen Achse des Diagramms und klicken Sie auf den entsprechenden Schalter. Wird ein Diagramm mit dem Schalter erzeugt, kann das Diagramm über das Kontextmenü (rechte Maustaste) erzeugt werden. Wählen Sie dazu das Kommando Gestapeltes Diagramm erzeugen aus. Ein über das Kommando (diagrammneues-diagramm-hinzufugen) erzeugtes Diagramm kann über den Befehl diagram-create-stacked-diagram dem gestapelten Diagramm zugefügt werden. Das Diagramm muss dazu das gestapelte Diagramm überlappen. Verschieben Sie gegebenenfalls die y-Achse mit der Maus. 5.3.5 Verschieben einer Y-Achse Um eine Achse zu verschieben klickt man die gewünschte Achse an. Das Diagrammrechteck wird durch zwei blaue Handle markiert. Greifen Sie mit der Maus das Rechteck neben den blauen Handeln und verschieben das Diagramm nach oben oder unten. Die Achsenlänge wird geändert, indem man das Diagrammrechteck in den blauen Handeln greift und verschiebt. Bemerkung: Um alle Diagramme gemeinsam zu verschieben, klicken Sie zuerst außerhalb aller Objekte, damit kein Objekt angewählt ist und wählen dann den Befehl diagram-select-all-diagrams. Der Befehl selektiert alle Diagramme der aktiven Seite. Die selektierten Diagramme können dann mit den Pfeiltasten der Tastatur verschoben werden. 5.3.6 y-Achsen Parameter Wenn die Beschriftungen der Achse mit dem Gitter übereinstimmen sollen, muss in den Achsenparametern die Option Beschriftungen am Netz ausrichten markiert sein. In den Achsenparametern kann dann der Größtwert nicht eingestellt werden. Seite R2012.3 kann diese Option abgeschaltet werden. Die Achse ist dann weiterhin Teil des gestapelten Diagramms, der Achsenbereich kann jedoch frei eingestellt werden. Siehe diagrammx/y/z-achseparameter. 5.4 3D-Diagramm z-Title Beim 3D-Diagramm werden die Achsen automatisch angeordnet. In dieser Darstellung können die Achsenelemente nicht mit der Maus ausgewählt werden. Um die Achsenskalierung, die Label oder die Achsentitel zu ändern, wählen Sie im Menü Diagramm das entsprechende Dialogfeld der x-, y- oder zAchse (Schalter , , ). 100.0 90.0 80.0 70.0 60.0 50.0 40.0 30.0 20.0 0 20 40 x-Tit 32 le 60 80 100 10 89 67 5 4 itle 23 y-T 01 Kapitel 5. UniPlot-Objekte UniScript Manual, Release R2016 Hinweis: 3D-Diagramme können nur linear skaliert werden. Außerdem sollten bei der 3D-Darstellung nur einzeilige Achsentitel verwendet werden. 5.5 Wasserfall-Diagramm In einem Wasserfall-Diagramm werden die Datensätze in die Tiefe gestaffelt dargestellt. Zylinderdruck [bar] 25 20 15 10 5 0 0 0 1 2 3 4 5 6 7 8 9 100 200 300 400 500 600 700 800 Kurbelwinkel [°KW] In ein Wasserfalldiagramm können die Daten genau wie beim 2D-Diagramm geladen werden. Zusätzlich stehen zwei weitere Funktionen für den Import von Daten zur Verfügung. Die erste Funktion kann ein periodisches Signal in einzelne Perioden zerlegen und in ein Wasserfalldiagramm laden (dateiweiteredatei-funktionenwasserfall-einzel-zyklen-import). Die zweite Funktion lädt alle Spalten (Kanäle) aus einer Datendatei, wobei von jedem Kanal einen Datensatz erzeugt wird. Ein Kanal kann als X-Achse ausgewählt werden (dateiweitere-datei-funktionenwasserfall-multi-kanal-import). 5.6 Datensatz-Objekte Mit UniPlot können Sie 1D-, 2D-, 3D-Tripel- und 3D-Matrix-Daten laden: 1D-Datensatz: Beim 1D-Datensatz sind die Datenpunkte in äquidistanten Abständen gemessen worden (z. B. Zeitsignale oder kurbelwinkelbezogene Signale). Der x-Wert des ersten Datenpunktes und der Abstand zweier Datenpunkte wird im Dialogfeld 2D-Kurven-Konfiguration eingestellt. 2D-Datensatz: Beim 2D-Datensatz werden die Datenpunkte aus x/y-Paaren gebildet. Die Punkte werden in der Reihenfolge, in der sie in der Datei stehen, ausgegeben. Für einen 2D-Datensatz sind mindestens 2 Datenpunkte erforderlich. 3D-Datensatz: Beim 3D-Datensatz werden die Datenpunkte aus x/y/z-Tripeln gebildet. Die Datenpunkte können beliebig in der x/y-Koordinatenebene verteilt sein. Um einen 3D-Datensatz als IsolinienDiagramm oder 3D-Oberflächen-Diagramm darstellen zu können, sind mindestens 5 Datenpunkte erforderlich. Die Datenpunkte müssen über der x/y-Ebene eine Fläche aufspannen, bei der jedem Punkt in der x/y-Koordinatenebene nur ein z-Wert zugeordnet sein darf. 3D-Matrix-Datensatz: Die Matrix muss mindestens 5 Spalten und 5 Zeilen mit z-Koordinaten enthalten, die äquidistant in der x/y-Ebene verteilt sein sollten. Die x- und y-Koordinaten der MatrixEckpunkte werden über ein Dialogfeld eingegeben. Aus den Eckpunkten werden die x- und die yKoordinaten aller Matrixelemente berechnet. Damit Daten in ein Diagramm geladen werden können, muss das entsprechende Diagramm markiert werden. Zur Markierung wird das gewünschte Diagramm mit der Maus angeklickt. Sie können das Diagramm auch aus dem Kombinationsfeld in der Symbolleiste , das die Namen aller Diagramme des aktiven Dokuments anzeigt, auswählen. 5.5. Wasserfall-Diagramm 33 UniScript Manual, Release R2016 Der Import von Daten und die Konfigurationsmöglichkeiten von Datensätzen werden im Kapitel Import von Daten beschrieben. 5.7 Zeichenobjekte UniPlot kann Rechtecke, Kreise, Ellipsen, Linien, Pfeile und Texte erzeugen. Um ein Objekt zu erzeugen, wählt man mit der Maus die entsprechende Funktion aus der Symbolleiste Zeichnen und zieht einen Rahmen auf, der die Größe und Position des neuen Objekts festlegt. Das Objekt wird dem markierten Diagramm zugeordnet. 5.7.1 Zeichenobjekte markieren, vergrößern und verschieben Um ein Zeichenobjekt zu markieren, klickt man das Objekt mit der Maus an. Die Markierung wird durch acht kleine Kästchen angezeigt. Wenn der Mauszeiger über dem Objekt steht, wechselt der Mauszeiger zu einem Fadenkreuz. Bei transparenten Objekten kann nur der Rand angeklickt werden. Bei ausgefüllten Objekten kann man das Objekt an einer beliebigen Stelle anklicken. Um mehrere Zeichenobjekte zu markieren, drückt man die Shift-Taste und klickt die Objekte an. Falls ein Objekt versehentlich markiert wurde, kann es durch erneutes Anklicken wieder abgewählt werden. Wenn ein Zeichenobjekt markiert wird, wird automatisch auch das Diagramm markiert, zu dem das ausgewählte Objekt gehört. Um mehrere Zeichenobjekte zu markieren, ziehen Sie mit der Maus einen Rahmen auf, der alle gewünschten Objekte umschließt. Dazu muss mindestens ein Diagramm bzw. der Hintergrund-Layer markiert sein. Der erste Punkte des Auswahlrahmens darf nicht in einem Objekt liegen. Wenn Sie die linke Maustaste loslassen, werden die Objekte markiert. 34 Kapitel 5. UniPlot-Objekte UniScript Manual, Release R2016 Um die markierten Objekte abzuwählen, muss man mit der Maus einmal außerhalb der Objekte klicken. Um ein Objekt zu verschieben, wird es mit der Maus am Rand angefaßt. Die Größe und Position eines Objektes kann entweder mit der Maus oder über ein Dialogfeld verändert werden. Mit der Maus faßt man eine der markierten Ecken eines Objektes an und verschiebt die Ecke in ihre neue Position. Die Größe der Objekte wird dabei in der Statuszeile in Zentimetern angezeigt. Wenn Sie das Objekt mit der Maus doppelklicken, kann die Größe und Position über die Konfigurationsmaske eingegeben werden. Beim Verschieben von Objekten werden die Ecken automatisch auf ein Fanggitter gezogen. Um diesen Snap-To-Grid-Effekt vorübergehend abzuschalten, drücken Sie die Strg-Taste, während Sie das Objekt verschieben. Die Maschenweite des Fanggitters kann mit dem Befehl extras-einstellungen-aendern verändert werden. Wenn ein Objekt sehr genau positioniert werden soll, muss man den betreffenden Ausschnitt mit der Zoom-Funktion vergrößern. Zum Vergrößern wählen Sie die Lupe mit dem Pluszeichen aus der Symbolleiste und ziehen mit der Maus einen Rahmen um den gewünschten Bereich. Der Zoomfaktor kann auch mit Hilfe des Mausrades geändert werden. Dazu die Strg-Taste drücken und am Mausrad drehen. 5.7.2 Zeichenattribute der Objekte ändern Um die Zeichenattribute eines Objektes zu ändern, klickt man das entsprechende Objekt doppelt. Im Dialogfeld können die gewünschten Änderungen durchgeführt werden. 5.7.3 Ausgabereihenfolge der Objekte ändern Die Objekte werden in der Reihenfolge gezeichnet, in der sie dem Diagramm zugefügt wurden. Die Ausgabereihenfolge der Objekte eines Diagramms kann mit den Funktionen Nach vorne und Nach hinten aus der Symbolleiste geändert werden. Die Funktion kann auch verwendet werden, um die Zeichenreihenfolge von Datensätzen oder Diagrammen zu ändern. Tip: Manchmal wird ein Zeichenobjekt von einen Diagramm überdeckt. In diesem Fall kann das Zeichenobjekt mit der Funktion Nach vorne nicht vor das überdeckende Diagramm gestellt werden. Um das Objekt vor das überdeckende Diagramm zu stellen, gehen Sie wie folgt vor: Markieren Sie das gewünschte Objekt und wählen Sie bearbeitenausschneiden. Markieren Sie das Diagramm, das das Zeichenobjekt überdeckt hatte und wählen Sie bearbeiteneinfugen. 5.7. Zeichenobjekte 35 UniScript Manual, Release R2016 5.7.4 Zeichenobjekte zusammenfassen Die markierten Zeichenobjekte eines Diagramms können mit der Funktion Zusammenfassen der Symbolleiste zu einem Objekt zusammengefaßt werden. Zusammengefaßte Zeichenobjekte können mit der Funktion Auftrennen zerlegt werden. aus wieder in einzelne Objekte 5.8 Formeln und Latex-Texte Wenn Sie das Textsatz-System Latex verwenden, können Sie Formeln wie diese ∞ ∫︁ √ 2 −𝑥2 𝑥 𝑒 𝑑𝑥 = 0 𝜋 4 in UniPlot eingeben. Siehe bearbeitenlatex-formel-einfugen. 5.9 Textobjekte Bei Beschriftungen können Sie den erweiterten Zeichensatz und Sonderzeichen verwenden. Sie können eine Folge von Zeichen hoch- und tiefstellen, und Sie können Linien, Pfeile und Symbole in den laufenden Text einfügen. 5.9.1 Tiefgestellte Zeichen Tiefgestellte Zeichen (Indizes) werden eingegeben, indem Sie vor die Indizes die beiden Zeichen _{ und hinter die Indizes die schließende geschweifte Klammer } eingeben. Beispiel: Die Eingabe von a_{123} ergibt die Ausgabe: a123 5.9.2 Hochgestellte Zeichen Wenn Sie hochgestellte Zeichen ausgeben wollen, ersetzen Sie den Unterstrich durch ein “Hütchen” ^ z. B. min^{-1} ergibt die Ausgabe: min-1 5.9.3 Fett, Kursiv, Unterstrichen, Durchgestrichen, Farbe Innerhalb eines Textfeldes oder einer Tabellenzelle kann ab UniPlot R2015.10 der Font nach bold, italic, underline, strikeout umgeschaltet werden und es kann die Farbe geändert werden. Wert 36 Bedeutung Kapitel 5. UniPlot-Objekte UniScript Manual, Release R2016 @F{d = 1} oder @F{default = 1} @F{d = 0} oder @F{default = 0} @F{b = 1} oder @F{bold = 1} @F{b = 0} oder @F{bold = 0} @F{i = 1} oder @F{italic = 1} @F{i = 0} oder @F{italic = 0} @F{u = 1} oder @F{underline = 1} @F{u = 0} oder @F{underline = 0} @F{s = 1} oder @F{strikeout = 1} @F{s = 0} oder @F{strikeout = 0} @F{c = red} oder @F{color = red} Schaltet die folgenden Zeichen auf normal, also bold = 0 italic = 0 underline = 0 strikeout = 0 color = black. Hat keine Wirkung. Schaltet die folgenden Zeichen auf fett (bold). Schaltet die folgenden Zeichen auf normal (nicht bold). Kursiv (italic) einschalten. Kursiv (italic) ausschalten. Unterstrichen (underline) einschalten. Unterstrichen (underline) ausschalten. Durchgestrichen (strikeout) einschalten. Durchgestrichen (strikeout) aussschalten. Schaltet die folgenden Zeichen auf rot. Es können die Namen der Farben verwendet werden, oder es können die RGB-Anteile als drei hexadezimale 2-stellige Zahlen mit führendem Nummernzeichen angegeben werden (red oder #ff0000 bzw. #FF0000). Beispiel: @F{c=red i = 1}Italic red @F{b = 1 c = royalblue}bold royalblue @F{s =1 c = grey}strikeout @F{underline =1 s=0 c = blue}underline@F{default=1} @F{b=1 i=1 c=red}red @F{c=black}and @F{c=blue}blue@F{c=black} in bold and italic. @F{b=0 i=1}Q@F{i=0}_{t} Ausgabe: Italic red bold royalblue strikeout underline red and blue in bold and italic. Qt Farbtabelle 5.9. Textobjekte 37 UniScript Manual, Release R2016 aliceblue (#F0F8FF) antiquewhite (#FAEBD7) aqua (#00FFFF) aquamarine (#7FFFD4) azure (#F0FFFF) beige (#F5F5DC) bisque (#FFE4C4) black (#000000) blanchedalmond (#FFEBCD) blue (#0000FF) blueviolet (#8A2BE2) brown (#A52A2A) burlywood (#DEB887) cadetblue (#5F9EA0) chartreuse (#7FFF00) chocolate (#D2691E) coral (#FF7F50) cornflowerblue (#6495ED) cornsilk (#FFF8DC) crimson (#DC143C) cyan (#00FFFF) darkblue (#00008B) darkcyan (#008B8B) darkgoldenrod (#B8860B) darkgray (#A9A9A9) darkgreen (#006400) darkgrey (#A9A9A9) darkkhaki (#BDB76B) darkmagenta (#8B008B) darkolivegreen (#556B2F) darkorange (#FF8C00) darkorchid (#9932CC) darkred (#8B0000) darksalmon (#E9967A) darkseagreen (#8FBC8F) darkslateblue (#483D8B) darkslategray (#2F4F4F) darkturquoise (#00CED1) darkviolet (#9400D3) deeppink (#FF1493) deepskyblue (#00BFFF) dimgray (#696969) dimgrey (#696969) dodgerblue (#1E90FF) firebrick (#B22222) floralwhite (#FFFAF0) forestgreen (#228B22) fuchsia (#FF00FF) gainsboro (#DCDCDC) ghostwhite (#F8F8FF) gold (#FFD700) goldenrod (#DAA520) gray (#808080) green (#008000) greenyellow (#ADFF2F) grey (#808080) honeydew (#F0FFF0) hotpink (#FF69B4) indianred (#CD5C5C) indigo (#4B0082) ivory (#FFFFF0) khaki (#F0E68C) lavender (#E6E6FA) lavenderblush (#FFF0F5) lawngreen (#7CFC00) lemonchiffon (#FFFACD) lightblue (#ADD8E6) lightcoral (#F08080) lightcyan (#E0FFFF) lightgoldenrodyellow (#FAFAD2) lightgray (#D3D3D3) lightgreen (#90EE90) lightgrey (#D3D3D3) lightpink (#FFB6C1) lightsalmon (#FFA07A) lightseagreen (#20B2AA) lightskyblue (#87CEFA) lightslategray (#778899) lightslategrey (#778899) lightsteelblue (#B0C4DE) lightyellow (#FFFFE0) lime (#00FF00) limegreen (#32CD32) linen (#FAF0E6) magenta (#FF00FF) maroon (#800000) mediumaquamarine (#66CDAA) mediumblue (#0000CD) mediumorchid (#BA55D3) mediumpurple (#9370DB) mediumseagreen (#3CB371) mediumslateblue (#7B68EE) mediumspringgreen (#00FA9A) mediumturquoise (#48D1CC) mediumvioletred (#C71585) midnightblue (#191970) mintcream (#F5FFFA) mistyrose (#FFE4E1) moccasin (#FFE4B5) navajowhite (#FFDEAD) navy (#000080) oldlace (#FDF5E6) olive (#808000) olivedrab (#6B8E23) orange (#FFA500) orangered (#FF4500) orchid (#DA70D6) palegoldenrod (#EEE8AA) palegreen (#98FB98) paleturquoise (#AFEEEE) palevioletred (#DB7093) papayawhip (#FFEFD5) peachpuff (#FFDAB9) peru (#CD853F) pink (#FFC0CB) plum (#DDA0DD) powderblue (#B0E0E6) purple (#800080) red (#FF0000) rosybrown (#BC8F8F) royalblue (#4169E1) saddlebrown (#8B4513) salmon (#FA8072) sandybrown (#F4A460) seagreen (#2E8B57) seashell (#FFF5EE) sienna (#A0522D) silver (#C0C0C0) skyblue (#87CEEB) slateblue (#6A5ACD) slategray (#708090) slategrey (#708090) snow (#FFFAFA) springgreen (#00FF7F) steelblue (#4682B4) tan (#D2B48C) teal (#008080) thistle (#D8BFD8) tomato (#FF6347) turquoise (#40E0D0) violet (#EE82EE) wheat (#F5DEB3) white (#FFFFFF) whitesmoke (#F5F5F5) yellow (#FFFF00) yellowgreen (#9ACD32) 5.9.4 Griechische Zeichen Griechische Zeichen werden eingegeben, indem ein Backslash \ vor dem entsprechenden lateinischen Buchstaben eingegeben wird. Beispiel: \a \w \l \L erzeugt die Zeichen: αωλ Λ 5.9.5 Sonderzeichen Sonderzeichen können Sie mit Hilfe der Zeichentabelle oder durch die Eingabe ihrer Ordnungszahl erzeugen . Drücken Sie dazu die Alt-Taste und geben Sie den Dezimalwert des Zeichens mit einer führenden Null mit dem Ziffernblock der Tastatur ein. Beispiel 1: Um das Copyright-Symbol © zu erzeugen, geben Sie 0169 auf dem Ziffernblock bei gedrückter Alt-Taste ein. Beispiel 2: Um das Registriert-Zeichen aus dem Symbolzeichensatz zu erzeugen, geben Sie zunächst das Zeichen \ ein, halten Sie anschließend die Alt-Taste gedrückt und geben Sie die Zahlen 0226 auf dem Ziffernblock ein. Der Backslash bewirkt, das bei der Ausgabe des dem Backslash \ folgenden Zeichens, in den Symbol-Zeichensatz gewechselt wird. 38 Kapitel 5. UniPlot-Objekte UniScript Manual, Release R2016 Beispiel 3: Um das Unicode-Zeichen “LATIN SMALL LETTER M WITH DOT ABOVE” zu erzeugen, • drücken und halten Sie die Alt-Taste, • Drücken Sie das “+”-Zeichen (plus) auf dem Ziffernblock, • Geben Sie den hexadezimalen Unicode-Wert ein, für “m punkt” z. B. 1e41. • Lassen Sie die Alt-Taste los. Damit die “Alt+”-Eingabemethode funktioniert, muss in der Windows-Registrierungsdatenbank der Schlüssel HKEY_Current_User\Control Panel\Input Method\EnableHexNumpad gleich “1” (REG_SZ) vorhanden sein. Wenn Sie ihn einfügen muss Windows neu gestartet werden. Ab UniPlot R2012.1 können Unicode-Zeichen auch über die Notation \#xxxx eingegeben werden, wobei xxxx für 4 hexadezimale Zeichen steht. Für “m punkt” kann also auch \#1e41 eingegeben werden. Ab UniPlot R2015.10: Zeichen mit einer Kodierung größer 16 Bit (z. B. #1D4DD (120029) MATHEMATICAL BOLD SCRIPT CAPITAL N) können mit 4 hexadezimalen Zeichen nicht eingegeben werden. Deshalb steht xxxx nun für 2 bis 6 hexadezimale Zeichen. Falls den Zeichen Leerzeichen folgen, wird das erste Leerzeichen aus der Ausgabe entfernt. Für die meisten Buchstaben ist kein Unicode-Zeichen mit Punkt vorhanden. Dazu können “kombinierende diakritische Zeichen” verwendet werden, siehe http://de.wikipedia.org/wiki/Unicodeblock_Kombinierende_diakritische_Zeichen. Damit kann “q punkt” mit den Zeichen q\#0307 eingegeben werden. ANSI Character Codes Chart 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 5.9. Textobjekte 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 ! " # $ % & ' ( ) * + , . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 @ A B C D E F G H I J K L M N O P Q R S T U V W X Y Z [ \ ] ^ _ 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 ` a b c d e f g h i j k l m n o p q r s t u v w x y z | ~ 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 € ‚ ƒ „ … † ‡ ˆ ‰ Š ‹ Œ Ž ‘ ’ “ ” • – — ˜ ™ š › œ ž Ÿ 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 ¡ ¢ £ ¤ ¥ ¦ § ¨ © ª « ¬ ® ¯ ° ± ² ³ ´ µ ¶ · ¸ ¹ º » ¼ ½ ¾ ¿ 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 À Á Â Ã Ä Å Æ Ç È É Ê Ë Ì Í Î Ï Ð Ñ Ò Ó Ô Õ Ö × Ø Ù Ú Û Ü Ý Þ ß 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 à á â ã ä å æ ç è é ê ë ì í î ï ð ñ ò ó ô õ ö ÷ ø ù ú û ü ý þ ÿ 39 UniScript Manual, Release R2016 ANSI Character Codes Chart (Symbol Character Set) 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 € 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 ! ∀ 64 65 66 @ Α Β 96 97 98 α β 128 € 129 € 130 € ∃ % & ∋ ( ) ∗ + , − . / 0 1 2 3 4 5 6 7 8 9 : ; < = > ? 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 ∆ Ε Φ Γ Η Ι ϑ Κ Λ Μ Ν Ο Π Θ Ρ Σ Τ Υ ς Ω Ξ Ψ Ζ [ \ ] ⊥ _ 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 δ ε φ γ η ι ϕ κ λ µ ν ο π θ ρ σ τ υ ϖ ω ξ ψ ζ { | } ∼ € 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 € € € € € € € € € € € € € € € € € € € € € € € € € € € € 160 € 161 ϒ 162 ′ 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 ⁄ ∞ ƒ ♣ ♦ ♥ ♠ ↔ ← ↑ → ↓ ° ± ″ ≥ × ∝ ∂ • ÷ ≠ ≡ ≈ … ↵ 192 ℵ 193 ℑ 194 ℜ 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 ⊗ ⊕ ∅ ∩ ∪ ⊃ ⊇ ⊄ ⊂ ⊆ ∈ ∉ ∠ ∇ ∏ √ ⋅ ¬ ∧ ∨ ⇔ ⇐ ⇑ ⇒ ⇓ 224 ◊ 225 〈 226 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 ∑ € 〉 ∫ ⌠ ⌡ € 5.9.6 Linien im Text Für Legenden und ähnliche Anwendungen können Linien im laufenden Text eingegeben werden. Beispiel: Eine Linie @l{0.8, 1, 3, 255, 0, 0} im Text. Eine Linie im Text. Dabei haben die Elemente in den geschweiften Klammern die folgende Bedeutung: @l{L, T, B, RL, GL, BL} Wert L T B RL, GL, BL Bedeutung Linienlänge in cm. Linientyp (0 bis 5). Linienbreite in 0.1 mm Schritten. Rot-, Grün-, Blau-Anteil der Linienfarbe (0 bis 255). Vorhandene Linientypen: 0: 1: 2: 3: 4: 5: 40 Kapitel 5. UniPlot-Objekte UniScript Manual, Release R2016 5.9.7 Pfeile im Text Um einen roten Pfeil in den laufenden Text einzugeben, muss beispielsweise der folgende Text eingegeben werden: @a{1.2, 0, 3, 255, 0, 0, 1, 0.5, 0.2} This is an arrow This is an arrow Dabei haben die Felder folgende Bedeutung: @a{L, T, B, RL, GL, BL, SP, SL, SB} Wert L T B RL, GL, BL SP SL SB Bedeutung Linienlänge in cm. Linientyp (0 bis 5). Linienbreite in 0.1 mm Schritten. Rot-, Grün-, Blauanteil der Linienfarbe (0 bis 255). Pfeilposition, (0 = links, 1 = rechts, 2 = links und rechts). Spitzenlänge in cm. Spitzenbreite in cm. Pfeilpositionen: 0: 1: 2: 5.9.8 Symbole im Text Ein Symbol kann beispielsweise durch den folgenden Text definiert werden: @m{0.25, 12, 1, 255, 0, 0 ,0, 0, 0} This is a symbol This is a symbol Allgemein hat ein Symbol-Text folgenden Aufbau: @m{D, T, B, RF, GF, BF, RK, GK, BK} Bedeutung der Parameter Wert D T B RF, GF, BF RK, GK, BK Bedeutung Durchmesser des Symbols in cm. Markertyp (0 bis 18). Kantenbreite des Markers in 0.1 mm Schritten. Rot, Grün, Blau-Anteil der Füllfarbe (0 bis 255). Rot, Grün, Blau-Anteil der Kantenfarbe (0 bis 255). Vorhandene Markertypen: 5.9. Textobjekte 41 UniScript Manual, Release R2016 0: 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 5.9.9 Leerräume im Text Leerraum in Texten kann mit dem Befehl @s{space} erzeugt werden. Das Argument space in den geschweiften Klammern kann auch negativ sein und legt den Leerraum in Zentimetern fest. Dieses Kommando ist notwendig, um beispielsweise eine Linie mit einem zentrierten Symbol zu erzeugen: @l{1.2,0,4,0,0,0}@s{-0.7} @m{0.3,15,1,255,255,255,0,0,0}@s{0.5} A Legend String A Legend String Diese Zeichenkette muss nicht von Hand eingegeben werden. Um für 1D- und 2D-Datensätze eine Legende zu erzeugen, wählen Sie diagrammweitere-diagramm-funktionenlegende-fur-2d-datensatzeerzeugen. 5.9.10 Schraffuren Im Text kann ein Rechteck mit einer Schraffur ausgefüllt werden. Das Schraffur-Rechteck kann als Symbol für Balken-Diagramme und Schraffuren verwendet werden. Beispiel: @h{1.2, 2, 2, 0.3} This is a hatch symbol This is a hatch symbol Allgemein hat das Schraffur-Rechteck den folgenden Aufbau: @h{L, T, B, LD} @h{L, T, B, LD, RL, GL, BL} @h{L, T, B, LD, RL, GL, BL, RF, GF, BF} @h{L, T, B, LD, RL, GL, BL, RF, GF, BF, RK, GK, BK} Wert L T B LD RL, GL, BL 42 Bedeutung Länge des Rechtecks (Die Höhe wird durch den Font bestimmt). Schraffurtyp. 0 = Keine Schraffur Linienbreite in 0,1 mm Schritten. Abstand der Schraffurlinien in cm. Rot, Grün, Blau-Anteil der Linienfarbe (0 bis 255) (Default ist Schwarz (0,0,0)). Kapitel 5. UniPlot-Objekte UniScript Manual, Release R2016 RF, GF, BF RK, GK, BK Rot, Grün, Blau-Anteil der Füllfarbe (0 bis 255) (Default ist Transparent). Rot, Grün, Blau-Anteil der Kantenfarbe (0 bis 255) (Default ist Schwarz (0,0,0)). Vorhandene Schraffurtypen: 1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 5.9.11 Tabulatoren Das Steuerzeichen @t{size} kann verwendet werden, um Texte in Tabellenform auszugeben. Die Zahl in den geschweiften Klammern beschreibt den Abstand vom linken Rand des Textfelds in Zentimetern. Im Beispiel unten befindet sich also die zweite Spalte 3 cm vom linken Rand und die dritte Spalte 5 cm vom linken Rand des Textfeldes (bzw. 3.2cm/5.2cm von der linken Rahmenlinie, wenn für das Textfeld ein Randabstand vom 0.2 cm eingestellt ist). vollast2.nc minimum maximum arith. mean mean deviation variance standard deviation vollast2.nc minimum maximum arith. mean mean deviation variance standard deviation @t{3}LAMABG @t{3}0.89 @t{3}0.99 @t{3}0.925455 @t{3}0.0269421 @t{3}0.00104727 @t{3}0.0323616 LAMABG 0.89 0.99 0.925455 0.0269421 0.00104727 0.0323616 @t{5}BEEWG @t{5}290.3 @t{5}325.7 @t{5}303.1 @t{5}8.10909 @t{5}115.304 @t{5}10.738 BEEWG 290.3 325.7 303.1 8.10909 115.304 10.738 5.10 Text-Platzhalter Von UniPlot werden die Platzhalter im Dokument gesucht und durch den Texte aus der Messdaten-Datei (NC-Datei) ersetzt. Man kann Platzhalter für globale Attribute und für Kanalattribute definieren. Ein globales Attribut ist z. B. Messungsname. Ein Beispiel für ein Kanalattribut die Einheit eines Kanals. Das Einheitenattribut hat den Namen units. Ein Platzhalter beginnt mit einem $-Zeichen und endet mit einem $-Zeichen. Beispielsweise ist der Text $Vers_Nr$ ein Platzhalter für ein globales Attribut. Für ein Kanalattribut wird der Kanalname gefolgt von einem Punkt (.) vor den Attributnamen gesetzt, z. B. $EngSpd.units$. Der in $-Zeichen eingeschlossene Text muss exakt mit einem Attributnamen in der konvertierten NCDatei übereinstimmen. Vor dem Attributnamen kann noch ein Datei-Alias getrennt durch einen Doppelpunkt gestellt werden, z. B.: $File1:Vers_Nr$. Der Platzhalter $File2:Vers_Nr$ wird z. B. durch den Text des Attributs 5.10. Text-Platzhalter 43 UniScript Manual, Release R2016 Vers_Nr aus der zweiten Datendatei ersetzt. Der Datei-Alias setzt sich zusammen aus dem Wort File und einer folgenden Nummer. Die Nummerierung beginnt mit 1. Platzhalter können in Textobjekten, Tabellenobjekten oder Diagrammtiteln verwendet werden. Der Textplatzhalter kann direkt in das Textobjekt geschrieben werden oder in den Namen des Objekts eingetragen werden. Quellen für den Text: • Eingabe über Dialog • Aus den Stammdaten einer NC-Datei (Globales Attribut) • Aus einem Kanalattribut der NC-Datei. • Ein Datenpunkt eines Kanals der NC-Datei. Beispiele für Platzhalter: Platzhalter $Bearbeiter$ $Origin$ $Title$ $n_Mot.units$ $File1:Origin$ $(2)File1:Origin$ $File2:n_Mot.units$ $n_Mot.1$ $File3:n_Mot.1;%.1lf$ $File1:n_Mot.-2; %.2lf$ $n_Mot.i();%.2lf$ $n_Mot.min();%.2lf$ $n_Mot.max();%.2lf$ $n_Mot.std();%.2lf$ $n_Mot.mean();%.2lf$ Beschreibung Globales NC-Attribut mit dem Namen Bearbeiter. Globales Attribut mit dem Namen Origin. Globales Attribut mit dem Namen Title. Attribut units des Kanals n_Mot. Globales Attribut mit dem Namen Origin aus der ersten Datendatei. Die Nummer in runden Klammern bestimmt die Reihenfolge in der Bearbeitungsdialogbox. Kanalattribut units des Kanal n_Mot aus der zeiten Datendatei. Erster Kanalwert des Kanal n_Mot. Erster Kanalwert des Kanal n_Mot aus der dritten Datendatei. Der Wert wird mit einer Nachkommstelle angezeigt. Eine Beschreibung der Formatanweisung finden Sie in der Dokumentation von printf. Vorletzer Datenpunkt des Kanals n_Mot. Der Wert wird mit zwei Nachkommastelle angezeigt. Wert eines Datenpunktes oder Return Wert einer Funktion. Siehe Beschreibung unten. Minimum des Kanals n_Mot. Maximum des Kanals n_Mot. Standardabweichung des Kanals n_Mot. Mittelwert des Kanals n_Mot. Wenn ein bestimmter Betriebspunkt eines Kanals ausgegeben werden soll, kann der Index des Betriebspunkts in das globale Objekt _g() geschrieben werden. Beispiel:: _g()._placeholder = [. i = 3]; // Beriebspunkt 3 Anwendung: Bevor beispielsweise die Funktion auto_ReplaceTextFromNCFile aufgerufen wird, setzt man den gewünschten Betriebspunkt innerhalb einer Skriptfunktion wie im Beispiel beschrieben. Im Platzhalter muss dann ebenfalls der Name i verwendet werden. Wenn der Platzhaltername im Object _g()._placeholder nicht existiert, prüft die Funktion ob eine Funktion mit dem Namen existiert. Dabei muss der Name der Funktion aus der Vorsilbe _placeholder_ gefolgt von 44 Kapitel 5. UniPlot-Objekte UniScript Manual, Release R2016 dem Namen im Platzhalter zusammengesetzt sein. Beispiel für die Funktion max, für den Platzhalter $n_Mot.max();%.2lf$: def _placeholder_max() { if (_g().has_key("_placeholder") == 0) { return ""; } ncid = _g()._placeholder.ncid; varid = _g()._placeholder.varid; ssFormat = _g()._placeholder.ssFormat; rsMax = max(_NC_vargetEx(ncid, varid)); return nc_val_format(ncid, varid, ssFormat, rsMax, ""); } Die Funktion liefert den Text für den Platzhalter zurück. Die folgenden Funktionen sind bereits vorhaden: min, max, mean, std. Eigene Funktionen können entsprechend des Beispiels für max erstellt werden. 5.11 Eingabe über Dialog Um die Daten für die Platzhalter einzugeben bzw. zu bearbeiten doppelklicken Sie einen Text mit der Maus. UniPlot konvertiert alle Messdaten-Dateien in das netCDF-Format. Die erzeugten Dateien haben die Namenserweiterung .nc. Da die Namen in den netCDF-Dateien keine Sonderzeichen enthalten dürfen, werden diese Zeichen bei der Konvertierung durch Unterstriche ersetzt. Die erzeugten Namen kann man über das Dialogfeld Datei=>Daten importieren anschauen. Vor dem Attributnamen kann noch ein Datei-Alias getrennt durch einen Doppelpunkt gestellt werden, z. B.: $File1:Vers_Nr$. Der Platzhalter $File2:Vers_Nr$ wird z. B. durch den Text des Attributs Vers_Nr aus der zweiten Daten-Datei ersetzt. Der Datei-Alias setzt sich zusammen aus dem Wort File und einer folgenden Nummer. Die Nummerierung beginnt mit 1. 5.12 Feldfunktionen Feldfunktionen sind speziell kodierte Zeichenfolgen in Textfeldern. Mit Feldfunktionen können Informationen in einem Dokument automatisch aktualisiert werden. Beispiel: Der Dateiname des Dokuments soll als kleiner Text in einer UniPlot-Diagrammseite ausgegeben werden. Falls das Dokument unter einem anderen Namen abgespeichert wird, soll das Textfeld aktualisiert werden. Lösung: Erzeugen Sie ein Textfeld mit folgendem Inhalt: @f{documentname}. In der DokumentSeite wird nun nicht die Zeichenfolge @f{documentname} ausgegeben, sondern der Name der Datei, in dem sich diese Feldfunktion befindet, z. B. c:\test.ipw. Eine Feldfunktion beginnt mit der Zeichenfolge @f gefolgt von dem Namen der Feldfunktion, der in geschweiften Klammern {} eingeschlossen ist. Dem Namen der Feldfunktion kann eine Parameterliste folgen. Die Liste muss in runde Klammern eingeschlossen sein. Die einzelnen Elemente der Liste werden durch ein Komma getrennt. Das Komma-Zeichen kann nicht als Zeichen innerhalb eines Parameters verwendet werden. 5.11. Eingabe über Dialog 45 UniScript Manual, Release R2016 Nachdem die Feldfunktion ausgeführt wurde, steht das Feldresultat in geschweiften Klammern hinter der in geschweiften Klammern eingeschlossenen Feldfunktion. Beispiel: @f{date}{10.11.1998} Die Feldfunktionen werden bei bestimmten Aktionen aktualisiert. Zum Beispiel beim Öffnen einer Dokumentseite, beim Schließen eines Dokuments, beim Ändern eines Text-Elements oder wenn sich die Daten im Dokument ändern oder deren Konfiguration. Das Aktualisieren der Felder kann mit der F9Taste bzw. mit der Funktion bearbeitenfelder-aktualisieren erzwungen werden. Damit sich das Textobjekt an die Ausdehnung des Textes anpassen kann, kann für das Textobjekt die Option Größe automatisch anpassen ausgewählt werden (siehe Dialogfeld Text-Objekt in der Dialogseite Position und Größe). Groß- und Kleinschreibung wird bei Feldfunktionen nicht unterschieden. Um eine Feldfunktion in eine Dokumentseite einzufügen, gehen Sie wie folgt vor: • Erzeugen Sie ein neues Text-Element. Wählen Sie dazu aus der Symbolleiste Zeichnen das Symbol und ziehen mit der Maus einen Rahmen auf. • Klicken Sie das neue Text-Element doppelt. Im folgenden Text-Dialog geben Sie den Text für die Feldfunktion ein: @f{date}. Eine Liste mit den verfügbaren Feldfunktionen finden Sie weiter unten. • Wählen Sie die OK-Schaltfläche. Schreiben eigener Feldfunktionen Es können eigene Feldfunktionen definiert werden. Das folgende Beispiel zeigt die Feldfunktion @f{pagename}. Der Name der Feldfunktion muss mit dem Prefix __ff_ beginnen (2 Unterstriche gefolgt von den Zeichen ff gefolgt von einem Unterstrich). Der Funktionsname darf nur Kleinbuchstaben enthalten. Die Parameterliste der Funktion muss mit dem Beispiel übereinstimmen. Optionale Aufruf-Parameter werden in dem String-Vektor svParameter übergeben. Es können nur Zeichenketten übergeben werden. Die Funktion muss einen skalaren String zurück geben. Im Fehlerfall soll die Funktion einen leeren String ("") zurück geben. Für die benutzerdefinierten Feldfunktionen sollte eine eigene IC-Datei erzeugt werden, die im AutoloadVerzeichnis (uniplot\autoload) gespeichert werden sollte. Die in diesem Verzeichnis gespeicherten IC-Dateien werden beim Start von UniPlot automatisch geladen. Der Parameter hText enthält die Zugriffsnummer des Textobjektes, in dem sich die Feldfunktion befindet. Der Parameter hLayer enthält die Zugriffsnummer des Diagramms, in dem sich das Textobjekt hText befindet. Der Parameter hPage enthält die Zugriffsnummer der Seite und hDoc die Zugriffsnummer des Dokuments, in dem sich das Textobjekt befindet. Der Parameter nAction wird z. Z. noch nicht verwendet. Beispiel: def __ff_pagename(hDoc, hPage, hLayer, hText, nAction, svParameter) { if (hPage != 0) { return PageGetTitle(hPage); } 46 Kapitel 5. UniPlot-Objekte UniScript Manual, Release R2016 return ""; } Weitere Beispiele für Feldfunktionen finden Sie in der Datei rs_field.ic. @f{3dlegend} @f{_a} @f{ansi} @f{area} @f{channelname} @f{copytextcolortocurve} @f{createdate} @f{cursor_value} @f{datafilenames} @f{datasetfilter} @f{date} @f{documentname} @f{file} @f{labeldatapoint} @f{labeldataset} @f{labelsinglepoint} @f{lastprintdate} @f{lastsavedate} @f{legend_table} @f{legendchannel} @f{legendfile} @f{legendstyle} @f{legendtext} @f{legend} @f{linkaxisscale} 5.12. Feldfunktionen Liste der Feldfunktionen Erzeugt eine Legende für 3D-Datensätze. Die Funktion gibt für einen Alias einen Ersatztext aus. Gibt ein ANSI- oder UNICODE-Zeichen aus. Flächenberechnung von Datensätzen. Die Feldfunktion liefert einen Kanalnamen des ersten Datensatzes des Diagramms, zu dem die Feldfunktion gehört. Die Feldfunktion kann in einem Textobjekt, einem Tabellenobjekt oder in einer Achsentitel eingetragen werden. Kopiert die Textfarbe des y-Titels in alle 1D- und 2DKurven. Die Feldfunktion muss in den Y-Titeltext eingefügt werden. Zeigt das Datum an, an dem das Dokument erzeugt wurde. Zeigt den x- oder y-Wert einer 2D-Kurve an der CursorPosition an. Schreibt eine Liste aller Datendatei-Namen aus der Daten in der Seite geladen wurden. Gibt den Filtertext (Rekord-Filter) des Datensatzes aus. Schreibt das aktuelle Datum. Schreibt den Namen des Dokuments. Schreibt den Inhalt einer Textdatei (maximal 100 Zeilen). Beschriftet die Originalpunkte des Datensatzes mit dem Wert der y-Koordinate. Die Feldfunktion beschriftet eine 2D-Kurve mit ihrem Legendentext oder dem Y-Kanalnamen (siehe XYSetLegendText). Beschriftet einen einzelnen Datenpunkt. Zeigt das Datum an, an dem das Dokument zuletzt gedruckt wurde. Zeigt das Datum an, an dem das Dokument zum letzen Mal gespeichert wurde. Erzeugt eine Legendentabelle für die in der Seite oder Dokument verwendeten Datendateien. Erzeugt eine Legende mit den y-Kanalnamen der 2DKurven. Legende ausgeben. Erzeugt eine Legende für einen Datensatz (ohne Legendentext). Gib den Legendentext eines Datensatzes aus. Erzeugt eine Legende für 1D- und 2D-Datensätze. Die Funktion berechnet über die Funktion scale * x + offset die Skalierung der Achse, basierend auf der Achse die durch die Parameter diagramname und axis (x,y,z) angegeben ist. Fortsetzung auf der nächsten Seite 47 UniScript Manual, Release R2016 Tab. 5.7 – Fortsetzung der vorherigen Seite Liste der Feldfunktionen @f{marker} Diese Funktion kann in den Achsentitel eines Diagramms eingefügt werden. Sie zeigt den Marker des ersten Datensatzes an. @f{ncattfromdata} Gibt ein Attribut aus einer netCDF-Datei (NC-Datei) aus. Der Name der Datei wird dem angegebenen Datensatz entnommen. @f{ncattribute} Gibt ein Attribut aus einer netCDF-Datei (NC-Datei) aus. @f{ncvaluefromdata} Gibt einen Datenpunkt aus einer netCDF-Datei (NC-Datei) aus. Der Name des netCDF-Datei wird über den Datensatznamen ermittelt. @f{pagename} Liefert den Seitennamen. @f{pagenumber} Schreibt die Nummer der Seite. @f{revnum} Zeigt die Versions-Nummer des Dokuments an. @f{scaleaxis} Erzeugt eine Achsenskalierung in Abhängigkeit von einer anderen Achse eines Diagramms der Seite. @f{summaryinfo} Gibt einen Text aus dem Dialogfeld dateiinfo aus. @f{symbol} Zeichen aus dem Symbolzeichensatz ausgeben. @f{time} Schreibt die aktuelle Zeit. @f{update3dcolorlegendtable} Farblegende für x/y/z-Datensätze. Die Feldfunktion muss in den Namen eines Tabellenobjekts eingetragen werden. @f{update3dcolorlegend} Farblegende für x/y/z-Datensätze. @f{xyZstatvalue} Schreibt eine statistische Kennzahl für den angegebenen 3D-Datensatz in ein Textobjekt oder eine Tabellenzelle. @f{xyinterpol} Schreibt für eine gegebene x-Koordinate die interpolierten y-Koordinate oder für eine gegebene y-Koordinate die interpolierten x-Koordinate für den angegebenen 1D oder 2D Datensatz in das Textobjekt. @f{xyminmax} Gibt die Koordinaten des Minimums und des Maximums eines Datensatzes aus. @f{xystatistic} Gibt die Größen Minimum, Maximum, arith. Mittelwert, Mittlere Abweichung, Varianz und Standard-Abweichung für einen x/y-Datensatz aus. @f{xystatvalue} Schreibt eine statistische Kennzahl für den angegebenen 1D oder 2D Datensatz in das Textobjekt. @f{xyvalue} Schreibt eine x- oder y-Koordinate für den angegebenen 1D oder 2D Datensatz in das Textobjekt. @f{xyzstatistic} Gibt statistische Kennzahlen für ein Kennfeld aus (siehe Beispiel). @f{xyzvolume} Berechnet das Volumen, die Fläche oder den Quotienten Volumen/Fläche für ein Kennfeld. 5.13 Schriftfelder Schriftfelder können mit UniPlot interaktiv definiert und bedient werden. Zwei vordefinierte Schriftfelder stehen als Beispiele zur Verfügung. Das folgende Bild zeigt das Beispiel-Schriftfeld “Info-Box1”: 48 Kapitel 5. UniPlot-Objekte UniScript Manual, Release R2016 Auftraggeber: Bearbeiter: S. Brüggenkoch Vers. Datei WOT5612 Motortyp D083678 Verd. 18 Motor 5198.987 Gemisch-Bildner Datum: 14.11.98 ccm Bemerkung 5200 Kraftstoff Dichte PST: 3 Ölsorte 15W40 Luftdruck Raumtemp. Um das Schriftfeld in die aktive Dokumentseite einzufügen, gehen Sie wie folgt vor: • Wählen Sie diagrammweitere-diagramm-funktionenseite-importieren. • Im folgenden Dialogfeld wird der Name der IPW-Datei angezeigt, in dem sich die Seiten befinden, die importiert werden können. Die Seitennamen werden in der Liste angezeigt. Wählen Sie eine Seite aus (z. B. Info-Box1). • Falls die Seite ein Schriftfeld enthält, wird ein Dialogfeld angezeigt, um die Texte einzugeben. Beispiel: Operator: $(1)Operator$ Engine: $(2)Engine$ • Geben Sie die Texte ein und wählen dann die OK-Schaltfläche. Die Eingabe wird in das Schriftfeld eingefügt. • Durch einen Doppelklick auf einen der Texte des Schriftfelds können Sie den Schriftfelddialog wieder öffnen und die Eingaben bearbeiten. 5.14 Erstellung eigener Schriftfelder Die in der Beispieldatei \uniplot\template\info_g.ipw gespeicherten Seiten sollen nur als Beispiele dienen. Die Seiten können z. B. ein Schriftfeld, einen Rahmen, Ihr Logo sowie andere Elemente enthalten. Die Seiten sollten für Hoch- und Querformat-Dokumente erzeugt werden. Wenn Sie eigene Seiten erzeugen, oder die Beispieldatei an Ihre Wünsche anpassen möchten, sollten Sie die Datei in jedem Fall unter einem anderen Namen speichern. Die Datei info_g.ipw könnte bei einem UniPlot-Update überschrieben werden, wodurch Ihre Änderungen verloren gehen würden. Um ein eigenes Schriftfeld zu erstellen, gehen Sie wie folgt vor: • Wählen Sie dateineu. Wählen Sie aus der folgenden Liste Leere Seite Hochformat. • Für jedes Textelement erzeugen Sie ein neues Textobjekt. Im folgenden Beispiel erzeugen wir ein Schriftfeld mit den Texten "Operator" und "Engine". Erzeugen Sie ein Textobjekt mit dem Text "Operator:" und ein Textobjekt mit dem Text "$(1)Operator$" sowie ein Textobjekt mit dem Text "Engine:" und ein Textobjekt mit dem Text "$(2)Engine$". Dann fügen Sie noch ein Rechteck sowie eine horizontale und eine vertikale Linie ein, bis Sie das unten stehende Schriftfeld erzeugt haben. Operator: $(1)Operator$ Engine: $(2)Engine$ 5.14. Erstellung eigener Schriftfelder 49 UniScript Manual, Release R2016 • Fassen Sie nun die Zeichenelemente zu einem Zeichenobjekt zusammen. Markieren Sie dazu alle auswählen und ziehen dann mit der Zeichenelemente, indem Sie die Schaltfläche Multi-Selekt Maus einen Rahmen um alle Zeichenobjekte. Wählen Sie dann die Schaltfläche Zusammenfassen . • Speichern Sie nun das neue Dokument. Wählen sie dazu dateispeichern-unter. • Schließen Sie nun das Dokument (dateischließen). Um nun das neue Schriftfeld auszuprobieren, gehen Sie wie folgt vor. • Erzeugen Sie ein neues Dokument (dateineu). • Wählen Sie diagrammweitere-diagramm-funktionenseite-importieren. • Im folgenden Dialogfeld wählen Sie die Schaltfläche "..." und öffnen damit den Datei-ÖffnenDialog. Wählen Sie die Datei aus, in der sich das neue Schriftfeld befindet. • Die Datei wird geöffnet und die Seitennamen in der Liste angezeigt. Wählen Sie das neue Schriftfeld aus. • Das Schriftfeld wird geladen und das folgende Dialogfeld angezeigt: • Geben Sie den Operator und Motor-Text ein und wählen dann OK. Die Eingabe wird in das Schriftfeld eingefügt. • Durch einen Doppelklick auf einen der Texte des Schriftfelds können Sie den Schriftfelddialog wieder öffnen und die Eingaben bearbeiten. 5.15 Tabellen-Objekte In Tabellen können Texte und Zahlen in Spalten angeordnet werden, ohne das Tabulatorzeichen oder Leerzeichen verwendet werden müssen. Um eine Tabelle zu erzeugen, klicken Sie auf den Schalter in der Schalterleiste Zeichnen. Danach ziehen Sie bei gedrückter linker Maustaste einen Rahmen auf, der die Position und Größe der Tabelle bestimmt. Wenn Sie die linke Maustaste loslassen, wird ein Dialogfeld angezeigt, in dem die Spalten- und Zeilenanzahl festgelegt werden kann. Ein Tabellenobjekt kann beliebig viele Spalten und Zeilen enthalten. Über das Benutzerinterface ist die Anzahl der Zeilen und Spalten jedoch auf jeweils 50 begrenzt. Den Dialog zum Bearbeiten der Zellentexte öffnen Sie mit einem Doppelklick in einer Zelle. Über die Schalter Links, Rechts, Oben, Unten können Sie in benachbarte Zellen wechseln. 50 Kapitel 5. UniPlot-Objekte UniScript Manual, Release R2016 Im Tabellennamen können Feldfunktionen gespeichert werden, die bestimmte Funktionen ausführen. Feldfunktionen können auch im Zelltext enthalten sein. Beispielsweise gibt die Feldfunktion @f{date} das aktuelle Datum aus. Jede Zelle der Tabelle hat einen Namen, in dem beispielsweise Platzhalter eingegeben werden können, die dann mit Stammdaten aus Messdateien belegt werden oder über den dafür vorgesehenen Dialog bedient werden können. Jede Zelle kann nur Text mit einem Font darstellen, d. h. der Text in einer Zelle wird in einer Farbe einer Schriftart und einer Schriftgröße dargestellt. Jede Zelle kann aber einen eigenen Font verwenden. Der Text in einer Zelle kann um 90° oder um -90° gedreht werden. Zellen können transparent oder mit einer Füllfarbe ausgefüllt werden. Die Zellbegrenzung kann für jede Seite der Zelle eine andere Linienfarbe und -breite verwenden. Die Zellgröße kann in Abhängigkeit vom Text automatisch bestimmt werden. Benachbarte Zellen können zu einer Zelle zusammengefaßt werden. Die Textausrichtung, die Füllfarbe sowie die Randlinien können über die Schalterleiste Tabelle bearbeitet werden. Die Schriftart und Schriftfarbe der Zellentexte kann über die Format-Schalterleiste bearbeitet werden. Weitere Konfigurationsmöglichkeiten können über das Dialogfeld Tabelleneinstellungen bedient werden. Über einen rechten Mausklick im Tabellenobjekt können Sie das Kontextmenü öffnen. Der Menüeintrag Einstellungen öffnet das Dialogfeld. Die Einstellungen in diesem Dialog beziehen sich auf die markierten Zellen. Das Kontextmenü stellt weitere Funktionen zur Verfügung um Spalten und Zeilen zuzufügen, Text aus der Tabelle zu kopieren oder aus der Zwischenablage einzufügen, etc. 5.15. Tabellen-Objekte 51 UniScript Manual, Release R2016 Die Zellenbreite und Höhe kann mit der Maus geändert werden. Bei gedrückter Strg-Taste kann die Zellenbreite so geändert werden das die linke Spalte schmaler und die rechte Spalte breiter wird. Um die Position der Tabelle auf der Seite zu ändern, greift man mit der Maus die Tabelle in einem der vier Eckpunkte und verschiebt sie. 52 Kapitel 5. UniPlot-Objekte KAPITEL 6 Die Zwischenablage 6.1 Objekte in UniPlot einfügen Mittels OLE (Object Linking and Embedding) können Objekte anderer Anwendungen in UniPlotDokumente eingefügt werden. Sie können das Objekt über die Zwischenablage von Windows nach UniPlot kopieren, oder mit dem Befehl bearbeitenobjekt-einfugen den Objekt-Dialog öffnen und ein Objekt aus der Liste auswählen. Um ein Objekt über die Zwischenablage zu kopieren, • starten Sie das Programm, mit dem Sie die Grafik erzeugt haben und öffnen Sie die Datei, die die Grafik enthält. • Markieren Sie den Teil der Grafik, den Sie kopieren möchten. • Wählen Sie den Befehl bearbeitenkopieren. • Wählen Sie in UniPlot den Befehl bearbeiteneinfugen. Sie können auch den Schalter Einfügen aus der Symbolleiste wählen. Um ein Objekt über den Objekt-Dialog in UniPlot einzufügen, • markieren Sie das Diagramm, dem Sie die Grafik zuweisen wollen und wählen Sie dann den Befehl bearbeitenobjekt-einfugen. • Wählen Sie aus dem Dialogfeld Objekt eine Anwendung aus, mit der Sie das Objekt erzeugen möchten. • Bearbeiten Sie das Objekt. 6.2 Bearbeiten eines eingefügten Objekts Sie können die eingefügten Objekte verschieben, vergrößern und bearbeiten ohne UniPlot zu verlassen. Um ein eingebettetes Objekt zu bearbeiten, klicken Sie innerhalb des Objekts doppelt, um das Programm zu starten, mit dem das Objekt erzeugt wurde. 6.3 Zeichenobjekte kopieren Zeichenobjekte können mit den Funktionen bearbeitenausschneiden, bearbeitenkopieren und bearbeiteneinfugen zwischen verschiedenen Diagrammen eines Dokumentes oder verschiedener Dokumente 53 UniScript Manual, Release R2016 hin und her kopiert werden. Hinweis: Beim Einfügen wird die Position und Größe eines Objektes nicht verändert. Wird das Objekt in das gleiche Dokument eingefügt aus dem es auch kopiert wurde, so liegt die Kopie genau über dem Original. Wollen Sie UniPlot-Zeichenobjekte über die Zwischenablage in andere Windows-Programme einfügen, müssen Sie die Funktion bearbeitenganze-seite-kopieren verwenden. 6.4 Datensatz kopieren Markieren Sie den gewünschten Datensatz und kopieren Sie den Datensatz mit der Tastenkombination Strg+C in die Zwischenablage oder wählen Sie die Funktion bearbeitendatensatz-kopieren. Mit der Tastenkombination Strg+V fügen Sie den Datensatz in das markierte Diagramm ein. Die Diagrammachsen werden beim Einfügen neu skaliert, falls der Datensatz vollständig außerhalb des Diagramms liegt. 6.5 Diagramm kopieren Um ein Diagramm einschließlich aller Datensätze und Zeichenobjekte in die Zwischenablage zu kopieren, wählen Sie den Befehl bearbeitendiagramm-kopieren. Hinweis: Soll das Diagramm in eine andere Windows-Anwendung kopiert werden, wählen Sie den Befehl bearbeitenganze-seite-kopieren. 6.6 Ganze Seite kopieren Mit der Funktion edit-copy-page wird die aktive Seite des angezeigten Dokuments als Meta-Datei und im UniPlot-Format in die Zwischenablage von Windows kopiert. Mit dem Befehl bearbeiteneinfugen können Sie den Inhalt der Zwischenablage in die aktive Seite des angezeigten UniPlot-Dokument einfügen. Um ein UniPlot-Dokument in ein Dokument einer anderen Anwendung einzufügen, wählen Sie in der Anwendung den Befehl bearbeiteneinfugen. 54 Kapitel 6. Die Zwischenablage KAPITEL 7 Beispiele Die folgenden Beispielbilder zeigen einige Möglichkeiten, wie Sie mit UniPlot Ihre Daten graphisch darstellen können. 7.1 2D-Datensatz-Attribute Figure 2 3.0 3.0 3.0 2.5 2.5 2.5 2.0 SZ 3.5 2.0 2.0 1.5 1.5 1.5 1.0 1.0 1.0 0.5 0.5 1000 2000 3000 4000 0.5 1000 2000 N 3000 4000 1000 Figure 5 3.0 3.0 2.5 2.5 2.5 SZ 3.0 SZ 3.5 2.0 1.5 1.5 1.0 1.0 1.0 0.5 0.5 3000 4000 N 3000 4000 2.0 1.5 2000 4000 Figure 6 3.5 2.0 3000 N 3.5 1000 2000 N Figure 4 SZ Figure 3 3.5 SZ SZ Figure 1 3.5 0.5 1000 2000 3000 N 4000 1000 2000 N Die Darstellungsattribute werden im Dialog 2D-Kurven-Konfiguration eingestellt. Sie können den Dialog auf verschiedenen Wegen erreichen: • Markieren Sie den Datensatz und wählen Sie aus der Symbolleiste den Schalter 2D-Kurve oder , • klicken Sie die Kurve doppelt, oder • wählen Sie die Funktion datendatensatzliste. Wählen Sie aus der Liste den Namen des Datensatzes und danach die Schaltfläche Konfiguration, um den Dialog aufzurufen. 55 UniScript Manual, Release R2016 7.2 Diagramm mit 3 überlappenden y-Achsen Diagram with 3 y-axes 240 Otto Diesel 220 EWGMOM 200 180 160 140 120 100 340 320 280 260 BEEWG 300 240 220 80 200 70 PEFF 60 50 40 30 20 10 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500 N • Wählen Sie die Funktion dateineu. Aus dem Listenfeld wählen Sie bitte die Funktion 1 Diagramm - 3y-Achsen. Es wird ein neues Dokument mit drei vollständigen Diagrammen erzeugt. Jedoch wird die x-Achse nur bei dem untersten Diagramm angezeigt. • Nun soll in das untere Diagramm ein Datensatz importiert werden. Klicken Sie dazu das Diagramm mit der Maus an. Die Markierung wird durch blaue Rechtecke an den Ecken angezeigt. Wählen Sie die Funktion dateidaten-importieren und öffnen Sie die Datei vollast.nc aus dem Verzeichnis UniPlot\samples. Die folgende Dialogmaske zeigt Ihnen die Datensätze der Datei an. Wählen Sie für die x-Achse den Datensatz N und für die y-Achse den Datensatz PEFF aus. Stellen Sie außerdem sicher, dass die Schalter 2D und Achsen skalieren eingeschaltet sind und wählen Sie dann die Funktion Laden. • Markieren Sie ein anderes Diagramm. Importieren Sie einen weiteren Datensatz und führen Sie diesen Schritt für alle weiteren Diagramme durch. • Um die Achsen für ein quadratisches Netz zu skalieren, wählen Sie die Funktion diagrammweitere-diagramm-funktionen und wählen Sie aus der folgenden Liste die Funktion Achsen für quadratisches Netz skalieren. • Eine Legende wird mit dem Befehl diagrammweitere-diagramm-funktionenlegende-fur-2d56 Kapitel 7. Beispiele UniScript Manual, Release R2016 datensatze-erzeugen eingefügt. Um die Legende zu editieren, klicken Sie das Legenden-Objekt doppelt. Ändern Sie die Texte und wählen danach die Schaltfläche OK. 7.3 2D-Datensatz - Ableitung und Integral 0.35 250 9·105 0.30 240 8·105 0.25 230 7·105 0.20 220 6·105 0.15 210 5·105 4·105 0.10 Torque 1·106 Derivation : Torque Integral : Torque Integral and derivation of a 2D dataset 200 0.05 190 3·105 0.00 180 2·105 -0.05 170 1·105 -0.10 160 0·100 -0.15 150 -1·105 -0.20 140 -2·105 -0.25 130 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500 rpm • Laden Sie den Datensatz Moment Mom über Drehzahl N aus der Datei vollast.nc. • Wählen Sie die Funktion datenweitere-daten-funktionen und aus dem folgenden Dialogfeld die Funktion Differential-Datensatz erzeugen. Es wird ein neues Diagramm mit einer versetzten y-Achse und einer an das erste Diagramm gebundenen x-Achse erzeugt. • Um den Integral-Verlauf der Drehzahl-Moment-Linie zu erzeugen, markieren Sie mit der Maus den Datensatz und wählen dann die Funktion Integral-Datensatz erzeugen. Es wird wieder ein neues Diagramm mit versetzter y-Achse erzeugt, die jedoch die y-Achse des DifferentialDiagramms überdeckt. • Um die y-Achse weiter nach links zu verschieben, wählen Sie die Funktion Layout im Menü Diagramm und tragen für den Abstand der y-Achse den Wert 4.0 cm ein. • Wählen Sie für die drei Datensätze die entsprechenden Messpunktmarkierungen (Markerart) aus und erzeugen danach eine Legende (Funktion diagrammweitere-diagramm-funktionen Eintrag Legende für 2D-Datensätze erzeugen=>Legende für alle Diagrammeerzeugen). • Klicken Sie die Legende doppelt. Markieren Sie mit der Maus den Text @l{1.2, ..., 0.475} und kopieren Sie ihn mit der Tastenkombination Strg+C in die Zwischenablage. Schließen Sie das Dialogfeld und klicken Sie den Titel der Mom-Achse doppelt. Positionieren Sie die Schreibmarke vor den Text und fügen Sie den Inhalt der Zwischenablage mit der Tastenkombination Strg+V ein. Mit Hilfe der Feldfunktion @f{marker} kann man den verwendeten Marker des ersten Datensatzes des Diagramm im Achsentitel anzeigen. Doppelklicken Sie den Achsentext und geben den folgenden Text ein: @f{marker} 7.3. 2D-Datensatz - Ableitung und Integral 57 UniScript Manual, Release R2016 7.4 Diagramm mit 2 Kurven und Farbfüllung Color Filling between curves 350 300 250 energy [kW] Fuel energy 200 Loss 150 100 50 0 500 engine power 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500 6000 6500 rpm • Laden Sie den Datensatz Brennstoffenergie über Drehzahl aus der Datei energie.asc aus dem Verzeichnis UniPlot\samples. • Wählen Sie die Funktion daten1d-und-2d-datensatz. Markieren Sie das Kontrollkästchen vor der Schaltfläche Füllfarbe und wählen Sie danach OK. Die Fläche unter der Kurve sollte nun bis zur x-Achse rot ausgefüllt sein. • Laden Sie den Datensatz Nutzleistung über Drehzahl. Die Datei energie.nc sollte in der Symbolleiste in einem Kombinationsfeld angezeigt sein. Laden Sie den Datensatz. • Wählen Sie die Funktion daten1d-und-2d-datensatz. Markieren Sie das Kontrollkästchen vor der Schaltfläche Füllfarbe. Wählen Sie dann als Füllfarbe die Farbe weiß. Die Fläche unter der Kurve bis zur x-Achse wird nun weiß ausgefüllt. • Fügen Sie nun noch die Texte in das Diagramm ein. 58 Kapitel 7. Beispiele UniScript Manual, Release R2016 7.5 Mathematische Funktionen f(x) graphisch darstellen Function plots * x = [1, 2, 3, 4, 5] * y = [1, 1.5, 2.5, 3, 1.2] * plot(x,y) * x = linspace(0, 2*PI) * plot(x, sin(x)) 1.0 3.0 0.5 2.5 0.0 2.0 -0.5 1.5 -1.0 0 1 2 3 4 5 6 7 1.0 1.0 3.0 4.0 5.0 * x = linspace(0, 10) * y = 5 .* exp(-0.1 .* x) .* sin(x) * plot(x,y) * x = linspace(0, 2*PI, 1000) * plot(sin(2 .* x), cos(5 .* x)) 1.0 5.0 0.5 2.5 0.0 0.0 -0.5 -2.5 -1.0 -1.0 2.0 -5.0 -0.5 0.0 0.5 1.0 0 2 4 6 8 10 Um die mathematischen Funktionen zu plotten, gehen Sie wie folgt vor: • Öffnen Sie das Kommandofenster. Wählen Sie dazu die Funktion view-command-window oder wählen Sie aus der Symbolleiste den Schalter mit dem Taschenrechner aus. • Tippen Sie die Programmzeilen in das Kommandofenster ein, um die entsprechenden Funktionsverläufe zu erzeugen. Ausführliche Informationen zu UniScript finden Sie im UniScript-Teil des Benutzerhandbuches. 7.5. Mathematische Funktionen f(x) graphisch darstellen 59 UniScript Manual, Release R2016 7.6 Konturdiagramm mit Farbverlauf und Legende 16 0.9 1.3 1.4 14 1.6 1.8 1.8 3.2 1.9 12 PME 10 1.3 1.9 2.2 2.2 2.0 3.0 1.9 0.9 8 6 4 0.5 2 0 1000 1500 2000 2500 3000 3500 4000 4500 N • Wählen Sie die Funktion dateidaten-importieren. Öffnen Sie die Datei map2.nc im Verzeichnis UniPlot\samples. Wählen Sie für die x-Achse den Datensatz N, für die y-Achse den Datensatz PME und für die z-Achse den Datensatz SZ. Stellen Sie sicher, dass die Optionsschaltfläche 3D ausgewählt ist und dass die Kontrollkästchen Isolinien skalieren und Achsen skalieren eingeschaltet sind. Wählen Sie dann Laden. • Klicken Sie eine Isolinie doppelt, um das Dialogfeld 3D-Datensatz Konfiguration aufzurufen. Markieren Sie mit der Maus alle Isolinien-Werte und wählen Sie die Schaltfläche Löschen. Geben Sie dann den Text 0.5, 0.2, 1.5 in das Textfeld ein und wählen danach die Schaltfläche Zufügen, um die Werte in die Liste zu übertragen. • Markieren Sie alle Werte einschließlich min in der Liste und wählen Sie die Schaltfläche Farbstufen. Wählen Sie für Minimum die Farbwerte Rot = 255, Grün = 255 und Blau = 255 (weiß). Für Maximum setzten Sie alle Werte auf 0 (schwarz). Wählen Sie danach OK. • Wählen Sie nun die Dialogseite Isolinien und markieren das Kontrollkästchen Flächen zwischen den Isolinien farblich ausfüllen und wählen danach die Schaltfläche OK. • Um die Farblegende zu erzeugen, wählen Sie im Menü Daten die Option Weitere DatenFunktionen und aus der angezeigten Liste die Funktion Farb-Legende. 60 Kapitel 7. Beispiele UniScript Manual, Release R2016 7.7 Konturdiagramm und 3D-Diagramm Soot SZ [Bosch] 16 0.9 1.3 1.4 14 0.7 3.2 1.6 1.8 1.8 1.1 1.9 12 1.9 2.2 2.2 PME 10 2.0 0.6 3.0 1.6 8 6 1.6 0.9 1.1 0.7 0.7 1.9 1.3 0.9 1.3 0.6 4 0.9 1.1 2 0.9 0 1000 1500 2000 2500 3000 3500 4000 4500 N 1.55 1.33 3.5 3.0 1.09 2.5 SZ 2.0 1.5 0.891 1.0 0.5 16 14 1000 12 1500 0.69 10 2000 8 2500 6 3000 N PM E 0.568 4 3500 2 4000 4500 0 • Öffnen Sie wie im vorhergehenden Beispiel die Datei map2.nc und laden den Datensatz x = N, y = PME, z = SZ. • Erzeugen Sie nun eine Kopie des Diagramms. Damit das Diagramm einschließlich des Kennfelds kopiert wird, darf nur das Diagramm markiert sein. Klicken Sie mit der Maus einmal außerhalb des Diagramms, falls der Kennfeld-Datensatz markiert ist. Um das Diagramm in die Zwischenablage zu kopieren, wählen Sie die Funktion bearbeitenkopieren. Aus der Zwischenablage fügen Sie dann das Diagramm mit der Tastenkombination Strg+V in das Dokument ein. • Ordnen Sie die beiden Diagramme übereinander an und markieren Sie den Kennfeld-Datensatz des unteren Diagramms. Wählen Sie dann aus der Symbolleiste den Schalter . • Um nun den Farbverlauf auf der Oberfläche anzuzeigen, wählen Sie die Funktion daten3ddatensatz3d-oberflache. Im Dialogfeld markieren das Kontrollkästchen Oberfläche mit Füllfarbe ausfüllen. 7.7. Konturdiagramm und 3D-Diagramm 61 UniScript Manual, Release R2016 • Um die Farblegende zu erzeugen, wählen Sie die Funktion datenweitere-daten-funktionen-3d und aus der folgenden Liste die Funktion Farb-Legende. 7.8 Mathematische Funktionen f(x,y) graphisch darstellen 3D function plot f(x,y) = real(tan(x + 1i * y)) 2.0 1.5 0.00 1.0 -0.13 0.26 0.5 -0.58 0.0 -0.26 -2.00 -0.5 -0.58 -1.0 -0.26 -2.00 -0.05 0.05 -0.05 -1.5 -2.0 -2.0 -1.5 -1.0 -0.5 0.0 0.5 1.0 1.5 2.0 2.5 3.0 3.5 UniScript Program: nRC = 40; xmin = 0.05-PI/2; xmax = 0.05+PI; ymin = -PI/2; ymax = PI/2; x = linspace(xmin, xmax, nRC); y = linspace(ymin, ymax, nRC); <xx, yy> = meshdom(x,y); zz = real(tan(xx + 1i * yy)); def _plotMatrix(Name, zz, rvRange) { hdoc = DocCreate(); hlayer = LayerCreate(); DocAddLayer(hdoc, hlayer); hdata = XYZCreateFromMatrix(Name, zz, rvRange); LayerAddDataset(hlayer, hdata); LayerAutoScale(hlayer); DocReplot(hdoc); } _plotMatrix("real(tan(xx + 1i * y))", zz, [xmin, ymin, xmax, ymax]); • Erzeugen Sie zuerst einen neuen Editor. Wählen Sie dazu die Funktion dateineu und aus der folgenden Liste den Eintrag [Programm-Editor (ASCII-Format)]. • Tippen Sie nun den Programm-Text in den Editor ein. • Um das neue Programm auszuführen, wählen Sie die Funktion uniscriptspeichern/ausfuhren. Falls Sie alle Zeilen richtig eingetippt haben, wird das Isolinien-Diagramm erzeugt. Falls beim Übersetzen des Programms ein Fehler auftritt, korrigieren Sie den Fehler und wählen erneut die Funktion uniscriptspeichern/ausfuhren (F4), bis das Programm fehlerfrei übersetzt und ausgeführt wird. Um Hilfe zu einer Funktion zu erhalten, positionieren Sie den Cursor auf einen Funktionsnamen und drücken die Funktionstaste F1. Positionieren Sie beispielsweise den Cursor auf die Funktion DocCreate und drücken Sie F1. Ausführliche Hinweise zur Programmierung mit UniScript erhalten Sie im UniScript-Teil des Benutzerhandbuchs. 62 Kapitel 7. Beispiele UniScript Manual, Release R2016 7.9 Kennfeldschnitte 160 0.95 140 0.89 0.91 0.90 0.91 0.92 0.91 0.89 0.95 0.99 120 0.96 1.06 EWGMOM 100 1.10 80 1.21 60 1.17 40 20 0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500 N Map cross-sections for constant Torque 2D_CUT (60) 2D_CUT (100) 2D_CUT (20) 1.20 LAMABG 1.15 1.10 1.05 1.00 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500 N • Importieren Sie aus der Datei KENNFELD.NC das Kennfeld (x = N, y = EWGMOM, z = LAMABG) (LAMABG = Lambda im Abgas). • Klicken Sie, um das Kennfeld zu markieren, eine Isolinie an. Wählen Sie danach die Funktion datenweitere-daten-funktionen. Wählen Sie aus dem Listenfeld die Funktion Schnitte y = Konstant aus. • Im folgenden Dialogfeld werden einige Y-Schnitt-Werte vorgeschlagen. Löschen Sie bis auf die Werte 20;60;100 alle Werte aus dem Textfeld. Zum Trennen der Zahlenwerte muss ein Semikolon verwendet werden. Vor der ersten und hinter der letzen Zahl darf kein Semikolon stehen. Es wird ein neues Dokument mit den Lambda-Kurven für 20, 60 und 100 Nm erzeugt. • Kopieren Sie nun das neue Diagramm in das Kennfeld-Dokument. Damit das Diagramm einschließlich der Kurven und der Legende in die Zwischenablage kopiert wird, darf nur das Diagramm markiert sein. Klicken Sie mit der Maus das Diagramm außerhalb der Datensätze und der Legende einmal an, um alle möglicherweise markierten Objekte abzuwählen. • Kopieren Sie das Diagramm nun in die Zwischenablage (Menü bearbeitenkopieren). Wechseln Sie in das Fenster mit dem Kennfeld und fügen Sie den Inhalt der Zwischenablage mit der Tastenkombination Strg+V ein. 7.9. Kennfeldschnitte 63 UniScript Manual, Release R2016 • Verschieben Sie das Diagramm in den unteren Teil der Seite, um das Bild auf der rechten Seite zu erhalten. 7.10 Kennfeldschnitt entlang einer Kurve BSFC map [g/kWh] 160 Ia = 3.08 Ia = 3.51 140 Torque [Nm] 120 275 100 290 300 80 320 60 350 40 390 520 20 0 500 1000 1500 2000 2500 3000 3500 4000 4500 min-1 5500 Map cross-section along a 2D curve 1200 BSFC 1000 Ia = 3.08 Ia = 3.51 800 600 400 200 500 1000 1500 2000 2500 3000 3500 min-1 4500 Map cross-section for constant rpm 360 BSFC 340 320 300 5000 min-1 1000 min-1 2000 min-1 4000 min-1 3000 min-1 280 260 40 60 80 100 Torque [Nm] 120 140 160 Um einen beliebigen Kennfeldschnitt zu erzeugen, benötigen wir eine Kurve, die den Verlauf des Kennfeldschnitts in der x/y-Ebene festlegt. Für die Punkte der Kurve können die z-Werte dann aus dem Kennfeld berechnet werden. Die z-Koordinaten der Schnittkurve können als x/z-, y/z-Kurve oder über der Bogenlänge der Kurve aufgetragen werden. Im Beispiel auf der rechten Seite wurde der Kennfeldschnitt entlang einer Fahrwiderstandskurve durch ein Verbrauchskennfeld bestimmt. Das 64 Kennfeld mit den Fahrwiderstandskurven befindet sich in der UniPlot-Datei Kapitel 7. Beispiele UniScript Manual, Release R2016 UniPlot\samples\sample.ipw in der Seite “Contour Plot”. Das Vorgehen zur Erzeugung der Schnittkurven stimmt mit dem des vorhergehenden Beispiels überein. 7.10. Kennfeldschnitt entlang einer Kurve 65 UniScript Manual, Release R2016 66 Kapitel 7. Beispiele KAPITEL 8 Import von Daten UniPlot unterstützt die folgenden Datenformate: • Text-Format (ASCII-Dateien bzw. CSV-Dateien) • Excel (Version 2.1 bis Excel 2007) • netCDF-Dateien • MDF-Format (MDF-Dateien werden beispielsweise von den Messsystemem VS100/INCA der Fa. ETAS GmbH, Drive-Recorder der Fa. IAV GmbH und CANalyzer der Fa. Vector Informatik GmbH verwendet. Siehe import-von-mdf-dateien) • FEVIS, Indiziersystem der Fa. FEV Motorentechnik GmbH (siehe import-von-fevis-dateien). • COMBI, Indiziersystem der Fa. SMETec GmbH • IFILE, Indiziersystem-Datei der Fa. AVL List GmbH, Graz-Austria. Siehe import-von-ifiledateien. • WFT, Waveform File der Fa. Nicolet • UTX-Format (UniPlot Text-Dateien) • FAMOS (siehe importieren-von-famos-dateien) • DIAdem (siehe importieren-von-diadem-dateien) • ASAM-ODS (Browser für API 3 asam-ods-browser-(rpc) und API 4 asam-ods-browser-(corba)) • Import von DIAdem TDM- bzw. TDMS-Dateien (siehe import-export-von-tdm-dateien). • import-von-mdf-stiegele-dateien (Fa. Stiegele Datensysteme GmbH und Fa. Caesar Datensystem GmbH). • MATLAB-Dateien (import-von-matlab-dateien). • MDF4: import-of-mdf4-files. • BLF (CAN): import-of-can-files. Um einen Filter zu installieren, wählen Sie tools-add-in-manager. Neben diesen vordefinierten Formaten kann UniPlot über die eingebaute Programmierschnittstelle UniScript um weitere firmenspezifische Binär- und Textformate ergänzt werden. 67 UniScript Manual, Release R2016 8.1 Datensatz-Import Der Datenimport in UniPlot wird in zwei Schritten durchgeführt: • Im ersten Schritt werden die Daten gelesen, konvertiert und als netCDF-Datei gespeichert. • Im zweiten Schritt können die gewünschten Daten aus der netCDF-Datei geladen werden. Die Konvertierung braucht nur beim Import des ersten Datensatzes durchgeführt werden. Die Zeit, die zur Konvertierung der Text- oder Excel-Dateien erforderlich ist, beträgt je nach Größe der Datei einige Sekunden bis zu mehreren Minuten. Sollen weitere Datensätze geladen werden, kann direkt auf die netCDF-Datei zugegriffen werden. Die erzeugte netCDF-Datei wird im Verzeichnis der Text- oder Excel-Datei gespeichert und erhält die Dateinamenserweiterung .nc. Bei Excel-Dateien wird der Tabellenname an den Dateinamen angehängt. Um Daten zu laden, • wählen Sie die Funktion dateidaten-importieren. • Wählen Sie den gewünschten Dateityp aus. • Wählen Sie die gewünschten Dateien aus. • UniPlot lädt die Daten aus der Datei und erzeugt eine neue Datei mit der Erweiterung .nc. Wenn eine Datei mit gleichem Namen bereits existiert, wird die Datei überschrieben. • Wenn die netCDF-Datei erfolgreich erzeugt werden konnte, wird das folgende Dialogfeld angezeigt: In dieser Maske können Sie die zu importierenden Daten auswählen. X/Y/Z-Spalte: Um die Daten zu importieren, muss bei den Lesevorschriften die Zuordnung der Spalten der Datendatei zu den Achsen des Diagramms definiert werden. Falls die Spalten Namen haben und die Position der Namen im Dialogfeld Import-Optionen richtig festgelegt wurde, zeigen die Kombinationsfelder diese Namen an. Ansonsten werden die Spalten durchnummeriert (Col1, Col2, ...). Isowerte skalieren: Durch die Wahl des Kontrollkästchens Isowerte skalieren werden beim Import von 3D-Datensätzen aus den Daten der z-Spalte Werte bestimmt, für die Isolinien im Diagramm dargestellt werden. Die Werte werden so ausgewählt, daß die Isolinien möglichst gleichmäßig über das gesamte Kennfeld verteilt sind. Achsen skalieren: Ist das Kontrollkästchen Achsen skalieren angewählt, wird die x-, y- und die zAchse automatisch skaliert. Soll die Achseneinteilung des Diagramms nicht neu skaliert werden, darf das Kontrollkästchen nicht markiert sein. Ausschnitt aus einer ASCII-Messdatendatei: N 1/min 1249 68 MEFF Nm 55.70 EWGMOM Nm 53.51 BEEWG g/kWh 934.1 ... ... ... Leist kW 7.27 PME bar 7.05 Kapitel 8. Import von Daten UniScript Manual, Release R2016 1243 ... 6730 6763 6740 48.97 ... 24.27 15.66 8.04 47.14 ... 23.38 15.09 7.75 933.2 ... 239.1 157.7 123.6 ... ... ... ... ... 6.14 ... 17.68 11.71 5.99 6.19 ... 3.07 1.98 1.02 Der Import-Filter für ASCII-Dateien findet das Spaltentrennzeichen, das Dezimaltrennzeichen, die Kanalnamen und Kanaleinheiten selbständig. Beispiel: Für den Ausschnitt der Datei soll ein Kraftstoffverbrauchskennfeld in Abhängigkeit von Drehzahl und Moment dargestellt werden. Dazu muss der x-Achse die Spalte N, der y- Achse die Spalte MEFF und der z-Achse die Werte der Spalte BEEWG zugeordnet werden. In der letzten Spalte können Kennbuchstaben eingegeben werden, die die Darstellung der Volllastlinie festlegen. Damit die Daten als 3D-Datensatz geladen werden, muss die Optionsschaltfläche 3D ausgewählt sein. Haben Sie alle Einstellungen vorgenommen, wählen Sie die Schaltfläche Laden, um von den Daten einen Isolinien-Datensatz zu erzeugen. 160 301 290 140 297 298 290 302 297 299 308 326 290 297 EWGMOM [Nm] 120 320 290 100 290 290 290 80 300 300 320 320 320 350 350 350 390 390 520 520 300 60 390 40 520 20 0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500 N [1/min] 8.2 Formatvorschriften für CSV-, Text- und Excel-Dateien Für CSV- (Comma-Separated Values) Text- und Excel-Dateien müssen folgende Formatierungsvorschriften beachtet werden: Die Daten müssen in Spalten angeordnet sein. Die erste Datenzeile muss innerhalb der ersten 256 Zeilen stehen. Spaltenanzahl: Die maximale Spaltenanzahl ist auf 8000 begrenzt. Zeilenanzahl: Die maximale Zeilenanzahl wird nur durch den verfügbaren Speicher begrenzt. Für einen 1D- oder 2D-Datensatz ist mindestens 1 Datenzeile erforderlich, für einen 3D-Datensatz mindestens 5 Datenzeilen. Spaltentrennzeichen: Mögliche Spaltentrennzeichen bei Text-Dateien sind: Spaltentrennzeichen ”;” “\t” ”,” ”“ Beschreibung Semikolon Tabulatorzeichen Komma Ein oder mehrere Leerzeichen 8.2. Formatvorschriften für CSV-, Text- und Excel-Dateien 69 UniScript Manual, Release R2016 Das Spaltentrennzeichen sucht der Filter nach folgender Regel: Das Zeichen wird als Trennzeichen verwendet, welches am häufigsten in den letzten 4 Zeilen der ersten 256 Zeilen auftritt. Falls das Trennzeichen ein Komma ist, muss als Dezimaltrennzeichen ein Punkt verwendet worden sein. Das Leerzeichen wird nur dann als Spaltentrennzeichen verwendet, falls kein anderes Trennzeichen gefunden wurde. Dezimaltrennzeichen: Gültige Dezimaltrennzeichen sind der Punkt (.) oder ein Komma (,). Das Dezimaltrennzeichen wird automatisch erkannt. Spaltentyp: Die Spalten werden als real4 (float) gespeichert. Falls eine Spalte keine gültigen Zahlenwerte enthält, wird die Spalte als Text-Spalte gespeichert. Falls die Textelemente als gültiges Datum formatiert sind, z. B. 17.01.2007, werden die Spalten als Zeit- bzw. Datum-Spalte gespeichert. Missing Values: Falls eine Spalte neben gültigen Zahlenwerten nur noch leere Zellen oder nur die Zeichen "*", "-", "#" (ein oder mehrere) enthält, werden diese Zellen als missing markiert. Zellen, die die folgenden Werte enthalten, werden ebenfalls als ungültige Zahlen gespeichert, wobei Groß/Kleinschreibung ignoriert wird: “not a number”, “nan”, “1.#inf”, “no value”, “missing*”. Mit dem Zeichen "#" in der ersten Spalte kann eine Zeile in der Datei auskommentiert werden. Die Zahlenwerte der Zeile werden in der NC-Datei dann als missing_value gespeichert. Kanalnamen und Einheit: Über den eigentlichen Daten können noch Kanalnamen und Einheiten stehen, wobei die Kanalnamen über den Einheiten stehen müssen. Die Kanalnamen sollten alle unterschiedlich sein. Nur wenn 80 % aller Namen voneinander verschieden sind, werden Sie als Kanalnamen erkannt. Die Kanalnamen können zur Benennung der Diagramm-Achsen und der Datensätze verwendet werden. Falls keine Kanalnamen gefunden werden, erhalten die Spalten die Namen Col1 bis Coln. Falls gleiche Namen auftreten, werden die Namen durchnummeriert, da in der NC-Datei nur eindeutige Namen erlaubt sind. Kommentarzeilen: Über den Datenspalten können Kommentarzeilen stehen, die überlesen werden. Anführungsstriche (“”): An Anführungsstriche werden entfernt. Trennzeichen innerhalb von Anführungsstriche werden ignoriert. Zahlenwerte in Anführungsstrichen werden als Text behandelt. Das folgende Beispiel zeigt eine gültige Datei im Text-Format. In der ersten Spalte enthält die Datei die Drehzahlwerte, in der zweiten das Moment und in der dritten Spalte die Leistung. Drehz 1/min 1249 1243 3567 6763 6740 Mom Nm 55.70 48.97 38.54 15.66 8.04 Lst kW 53.51 47.14 27.14 15.09 7.75 Alle Datenzeilen sollten die gleiche Anzahl an Spalten haben. Im folgenden Ausschnitt einer Textdatei enthält die fünfte Zeile nur drei Zahlenwerte. Der dritte Wert des Kanal Lst wird in der NC-Datei als “missing” gespeichert. Drehz; Mom; Lst; B 1/min; Nm; kW; 1249; 55.70; 53.51; 7.27 1243; 48.97; 47.14; 6.14 6730; 24.27; ; 239.1 6763; 15.66; 12.03; 15.09 6740; 8.04 ; 7.75; 5.99 Gültige Text-Datei mit Datum- und Zeitspalte. Textelemente dürfen in Anführungszeichen stehen. Die Anführungszeichen werden entfernt. Bei den Kanalnamen, die ein Leerzeichen enthalten, wird das Leerzeichen durch einen Unterstrich ersetzt. 70 Kapitel 8. Import von Daten UniScript Manual, Release R2016 "Date","Time","Rate","Num Average","Operator ID","State Label","Sample Label","Engine_up ,,V,,,,,"" "27/04/2006","09:59:13.150",1.000000000000000000,1.0,,,,"Otto", "27/04/2006","09:59:13.250",2.000000000000000000,1.1,,,,"Otto", "27/04/2006","09:59:13.350",3.000000000000000000,1.2,,,,"Otto", "27/04/2006","09:59:13.450",4.000000000000000000,1.3,,,,"Otto", 8.3 UTX-Datendatei-Format Im Folgenden wird ein einfach zu erzeugendes und gut lesbares Datendatei-Format für UniPlot beschrieben (UTX-Format). Vorteile • Leicht mit allen Programmiersprachen zu erzeugen. • Die Datendatei kann mit einem Texteditor oder einem Tabellenkalkulationsprogramm per Hand erzeugt oder geändert werden. • Vorhandene spaltenweise angeordnete Datendateien können einfach in dieses Format umgewandelt werden. Nachteile • Alle Kanäle (Spalten) der Datei müssen die gleiche Anzahl an Messpunkten haben. 8.3.1 Aufbau des Formats Die Datei besteht aus zwei Blöcken, dem Beschreibungsblock und dem Datenblock. Die Datei beginnt mit dem Block, der die beschreibenden Daten enthält. Der Block beginnt mit dem Schlüsselwort UXX-BEGIN (Groß-/Kleinschreibung wird ignoriert) und endet mit dem Schlüsselwort UXX-END. Dem Beschreibungsblock folgt der Datenblock. Der Datenblock besteht entweder aus spaltenweise angeordneten Daten im Text-Format (ASCII-Format). Beispiel 1 Die folgende Beispieldatei enthält zwei Kanäle: den Kanal N (Drehzahl) in der ersten Spalte und den Kanal Be (spez. Kraftstoffverbrauch) in der zweiten Spalte. Die beiden Spalten sind durch ein Trennzeichen getrennt. Im Kopf der Datei sind 3 Attribute angegeben: Bearbeiter, Kanalname und Einheit. Kanalname und Einheit sind dabei sogenannte Kanalattribute, d. h. für jeden Kanal in der Datei ist ein Wert vorhanden. $1 bei Kanalname bedeutet, daß sich die Werte des Attributs eine Zeile hinter dem Kopf befinden. Kanalname hat also die beiden Werte N und Be. Entsprechend hat das Attribut Einheit die beiden Werte 1/min und g/kWh. Das Attribut "Bearbeiter" ist ein globales Attribut mit dem Wert "Peter Müller". Es bezieht sich auf die ganze Datei. UXX-BEGIN Spaltentrennzeichen= " " Bearbeiter= Peter Müller Kanalname= $1 Einheit= $2 UXX-END N Be 8.3. UTX-Datendatei-Format 71 UniScript Manual, Release R2016 1/min 528,000 474,300 456,000 g/kWh 1096,00 1076,00 1052,00 Beispiel 2 UniPlot kann die Dateien auch dann lesen, wenn sie mit dem Tabellenkalkulationsprogramm Excel erstellt worden sind (alle Formate inklusive Excel 2007). In diesem Fall sollte das Wort UXXBEGIN in der Zelle A1, die Attributnamen in der ersten Spalte und die Attributwerte in der zweiten Spalte stehen. 1 2 3 4 5 6 7 8 9 10 A UXX-BEGIN Bearbeiter= Kanalname= Einheit= UXX-END N 1/min B Peter Müller $1 $2 Be G/kWh 528,0000 474,0000 456,0000 1096,0000 1076,0000 1052,0000 Beispiel 3 Die Daten sind in Zeilen anstatt in Spalten angeordnet. In diesem Fall muss die Datei das Attribut uxx-transposed = 1 enthalten. UXX-BEGIN Spaltentrennzeichen= " " Bearbeiter= Peter Müller Kanalname= $1 Einheit= $2 uxx-transposed = 1 UXX-END N 1/min 528,000 474,300 Be g/kWh 1096,00 1076,00 456,000 1052,00 8.3.2 Der Beschreibungsblock Der Beschreibungsblock besteht aus globalen Attributen (die sich auf die gesamte Datei beziehen) und Kanal-Attributen. Globale Attribute haben die Form von Anweisungen: NAME = WERT oder NAME = WERTELISTE Dabei kann NAME eine bis zu 40 Zeichen lange Zeichenkette sein, die mit einem Unterstrich "_" oder einem Buchstaben beginnt, dem bis zu 39 Buchstaben, Unterstriche und Ziffern folgen können. Sonderzeichen und Umlaute sind in NAME nicht erlaubt. Die Zeichenfolgen UXX-BEGIN und UXX-END sind als Namen nicht erlaubt. WERT kann entweder eine ganze Zahl (Integer), eine Gleitkommazahl (Real) oder eine Zeichenkette (String) sein. Integer Eine ganze Zahl hat die Form 123 oder -123. Falls in der Zahl ein Dezimaltrennzeichen vorhanden ist, wird die Zahl als Real-Zahl gespeichert. Z. B. wird 1.23e2 (= 123) als Real-Zahl gespeichert. Real 72 Kapitel 8. Import von Daten UniScript Manual, Release R2016 Eine Gleitkommazahl (Real-Zahl) hat die Form 12.3e1, 123. oder 123.0. Als Dezimaltrennzeichen kann ein Punkt oder ein Komma verwendet werden. Falls die Dateien im deutschsprachigen Raum mit dem Tabellenkalkulationsprogramm Excel bearbeitet werden sollen, empfiehlt sich die Verwendung des Kommas als Dezimaltrennzeichen. String Falls der Attributwert weder eine Integerzahl noch eine Real- Zahl ist, wird der Attributwert als String gespeichert. Als Zeichensatz sollte der Windows ANSI-Zeichensatz verwendet werden (siehe Tabelle im Anhang). Datum= Motor= 12.06.1998 12AT29 Zeichenketten können in Anführungszeichen eingeschlossen werden. WERTELISTE ist eine Folge von Werten eines Datentyps (entweder Integer, Real oder String), die durch Trennzeichen (standardmäßig das Tabulatorzeichen) getrennt sind. Parameter= 12 Range= 1 24576 24 22,5 Kanalattribute Die Attribute für die Kanäle haben die Form einer in eckigen Klammern eingeschlossenen Liste von Werten, wobei die Werte durch Trennzeichen (standardmäßig das Tabulatorzeichen) getrennt werden. NAME = [WERT WERT WERT] Dabei muss für jeden Kanal ein WERT vorhanden sein. Die Reihenfolge der Werte entspricht der Reihenfolge der Kanäle im Datenblock. Alle Werte müssen vom gleichen Typ sein, d.h. Zahlen und Zeichenketten dürfen für ein Attribut nicht gemixt werden. Anstatt die Attribute für die Kanäle in der Form NAME = [ WERTELISTE ] zu schreiben, können die Kanalattribute alternativ in der Form NAME = $ZEILENNUMMER geschrieben werden. Das bedeutet, das sich die Attributwerte des Attributs NAME in der Zeile ZEILENNUMMER hinter dem UXX-END des Beschreibungsblocks befinden. Die Dateien können dann einfacher mit Tabellenkalkulationsprogrammen bearbeitet werden. Falls der Datenblock binär ist, müssen die Kanalattribute in der ersten Form geschrieben werden. 8.3.3 Fortsetzungszeilen Attribute können über mehrere Zeilen geschrieben werden. Dazu wird mit dem kaufmännischen UndZeichen "&" eine Fortsetzungszeile eingeleitet. Das Und-Zeichen darf nur hinter dem Gleichheitszeichen oder dem Spaltentrennzeichen stehen. Beispiel: Kanalname = [N & Mom & Leist] Entspricht 8.3. UTX-Datendatei-Format 73 UniScript Manual, Release R2016 Kanalname = [N Mom Leist] Fortsetzungszeilen sind nur im Beschreibungsblock und nicht im Datenblock zulässig. 8.3.4 Kommentare Der Beschreibungsblock kann Kommentare enthalten. Kommentare werden durch das Zeichen "#" eingeleitet. Dabei muß das Kommentarzeichen das erste Zeichen der Zeile sein. Ab UniPlot 5.12.0 können auch Datenzeilen mit dem Zeichen "#" auskommentiert werden. Die Zahlenwerte der Zeile werden in der NC-Datei dann als missing_value gespeichert. 8.3.5 Der Datenblock Der Datenblock wird als Textblock formatiert und kann mit einem Texteditor bearbeitet werden. 8.3.6 Der Text-Datenblock Der Datenblock kann beliebig viele Zeilen (Datenpunkte) haben. Eine Zeile kann beliebig lang sein. Die Spalten sind standardmässig durch Tabulatorzeichen getrennt. Falls ein anderes Trennzeichen verwendet werden soll, muss im Beschreibungsblock das globale Attribut Spaltentrennzeichen vorhanden sein, z. B.: Spaltentrennzeichen = ";" Fortsetzungszeilen und Kommentare sind im Datenblock nicht erlaubt. Leerzeilen werden ignoriert. Kanäle mit Datum/Zeit können in der Form "25.01.1996 8:30:00", "25.01.1996" (nur Datum) oder "8:30:00" (nur Zeit) eingegeben werden. 8.3.7 Die Standard-Attribute Die folgenden Attribute sind für UniPlot reserviert, das heißt diese Attribute haben in UniPlot eine definierte Bedeutung: globale Attribute Deutsch Spaltentrennzeichen Schema uxx-transposed Englisch Columnseparator Scheme uxx-transposed Kanalattribute Deutsch Kanalname Einheit Datentyp Englisch Channelname Unit Datatype Bei den Standardattributen wird nicht zwischen Groß-/Kleinschreibung und Deutsch/Englisch unterschieden (Datentyp, datentyp, datatype beschreiben das selbe Attribut). 74 Kapitel 8. Import von Daten UniScript Manual, Release R2016 8.3.8 uxx-transposed Falls die Daten in Zeilen anstatt in Spalten angeordnet sind, kann man dies dem Import-Filter über das Attribut uxx-transposed = 1 mitteilen. Falls die Daten in Spalten angeordnet sind, muss das Attribut nicht angegeben werden (Default = 0). UXX-BEGIN Spaltentrennzeichen= " " Bearbeiter= Peter Müller Kanalname= $1 Einheit= $2 uxx-transposed = 1 UXX-END N 1/min 528,000 474,300 Be g/kWh 1096,00 1076,00 456,000 1052,00 8.3.9 Kanalname (channelname) Dieses Attribut muss vorhanden sein. Die Namen sollten nach den gleichen Regeln wie der Attributname aufgebaut sein, d.h. mit einem Unterstrich oder einem Buchstaben beginnen, dem bis zu 39 Unterstriche, Buchstaben oder Ziffern folgen. In den Namen sollten keine Leerzeichen und Umlaute oder Sonderzeichen vorhanden sein. Kanalname= [N Mom beewg] Anstatt die Attribute für die Kanäle in der Form Kanalname = [ WERTELISTE ] zu schreiben, können die Kanalattribute alternativ in der Form Kanalname = $ZEILENNUMMER geschrieben werden. Das bedeutet, das sich die Kanalnamen in der Zeile ZEILENNUMMER hinter dem UXX-END des Beschreibungsblocks befinden. Die Dateien können dann einfacher mit Tabellenkalkulationsprogrammen bearbeitet werden. Falls der Datenblock binär ist, müssen die Kanalattribute in der ersten Form geschrieben werden. Falls die Kanalname in der Form Name [unit] definiert sind und ansonsten keine Einheiten vorhanden sind, wird der Kanalname in Name und Einheit zerlegt. Aus dem N [1/min] wird der Kanalnamen N und die Einheit 1/min erzeugt. Das Zerlegen der Kanalnamen in Name und Einheit kann mit dem folgenden Aufruf im Kommandofenster abgeschaltet werden. WriteProfileInt("Settings", "UTX_Split_Name_Unit", 0) 8.3.10 Spaltentrennzeichen (columnseparator) Falls das Attribut Spaltentrennzeichen nicht angegeben wird, müssen die Spalten durch ein Tabulatorzeichen getrennt sein. Mögliche Trennzeichen sind: Zeichen Bedeutung 8.3. UTX-Datendatei-Format 75 UniScript Manual, Release R2016 “\t” (Defaultwert) Ein einzelnes Tabulatorzeichen (backslash + t). Mehrere zusammenhängende Leer- und Tabulatorzeichen. Ein einzelnes Leerzeichen (backslash + b). Ein Semikolon. Ein Komma. Ein einzelnes, beliebiges Zeichen. ”“ “\b” ”;” ”,” “x” Spaltentrennzeichen= ";" Falls als Spaltentrennzeichen ” ” verwendet wird, sollten alle Spalten vollständig sein. Aufeinander folgende Leer- und Tabulatorzeichen werden bei diesem Trennzeichen wie ein Trennzeichen behandelt. Falls also ein Wert in der Spalte fehlen würde, würde der Wert des nächsten Kanals eingetragen. 8.3.11 Einheit (unit) Einheit des Kanals. Einheit= [1/min Nm g/kWh] 8.3.12 Datentyp (datatype) Datentyp beschreibt den Datentyp des Kanals. Das Attribut legt fest, wie die Werte konvertiert werden. Falls das Attribut nicht vorhanden ist, werden die Kanäle als "real4" (float) gespeichert. Bei dem Attribut Datentyp sind folgende Werte zulässig: Datentyp int1 uint1 int2 uint2 int4 uint4 real4 real8 stringNNN date time datetime Datentyp= [date Bedeutung Ein-Byte-Integer mit Vorzeichen Ein-Byte-Integer ohne Vorzeichen Zwei-Byte-Integer mit Vorzeichen Zwei-Byte-Integer ohne Vorzeichen Vier-Byte-Integer mit Vorzeichen Vier-Byte-Integer ohne Vorzeichen Gleitkommazahl (4 Bytes). Doppelt genaue Gleitkommazahl (8 Bytes). Zeichenkette mit Längenangabe. NNN steht für eine ganze Zahl im Bereich 1 bis 255, z. B. string80. Datum (8 Bytes) Zeit (8 Bytes) Datum und Zeit (8 Bytes) real4 string12] Die Liste muss nicht vollständig sein. Falls beispielsweise der zweite Kanal ein Zeitkanal ist, müssen nur die ersten beiden Datentypen angegeben werden. Alle nachfolgenden Kanäle werden als "real" gespeichert. 76 Kapitel 8. Import von Daten UniScript Manual, Release R2016 8.3.13 Schema (scheme) Schema ist eine Zeichenkette, die sich aus dem Firmennamen und/oder Programmnamen des erzeugenden Programms zusammensetzt. Zusätzlich sollte noch eine Versionsnummer angehängt werden. Falls das Programm so geändert wird, das zusätzliche Attribute geschrieben werden, oder sich die Bedeutung der Attribute ändert, sollte die Versionsnummer hochgezählt werden. Beispiel: (Firmenname AVM, Prüfstandsprogramm P13, Version 1) Schema= AVM P13-1 8.3.14 Kurzbeschreibung zur Erzeugung des Datenformats Um Ihre Daten im UTX-Format zu speichern, gehen Sie folgendermaßen vor: • Erzeugen Sie eine Datei mit der Dateinamenerweiterung .utx oder alternativ .txt. • Schreiben Sie die Zeile UXX-BEGIN gefolgt von den beiden Zeilentrennzeichen 0x0d und 0x0a (neue Zeile). • (Optional) Schreiben Sie eine oder mehrere Kommentarzeilen aus denen hervorgeht, welches Programm die Datei erzeugt hat. • Schreiben Sie das globale Attribut Schema, z. B.: Schema= "AKT-W15" • Schreiben Sie Ihre eigenen globalen Attribute, z. B.: Bearbeiter= Bohrung= Luftdruck= MinMax= "Herr Müller" 86,0 "1013 mbar" 0 236,0 • Schreiben Sie die Kanalattribute "Kanalname", "Einheit" und "Datentyp": Kanalname= Einheit= Datentyp= $1 $2 $3 • Schreiben Sie Ihre eigenen Kanalattribute. • Schreiben Sie die Zeichenkette UXX-END gefolgt von den beiden Zeilentrennzeichen 0x0d und 0x0a. • Schreiben Sie die Werte der Kanalattribute (jeweils durch ein Tabulatorzeichen getrennt). N 1/min real8 Mom Nm real8 Beewg g/kWh real8 • Schreiben Sie die Daten der Kanäle (jeweils durch ein Tabulatorzeichen getrennt). Verwenden Sie als Dezimaltrennzeichen entweder das Komma oder den Punkt. 1000,2 1501,8 2004,2 32,23 42,45 48,44 267,6 284,5 296,3 8.3. UTX-Datendatei-Format 77 UniScript Manual, Release R2016 8.3.15 Import von eigenen Text-Dateien mit Hilfe des UTX-Filters. Der einfache Text-Import-Filter erwartet, dass die Datenmatrix vollständig ist. Es dürfen also keine Messwerte fehlen. Vielfach kommt es jedoch vor, dass Messpunkte ungültig sind. Die Punkte werden dann beispielsweise durch ** markiert. Mit Hilfe des UTX-Filters können für solche Text-Dateien relativ einfach eigene Filter mit Hilfe von UniScript geschrieben werden. Es folgt für die folgende einfache Text-Datei ein Beispiel: N 1/min 1000,2 1501,8 2004,2 Mom Nm 32,23 42,45 48,44 Beewg g/kWh 267,6 ** 296,3 NOx ppm 990 1100 1200 ADDIN_AddToUI(ADDIN_FILE_IMPORT, "Prüfstands-Dateien (*.ascii)|*.ascii|", "_My_Import"); // Prüft ob Dateiname mit .ascii endet def IsFileMyImport_ASCII(ssFileName) { if (strlower(SplitPath(ssFileName)[4]) == ".ascii") { return TRUE; } return FALSE; } // Liefert den Header für den UTX-Filter def _My_GetHeader() { ssHeader = "[[UXX-BEGIN Creator= Prüfstands-ASCII-FILTER Kanalname= $1 Einheit= $2 UXX-END ]]"; return ssHeader; } def _My_Import(ssFileName) { if (IsFileMyImport_ASCII(ssFileName) == FALSE) { // Dateiname endet nicht mit .ascii return ""; } if (IsFunctionLoaded("UXX_Import") == FALSE) { MessageBoxError("Datei kann nicht importiert werden, da der UTX-Filter nicht gel "Wählen Sie Extras=Addin-Manager und markieren Sie das Addin UTX-Filter. return "#IMPORTERROR#"; } // Schreibt den Header in eine Temp-Datei, // die am Ende der Funktion wieder gelöscht wird. ssHeader = _My_GetHeader(); ssTempFile = GetTempFileName(); fp = fopen(ssTempFile, "wt"); if (fp == 0) { return "#IMPORTERROR#"; } fwrite(fp, "char", ssHeader); fclose(fp); // Aufruf des UTX-Filters: ssRet = UXX_Import([ssFileName, ssTempFile]); 78 Kapitel 8. Import von Daten UniScript Manual, Release R2016 // Temp-Datei löschen: DeleteFile(ssTempFile); return ssRet; } Das Beispiel verwendet den UTX-Filter, um die Messdaten zu importieren. Der UTX-Filter wird mit dem Funktion-Aufruf UXX_Import() gestartet. Der Funktion werden zwei Dateinamen als Vektor übergeben. Der erste Name ist der Dateiname der Messdaten-Datei. Der zweite Dateiname mit den Kopfdaten, wie sie vom UTX-Filter erwartet werden. In diesem Fall wird der Kopf in eine temporäre Datei geschrieben, die am Ende der Funktion wieder gelöscht wird. Der Kopf wird in der Funktion _My_GetHeader() definiert. Man könnte den Kopf auch direkt in eine Datei schreiben, und den Dateinamen an die Funktion UXX_Import() übergeben. Im Kopf wird festgelegt, wo sich die Kanalnamen und Einheiten in der Messdatei stehen. Der Programmtext kann in einer IC-Datei im autolaod-Verzeichnis von UniPlot gespeichert werden. Der Dateiname muss mit .ic enden, beispielsweise my_import.ic. Beim Start von UniPlot werden alle IC-Dateien aus dem autolaod-Verzeichnis automatisch geladen. 8.4 Import von 3D-Matrix-Daten Um eine Datenmatrix aus einer Text- oder Excel-Datei zu laden, gehen Sie wie folgt vor: • Wählen Sie die Funktion dateiweitere-datei-funktionen. • Wählen Sie aus dem Listenfeld die Funktion Matrix laden. • Wählen Sie die Datei mit der Datenmatrix im Datei-Öffnen-Dialog. • Wurde eine gültige Datei mit einer Zahlenmatrix geladen, wird ein Dialogfeld angezeigt, in dem die Koordinaten der Eckpunkte der Matrix in der x/y-Ebene eingegeben werden müssen. Die Spalten- und Zeilenanzahl der Matrix muss zwischen 5 und 100 liegen. Die Matrix muss nicht quadratisch sein. Weitere Informationen über das Matrix-Format entnehmen Sie bitte der UniPlot-Referenz (siehe dateiweitere-datei-funktionen3d-daten-matrix-laden). 8.5 Definition der Volllastlinie 8.5.1 Automatische Ermittlung der nicht-konvexen Hülle Falls die Messdaten in Form von Kennfeldschnitten vorliegen, z. B. in Form von Drehzahlschnitten, kann die nicht-konvexe Hülle automatisch ermittelt werden. Die Messdaten müssen dazu bei etwa konstanten x-Koordinaten gemessen worden sein. Für die Abweichung der x-Koordinaten von einem exakten Wert wird eine Toleranz vorgegeben. Das Programm sucht für jeden Schnitt den Wert mit der minimalen bzw. maximalen y-Koordinate. Aus den minimalen y-Koordinaten wird die Schleppkurve, aus den maximalen y-Koordinaten wird die Volllastlinie gebildet. 8.4. Import von 3D-Matrix-Daten 79 UniScript Manual, Release R2016 Tolerance 160 140 290 302 301 297 298 297 299 269 272 271 272 279 284 283 274 278 288 293 300 308 326 297 120 320 Torque [Nm] 100 303 299 285 297 295 295 287 293 296 308 312 322 328 309 314 318 316 311 318 314 325 340 350 386 375 358 370 359 373 355 358 367 379 462 435 517 465 476 460 463 453 457 477 493 1003 942 1011 937 942 950 965 1023 1024 1062 1101 80 60 40 20 0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500 rpm Um die Funktion auszuführen, markieren Sie ein Kennfeld und wählen Sie die Funktion daten-weiteredaten-funktionen-3d. Aus der folgenden Liste wählen Sie die Funktion Hüllkurve bestimmen. Im folgenden Dialogfeld können Sie festlegen, wie die Hüllkurve beschriftet werden soll. Es besteht die Auswahl zwischen der Beschriftung jedes Datenpunkts der Hülle oder jedes zweiten Punktes. Sie können die Beschriftung auch abschalten. Die x-Klassenbreite legt den Toleranzbereich fest, in dem die x-Koordinaten eines Kennfeldschnittes liegen sollen. Die Hülle wird als Benutzerhülle im Datensatz gespeichert. UniPlot berechnet beim Laden von 3D-Daten automatisch eine konvexe Hülle. Die Volllastkurve ist dabei der “nördlichste” Teil der konvexen Hülle. Im allgemeinen ist die Volllastkurve jedoch nicht konvex. Soll die wahre Volllastkurve dargestellt werden, muss die Datei, aus der die Daten importiert werden, mit einem Editor oder einem Tabellenkalkulationsprogramm bearbeitet werden. Dazu wird in der letzten Spalte ein Kennbuchstabe zur Markierung der Datenpunkte eingegeben. Für die Markierung der Volllastkurve stehen die folgenden Kennbuchstaben zur Verfügung: A Erster Punkt der Volllastkurve. Der Punkt muss zur automatisch berechneten Volllastkurve (“nördlichster” Teil der konvexen Hülle) gehören und eine kleinere x-Koordinate als der Endpunkt E haben. V Volllast-Punkt. E Letzter Punkt der Volllastkurve. Der Punkt muss zur automatisch berechneten Volllastkurve (“nördlichster” Teil der konvexen Hülle) gehören und eine größere x-Koordinate als der Anfangspunkt A haben. Wird der Kennbuchstabe als Kleinbuchstabe (a, v, e) eingegeben, wird der entsprechende Datenpunkt 80 Kapitel 8. Import von Daten UniScript Manual, Release R2016 der Volllastkurve nicht beschriftet. Dadurch kann vermieden werden, daß sich Beschriftungen, die zu dicht beieinander liegen, überdecken. Vorgehensweise Für die Erstellung der Volllastlinie empfiehlt sich folgende Vorgehensweise: • Laden Sie aus der Datei einen Kennfelddatensatz. • Lassen Sie von UniPlot die Volllastlinie als Polygonzug darstellen. Wählen Sie dazu im Menü Daten den Befehl 2 1/2D-Isolinien. Wählen Sie die Seite Isolinien und wählen Sie für die Verbindung der Isolinienpunkte die Optionsschaltfläche Polygon. Wählen Sie danach die Seite Marken und schalten Sie die Streu-Diagramm-Darstellung ein. • Laden Sie die Datei mit den Kennfelddaten in ein Programm, mit dem Sie die Daten editieren können. Falls die Daten im ASCII-Format vorliegen, können Sie dazu den Editor von UniPlot verwenden. • Wechseln Sie in das Programm UniPlot. 160 140 290 302 297 298 272 271 272 299 279 308 269 284 283 274 278 288 293 300 297 326 297 120 320 EWGMOM [Nm] 301 100 303 299 285 297 295 295 287 293 296 308 312 322 328 309 314 318 316 311 318 314 325 340 350 386 375 358 370 359 373 355 358 367 379 462 435 517 465 476 460 463 453 457 477 493 1003 942 1011 937 942 950 965 1023 1024 1062 1101 80 60 40 20 0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500 N [1/min] Sie erkennen in obiger Abbildung, daß die Punkte mit den z-Werten 320, 297, 301, 298, 299, 308, 326 zur vom Programm ermittelten Volllastlinie gehören. • Sie können anhand des Streudiagramms und der von UniPlot bestimmten Volllastlinie sehr leicht die wahre Volllastlinie bestimmen. Markieren Sie dazu wie oben beschrieben den Anfangspunkt und den Endpunkt sowie alle weiteren zur Volllastlinie gehörenden Messpunkte, falls sie nicht schon zur von UniPlot berechneten Volllastkurve gehören. In der folgenden Abbildung wurde die Zeile mit dem z-Wert 320 mit einem A markiert und die Zeilen mit den z-Werten 297, 302, 290, 301, 297, 298, 297, 299, 308 mit einem V. Die Zeile mit dem z-Wert 326 wurde mit einem E markiert. 8.5. Definition der Volllastlinie 81 UniScript Manual, Release R2016 160 140 290 302 297 298 272 271 272 299 279 308 269 284 283 274 278 288 293 300 297 326 297 120 320 EWGMOM [Nm] 301 100 303 299 285 297 295 295 287 293 296 308 312 322 328 309 314 318 316 311 318 314 325 340 350 386 375 358 370 359 373 355 358 367 379 462 435 517 465 476 460 463 453 457 477 493 1003 942 1011 937 942 950 965 1023 1024 1062 1101 80 60 40 20 0 500 1000 1500 2000 2500 3000 3500 4000 4500 5000 5500 N [1/min] Speichern Sie die Änderungen und schließen die Datei. Um nun den Datensatz mit der korrigierten Volllastlinie zu erzeugen, müssen die Daten erneut importiert werden. Sie erhalten die obige Abbildung. 8.5.2 Freie Definition einer Datenhülle UniPlot ermöglicht das Einlesen einer beliebig geformten Datenhülle, die auch Inseln enthalten kann. Die Hülle wird für die graphische Ausgabe des Isolinien-Diagramms und der 3D-Oberfläche verwendet. Beim Isolinien-Diagramm werden die Isolinien nur innerhalb der Datenhülle ausgegeben. Bei der 3DDarstellung werden nur die Facetten der Oberfläche ausgegeben, die vollständig innerhalb der Hülle liegen. Die Datenhülle muss als dreispaltige Text- oder Excel-Datei vorliegen. Die erste und zweite Spalte enthält die x- und y-Koordinaten der Hüllenpunkte und die dritte Spalte enthält einen Kennbuchstaben. Der Kennbuchstabe legt fest, welche Punkte durch Linien verbunden werden sollen. Als Kennbuchstaben sind die folgenden vier Zeichen zulässig: • m ist die Abkürzung für MoveTo. Der Kennbuchstabe bewirkt, daß zu diesem Punkt eine nicht sichtbare Linie gezogen wird. Der Kennbuchstabe kann verwendet werden, um Inseln zu erreichen, ohne das die Verbindungslinie ausgegeben wird. • M hat die gleiche Bedeutung wie m, jedoch wird der Punkt durch den z-Wert des Kennfeldes an dieser Stelle beschriftet. • l ist die Abkürzung für LineTo. Der Kennbuchstabe bewirkt, daß zu diesem Punkt eine sichtbare Linie gezogen wird. • L hat die gleiche Bedeutung wie l, jedoch wird der Punkt durch den z-Wert des Kennfeldes an dieser Stelle beschriftet. Beispiel: Unten sehen Sie die ASCII-Datei der dargestellten Hülle. Die Zahlen in Klammern beziehen sich auf die Nummerierung in der Abbildung. Sie dürfen nicht in die Hüllendatei eingegeben werden. 1500 1600 2000 2000 82 20 30 30 50 m m l l (1) (2) (3) (4) Kapitel 8. Import von Daten UniScript Manual, Release R2016 1600 1600 1500 4500 4500 3000 3000 2500 2500 1500 1500 50 30 20 20 100 100 70 70 100 100 20 l l m l l l l l l l l (5) (6) (7) (8) (9) (10) (11) (12) (13) (14) (15) 14 13 10 9 290 300 290 12 5 320 11 320 4 350 390 6 15 2 3 1, 7 520 390 520 8 8.6 Speichern einer Hülle Um die Hülle eines 3D-Datensatzes zu speichern, markieren Sie den Datensatz und wählen Sie die Funktion dateiweitere-datei-funktionen, Eintrag Hülle speichern. 8.7 Laden der Hülle Um eine Hülle in einen 3D-Datensatz zu laden, markieren Sie den Datensatz und wählen anschließend die Funktion dateiweitere-datei-funktionen. Aus der folgenden Liste wählen Sie den Eintrag Hülle laden. 8.8 Daten-Import in ein Wasserfalldiagramm Für den Import von Daten in ein Wasserfalldiagramm stehen zwei Funktionen zur Auswahl. Die Daten können aus einem Kanal importiert werden, der mehrere Perioden enthält oder es können mehrere Kanäle aus einer Datei geladen werden. 8.8.1 Periodische Daten importieren Um Einzelzyklen aus einem periodischen Signal zu importieren, gehen Sie wie folgt vor: • Wählen Sie die Funktion dateiweitere-datei-funktionen. • Wählen Sie aus dem Listenfeld die Funktion Wasserfall-Einzel-Zyklen-Import. • Wählen Sie die Datei mit der Datenmatrix im Datei-Öffnen-Dialog. • Wurde eine gültige Datei mit einer Zahlenmatrix geladen, wird ein Dialogfeld mit den Kanalnamen, die in der Datei gefunden wurden, angezeigt: 8.6. Speichern einer Hülle 83 UniScript Manual, Release R2016 Wählen Sie einen Kanal aus und klicken Sie dann auf die OK-Schaltfläche. • Im folgenden Dialog können Sie festlegen, welche Zyklen aus der Datei geladen werden sollen: In diesem Beispiel werden die Zyklen 1 bis 10 geladen. Die Zykluslänge beträgt 720 Grad KW. Der erste Punkt in der Datei hat den Kurbelwinkel 0 Grad KW. Die Daten wurden mit einer Kurbelwinkelteilung von 1 Grad KW gemessen. Wenn Sie die Daten eingegeben haben, wählen Sie OK. Die Daten werden geladen und in das markierte Diagramm eingefügt. Nun sollten noch die Achsen wie gewünscht skaliert werden. Die Blickrichtung auf das Wasserfalldiagramm kann mit der Maus eingestellt werden. Dazu positionieren Sie den Mauszeiger in dem gelb ausgefüllten Handle der rechten oberen Ecke und verschieben die Ecke entsprechend. Die Farbfüllung unter den Kurven kann über die Funktion Daten=>Weitere Daten-Funktionen=>Wasserfall-DatenKonfiguration geändert werden. Zylinderdruck [bar] 25 20 15 10 5 0 0 0 1 2 3 4 5 6 7 8 9 100 200 300 400 500 600 700 800 Kurbelwinkel [°KW] 8.8.2 Mehrkanal-Import Um mehrere Kanäle aus einer Messdatendatei zu importieren, wählen Sie die Funktion dateiweiteredatei-funktionenwasserfall-multi-kanal-import und wählen die Datendatei aus. Danach wird der folgende Dialog angezeigt: 84 Kapitel 8. Import von Daten UniScript Manual, Release R2016 Wählen Sie die gewünschten Kanäle aus der Liste aus. Falls erforderlich kann ein Kanal für die XKoordinaten ausgewählt werden. 8.8. Daten-Import in ein Wasserfalldiagramm 85 UniScript Manual, Release R2016 86 Kapitel 8. Import von Daten KAPITEL 9 Automatisierung der Diagrammerstellung Soll eine Reihe von gleichartigen Diagrammen erzeugt werden, empfiehlt es sich, diese Aufgabe zu automatisieren. 9.1 Automatisierte Diagrammerstellung aus Benutzersicht Der Benutzer wählt aus dem Menü Auswertung die gewünschte Auswerte-Kategorie aus: Es wird eine Liste aller vorbereiteten Kennfeldauswertungen angezeigt. Beispiel: 87 UniScript Manual, Release R2016 Der Benutzer wählt eine Auswertung aus. Im nächsten Schritt werden die Datendateien ausgewählt. Dazu wird der folgende Dateiauswahl-Dialog angezeigt: Je nach Vorlage können bis zu 16 Datendateien ausgewählt werden. Nun wird die Vorlage geöffnet und die Messdaten werden in die Diagramme geladen. Je nach Auswertung werden zum Schluss noch Kopfdaten aus einer der Messdatendateien gelesen und in die Vorlage eingetragen. Für Beschriftungen, die während der Erstellung der Auswertung durch den Benutzer eingetragen werden sollen, steht die folgende Dialogmaske zur Verfügung: Die vom Benutzer eingegebenen Texte werden in die Vorlage übertragen. Damit ist die Auswertung abgeschlossen. 88 Kapitel 9. Automatisierung der Diagrammerstellung UniScript Manual, Release R2016 9.2 Erstellung einer Automatisierung Eine Automatisierung besteht aus zwei Dateien: • Die IC-Datei (Scriptdatei) enthält das Programm, das den Ablauf der Automatisierung steuert. Für die Skriptdatei sollte die Dateinamenserweiterung .ic verwendet werden. • Die IPW-Datei (UniPlot-Dokument) enthält die Vorlage mit den Diagrammen, Textfeldern, Logo etc. Für die UniPlot-Datei sollte die Dateinamenserweiterung .ipw verwendet werden. Die IC- und die IPW-Datei sollten zusammen in einem Verzeichnis gespeichert werden. Um die Auswertungen zu laden, wird das Verzeichnis im Dialogfeld extrasweitereoptionen im Textfeld Suchpfad für Automatisierungs Skript-Dateien eingetragen (z. B. c:/programme/uniplot/samples/automate/). Es können mehrere Verzeichnisse angegeben werden. Die einzelnen Verzeichnisse werden durch ein Semikolon getrennt. Wenn das Dialogfeld über die OK-Schaltfläche geschlossen wird, werden die angegebenen Verzeichnisse nach ic-Dateien durchsucht und alle gefundenen ic-Dateien geladen. 9.2.1 Erstellung der Vorlagendatei Die Vorlagendatei ist ein UniPlot-Dokument mit Diagrammen, Logo, Texten und beliebigen anderen Objekten. Die Vorlage wird wie üblich mit UniPlot erstellt. Diagramme Die Achsen der Diagramme werden so skaliert, dass der gewünschte Ausschnitt der Messdaten dargestellt wird. Falls die Messdaten in ihrem Wertebereich stark variieren, kann die Achsenskalierung in der ic-Datei angepasst werden. Jedes Diagramm hat einen Namen. Der Name wird in der Skriptdatei verwendet, um die Daten den Diagrammen zuordnen zu können. Textfelder Die Vorlage kann beliebig viele Texte enthalten, die während der Automatisierung durch Benutzereingaben über ein Dialogfeld oder durch Texte aus einer Messdatendatei ersetzt werden. Dazu werden in die Textobjekte Platzhalter eingetragen. Die Platzhalter sind in $-Zeichen eingeschlossene Zeichenketten, z. B. $Bearbeiter$. Falls für die Platzhalter der Text über ein Dialogfeld eingegeben werden soll, kann zusätzlich eine Nummer vergeben werden, die die Position in der Dialogbox festlegt. 9.2. Erstellung einer Automatisierung 89 UniScript Manual, Release R2016 Beispiel: $(1)Titel$ $(2)Bearbeiter$ Die Nummer muss in runden Klammern eingeschlossen sein und direkt hinter dem ersten Dollar-Zeichen stehen. Soll der Text für den Platzhalter aus einer Messdatendatei gelesen werden, muss die Schreibweise des Platzhalters mit einem globalen Attribut in der Messdatendatei übereinstimmen. In jeder von UniPlot erzeugten NC-Datei befindet sich z. B. das globale Attribut Origin. Das Attribut enthält den Namen der Datendatei, aus der die NC-Datei entstanden ist. Der Platzhalter für dieses Attribut heißt dann $Origin$. Soll auf das Attribut einer Variablen zugegriffen werden, wird der Variablenname, gefolgt von einem Punkt, vor den Attributnamen gesetzt. Beispiel: $Drehz.long_name$. Legenden Die Legende sollte als Feld-Funktion in die Vorlage eingefügt werden. Die Legende ist ein normales Textobjekt (um ein Textobjekt zu erzeugen, wählen Sie den Schalter in der Schalterleiste). Sie können die Legende mit dem Befehl diagrammweitere-diagramm-funktionen, Eintrag Legende für aktives Diagramm erzeugen in Ihre Vorlage einfügen. In der Vorlage können auch Feldfunktionen verwendet werden. Mit Hilfe der Feldfunktionen können z. B. Legenden erzeugt werden, die automatisch angepasst werden oder der Dokumentname in einer Seite angezeigt werden. 9.2.2 Erstellung der Skript-Datei Die Skript-Datei (.ic) wird mit einem Editor erzeugt. In UniPlot wird ein Programm-Editor mit dem Befehl dateineu geöffnet. Der Aufbau einer Automatisierungs-Skript-Datei soll an den folgenden Beispielen erklärt werden. Sie finden die Beispiele im Verzeichnis c:/programme/uniplot/samples/automate/. Um die folgenden Beispiele auszuprobieren, müssen Sie die Automatisierung zuerst laden. Dazu wählen Sie extrasweitere-optionen. Im folgenden Dialog geben Sie den Suchpfad für die Automatisierung ein (z. B. c:/programme/uniPlot/samples/automate/). Wenn Sie die OK-Schaltfläche drücken, sollte nun ein neues Hauptmenü mit dem Namen Auswertung rechts neben dem Datei-Menü angezeigt werden. Wählen Sie den Menüpunkt Auswertung=>Example 1: Kennfeld aus. Im Datendateidialog wählen Sie für dieses Beispiel die Datei mit dem Namen map-data.xls aus. auto_AddToUI("Examples", "Example 1: Map", "RS_Example1"); def RS_Example1() { // map-data.xls ssDir = GetRootDirectory() + "samples/"; auto_SetFileNameDialogInit("*.xls", ssDir); svFile = auto_GetFileNameDialog(1); if (svFile[1] == "DLG_CANCEL") { return; } ssTemplate = GetRootDirectory() + "samples/automate/Example.ipw"; auto_LoadTemplate(ssTemplate); auto_ImportData(svFile[1]); auto_LoadDataset("Diagramm 1", "N", "EWGMOM", "EWGLST"); 90 Kapitel 9. Automatisierung der Diagrammerstellung UniScript Manual, Release R2016 auto_LoadDataset("Diagramm 2", "N", "EWGMOM", "BEEWG"); auto_ScaleAxes(); auto_UpdatePage(); } In einer Skriptdatei wird eine Funktion definiert, die den Ablauf der Automatisierung steuert. In diesem Beispiel ist das die Funktion RS_Example1. Damit der Benutzer diese Funktion auswählen kann, muss sie in die Benutzeroberfläche von UniPlot eingefügt werden. Dazu wird die Funktion auto_AddToUI verwendet (UI für User-Interface). auto_AddToUI(ssCategorie, ssDescription, ssFunctionName) Für jede Automatisierung wird einmal in der Datei die Funktion auto_AddToUI aufgerufen. Mit dieser Funktion wird die Skriptfunktion RS_Example1, registriert, damit Sie später über das Menü Auswertung=>Examples aufgerufen werden kann. Der erste Parameter legt den Namen des Menüs fest, dem die Auswertung zugeordnet werden soll. Der zweite Parameter der Funktion ("Example 1: Kennfeld (Map)") wird im Dialogfeld angezeigt, wenn das Menü Auswertung=>Example 1 auswählt wird. Der dritte Parameter ("RS_Example1") ist der Name der Funktion, die aufgerufen werden soll. Der Name der Funktion ist frei wählbar. Da jeder Funktionsname in UniScript nur einmal verwendet werden kann, muss darauf geachtet werden, dass nicht bereits eine Funktion mit gleichem Namen existiert. Es ist empfehlenswert, den Namen mit einem Präfix beginnen zu lassen, das nicht bereits von UniPlot verwendet wird, beispielsweise RS_ oder ABC_ etc. Mit Hilfe der Funktion what können Sie prüfen, ob in UniScript bereits Funktionen mit diesem Präfix existieren. Öffnen Sie dazu das Kommandofenster und geben den Befehl what("RSB_*") ein. Sie erhalten eine Liste von Funktionen die mit RSB_ beginnen. Die Skriptdatei sollte mit der Vorlagendatei in einem gemeinsamen Verzeichnis gespeichert werden. Beispielsweise im Verzeichnis uniplot/template/auto. Die Automatisierungen können sich in verschiedenen Verzeichnissen befinden. Die Suchverzeichnisse werden im Dialogfeld extrasweitere-optionen im Feld "Suchpfad für Automatisierungs-Skript-Dateien" eingetragen. Die Pfade werden durch ein Semikolon getrennt. In diesen Verzeichnissen sollten sich nur Automatisierungs-Dateien befinden. Beim Start von UniPlot werden die Skriptdateien im angegebenen Pfad gesucht und geöffnet. Die Scriptdateien müssen dazu die Dateinamenerweiterung .ic haben. 9.3 Die wichtigsten Automatisierungs-Funktionen Innerhalb einer Skriptfunktion können alle UniScript-Funktionen aufgerufen werden. Um das Schreiben der Skriptdateien zu vereinfachen stehen für Standardfunktionen, wie das Auswählen von Dateien, Suchen und Ersetzen von Texten und für die Umrechnung von Messdaten vorbereitete Funktionen zur Verfügung. Diese Funktionen sollen nun kurz erklärt werden: auto_GetFileNameDialog Mit dieser Funktion kann der Benutzer Datendateien auswählen. Die Funktion gibt die Namen der ausgewählten Dateien als Vektor zurück. Falls der Benutzer die Schaltfläche Abbruch gewählt hat, steht im 9.3. Die wichtigsten Automatisierungs-Funktionen 91 UniScript Manual, Release R2016 ersten Element des Rückgabevektors die Zeichenkette "DLG_CANCEL". Sollen mehr als 4 Dateien ausgewählt werden, übergibt man die gewünschte Anzahl als ersten Parameter an die Funktion. Der Aufruf auto_GetFileNameDialog(8) gibt dem Benutzer die Möglichkeit, bis zu 8 Dateien auszuwählen. Maximal können 16 Dateien ausgewählt werden. auto_ReplaceTextDialog Die Funktion sucht in der Vorlagenseite nach Texten mit dem Muster $Text$. Werden in der Vorlagenseite in $-Zeichen eingeschlossene Texte gefunden, wird eine Dialogfeld für die Texteingabe angezeigt. Wird der NC-Dateiname (Rückgabewert der Funktion auto_ImportData angegeben, versucht die Funktion den Platzhaltertext in den globalen Attributen oder den Attributen der Variablen der NC-Datei zu finden. Im Dialogfeld werden alle aus der NC-Datei geladenen Texte mit einem Stern markiert. auto_LoadTemplate Die Funktion öffnet eine Vorlage und erzeugt eine Kopie der gewünschten Seite. Die kopierte Seite wird entweder in ein neues Dokument oder in das aktive Dokument eingefügt. Der erste Parameter ist der Name der Vorlage. Falls sich die Vorlage in einem der angegebenen Automatisierungs-SkriptVerzeichnisse befindet, muss der Pfad nicht angegeben werden. Der zweite Parameter ist der Name der Seite. Soll die Seite dem aktiven Dokument zugefügt werden, muss vorher die Funktion auto_AddPage aufgerufen werden (Siehe Beispiel RS_Example4()). Die Funktion liefert die Zugriffsnummer der erzeugten Seite zurück. Diese kann beispielsweise verwendet werden, um die Zugriffsnummer eines Diagrams zu erfragen (PageGetLayerHandle). auto_ImportData Die Funktion öffnet die angegebene Datendatei und konvertiert die Datei in das NC-Format. Der Dateiname wird als Parameter an die Funktion übergeben. Der Name der NC-Datei wird als Returnwert zurückgeliefert. Der NC-Dateiname kann z. B. an die Funktion auto_ReplaceTextDialog übergeben werden. Der Name der erzeugten NC-Datei wird in einer globalen Variablen gespeichert. Die Funktion auto_LoadDataset greift auf diese Variable zu, um Daten aus der NC-Datei in das angegebene Diagramm zu laden. auto_LoadDataset Die Funktion auto_LoadDataset erzeugt einen 1D, 2D oder 3D Datensatz. Der Datensatz wird dem angegebenen Diagram zugefügt. Die Funktion liefert eine Zugriffsnummer (handle) zurück. Die Zugriffsnummer wird verwendet, um auf einen erzeugten Datensatz zugreifen zu können. Um den Datensatzstil festzulegen, stehen mehrere Möglichkeiten zur Verfügung: Der Datensatzstil wird der aktiven Stildatei entnommen. Der erste Datensatz im Diagramm erhält den ersten Stil der Stildatei. Der zweite Datensatz erhält den zweiten Stil usw. Soll ein Datensatz einen bestimmten Stil aus der Stildatei erhalten, kann der Stil des nächsten zu erzeugenden Datensatz mit der Funktion auto_SetDatasetStyle ausgewählt werden. Der Funktion wird entweder der Name des Stils oder die Nummer des Stils übergeben. auto_UpdatePage Die Funktion sollte aufgerufen werden, um die Erzeugung einer Seite abzuschließen. Bitte denken Sie daran, dass Sie zu allen verwendeten Funktionen eine ausführliche Hilfe bekommen können, wenn Sie den Cursor auf einen der Funktionsnamen setzen und die F1-Taste drücken. 92 Kapitel 9. Automatisierung der Diagrammerstellung UniScript Manual, Release R2016 Das folgende Beispiel erzeugt ein Kennfeld mit einer Farblegende: auto_AddToUI("Examples", "Example 2: Map with legend", "RS_Example2"); def RS_Example2() { // map-data.xls ssDir = GetRootDirectory() + "samples/" auto_SetFileNameDialogInit("*.xls", ssDir); svFile = auto_GetFileNameDialog(1); if (svFile[1] == "DLG_CANCEL") { return; } auto_LoadStyleFile(GetRootDirectory() + "samples/automate/style1.icb"); hPage = auto_LoadTemplate(GetRootDirectory() + "samples/automate/Example.ipw"); auto_ImportData(svFile[1]); hData = auto_LoadDataset("Diagramm 1", "N", "EWGMOM", "EWGLST"); auto_xyz_CreateColorLegend(hData) auto_LoadDataset("Diagramm 2", "N", "EWGMOM", "BEEWG"); auto_ReplaceText("$X-Title$", "Dies ist die Y-Achse"); auto_ReplaceTextDialog() auto_UpdatePage(); 9.3. Die wichtigsten Automatisierungs-Funktionen 93 UniScript Manual, Release R2016 } Im folgenden Beispiel können bis zu 3 Datendateien ausgewählt werden: auto_AddToUI("Examples", "Example 3: WOT 1", "RS_Example3"); def RS_Example3() { MessageBox("In the following dialog please select the file VOLLAST.ASC"); auto_SetFileNameDialogInit("*.asc; *.nc", GetRootDirectory() + "samples/"); svFile = auto_GetFileNameDialog(3); if (svFile[1] == "DLG_CANCEL") { return; } NumberOfFiles = len(svFile); hPage = auto_LoadTemplate("example"); for (i in 1:NumberOfFiles) { svFile[i] = auto_ImportData(svFile[i]); auto_LoadDataset("Diagramm 1", "N", "MEFF"); auto_LoadDataset("Diagramm 2", "N", "EWGLST"); } auto_ScaleAxes(); auto_ReplaceTextDialog(svFile[1]); auto_UpdatePage(); } Das folgende Beispiel erzeugt ein Dokument mit 2 Seiten. In der ersten Seite werden die Daten (N, MEFF) und (N, EWGLST) dargestellt, in der zweiten Seite die Daten (N, BEFF) und (N, TOEL1): auto_AddToUI("Examples", "Example 4: WOT 2", "RS_Example4"); def RS_Example4() { MessageBox("In the following dialog please select the file VOLLAST.ASC"); auto_SetFileNameDialogInit("*.asc; *.nc", GetRootDirectory() + "samples/"); svFile = auto_GetFileNameDialog(3); if (svFile[1] == "DLG_CANCEL") { return; } NumberOfFiles = len(svFile); hPage = auto_LoadTemplate("example"); for (i in 1:NumberOfFiles) { svFile[i] = auto_ImportData(svFile[i]); auto_LoadDataset("Diagramm 1", "N", "MEFF"); auto_LoadDataset("Diagramm 2", "N", "EWGLST"); } auto_ScaleAxes(); auto_ReplaceTextDialog(hPage, svFile[1]); auto_UpdatePage(); // Add the next page to the active Page auto_AddPage(); hPage = auto_LoadTemplate("example"); for (i in 1:NumberOfFiles) { svFile[i] = auto_ImportData(svFile[i]); auto_LoadDataset("Diagramm 1", "N", "BEFF"); auto_LoadDataset("Diagramm 2", "N", "TOEL1"); } auto_ScaleAxes(); auto_ReplaceTextDialog(hPage, svFile[1]); auto_UpdatePage(); 94 Kapitel 9. Automatisierung der Diagrammerstellung UniScript Manual, Release R2016 } Das folgende Beispiel zeigt, wie der Mittelwert zweier Kurven berechnet werden kann und wie zwei Datensätze dividiert werden können: auto_AddToUI("Examples", "Example 5: WOT with calculations", "RS_Example5"); def RS_Example5() { MessageBox("In the following dialog please select the file VOLLAST.ASC"); auto_SetFileNameDialogInit("*.asc; *.nc", GetRootDirectory() + "samples/"); svFile = auto_GetFileNameDialog(2); if (svFile[1] == "DLG_CANCEL") { return; } NumberOfFiles = len(svFile); if (NumberOfFiles != 2) { MessageBox("Es müssen 2 Dateien ausgewählt werden"); return FALSE; } hPage = auto_LoadTemplate("example"); svFile[1] = auto_ImportData(svFile[1]); hData1 = auto_LoadDataset("Diagramm 1", "N", "MEFF"); svFile[2] = auto_ImportData(svFile[2]); hData2 = auto_LoadDataset("Diagramm 1", "N", "MEFF"); // Zugriffsnummer von Diagramm 2 erfragen hLayer2 = PageGetLayerHandle(hPage, "Diagramm 2"); // Mittelwert-Datensatz in Diagramm von hData1 einfügen. auto_xy_Mean(hData1, hData2); // Div-Datensatz in Diagramm von "Diagramm 2" einfügen. auto_xy_Div([hData1, hLayer2], hData2); // Alle Achsen neu skalieren auto_ScaleAxes(); auto_ReplaceTextDialog(hPage, svFile[1]); auto_UpdatePage(); } Die Funktion auto_xy_Mean berechnet den Mittelwert zweier Datensätze (Kurven). Die Datensätze müssen aufsteigende x-Koordinaten besitzen und sich in x-Richtung überlappen. Die Stützstellen der Datensätze müssen nicht identisch sein. Die Datensätze werden über ihre Zugriffsnummern an die Funktion übergeben. Die Zugriffsnummer wird von der Funktion auto_LoadDataset zurückgeliefert. Die Funktion auto_xy_Mean liefert, wie die Funktion auto_LoadDataset, die Zugriffsnummer des erzeugten Datensatzes zurück. Falls der Datensatz nicht erzeugt werden kann, liefert die Funktion den Wert 0 zurück. Um einen Datensatz aus einem Diagram zu löschen wird die Funktion XYDestroy bzw. XYZDestroy aufgerufen. Die folgende Funktion RS_AddMyInfoBox(hPage) lädt ein Schriftfeld mit dem Seitennamen ssPageName aus der Datei ssSchriftfeldVorlage in die Seite mit dem Handle hPage. Der Handle wird von der Funktion auto_LoadTemplate zurückgeliefert. def RS_AddMyInfoBox(hPage, ssSchriftfeldVorlage, ssPageName) { AddExternDocPage(hPage, ssSchriftfeldVorlage, ssPageName); 9.3. Die wichtigsten Automatisierungs-Funktionen 95 UniScript Manual, Release R2016 auto_SetTemplate(hPage); } Der Aufruf der Funktion kann unmittelbar nach der Funktion auto_LoadTemplate erfolgen. Das folgende Beispiel lädt das Schriftfeld “Info-Box1” aus der Datei uniplot/template/info_g.ipw. Die Funktion GetRootDirectory liefert das Verzeichnis von UniPlot zurück, z. B. c:/programme/uniplot/. ssSchriftfeldVorlage = GetRootDirectory() + "template/info_g.ipw"; ssPageName = "Info-Box1"; hPage = LoadTemplate("example"); RS_AddMyInfoBox(hPage, ssSchriftfeldVorlage, ssPageName); 96 Kapitel 9. Automatisierung der Diagrammerstellung KAPITEL 10 Lizenzbestimmungen 10.1 UniPlot Gegenstand der Bestimmungen ist die Erteilung einer nicht ausschließlichen Lizenz für die Nutzung des Programms UniPlot für Windows. NUTZUNG: (1.) Der Käufer darf das Programm nur auf einem Rechner nutzen. Eine Vervielfältigung des Programms ist nur zur Datensicherung gestattet. (2.) Der Käufer kann die Rechte aus dieser Lizenzvereinbarung auf Dauer auf andere übertragen, vorausgesetzt der erwerbende Dritte erklärt sich mit der Weitergeltung der vorliegenden Vertragsbedingungen auch ihm gegenüber einverstanden. Voraussetzung ist ferner, das der Käufer alle erhaltenen Unterlagen einschließlich aller Updates sowie der Sicherungskopien weitergibt. (3.) Einzelne Exemplare der Dokumentation können gegen eine Schutzgebühr auch ohne Kauf des Programms erworben werden. (4.) Falls es sich bei dem Programm um eine Test-Version handelt, darf das Programm nur zu Testzwecken verwendet werden. Die mit der Testversion erzeugten Dokumente dürfen nicht an Dritte weitergegeben werden. DEKOMPILIERUNG UND PROGRAMMÄNDERUNGEN: (1.) Die Rückübersetzung des überlassenen Programmcodes in andere Codeformen (Dekompilierung) sowie sonstige Arten der Rückerschließung der verschiedenen Herstellungsstufen der Software (Reverse-Engineering) sind nicht zulässig. (2.) Urhebervermerke, Seriennummern sowie sonstige der Programmidentifikation dienende Merkmale dürfen auf keinen Fall entfernt oder verändert werden. GEWÄHRLEISTUNG: (1.) Auf Fehler im Programm wird eine Gewährleistung von 6 Monaten übernommen. Ein Fehler liegt vor, wenn die Funktionen des Programms nicht mit den Funktionsbeschreibungen der Programmdokumentation übereinstimmen. (2.) Eine Haftung für Folgeschäden oder für Schäden, die durch unsachgemäßen Gebrauch des Programms hervorgerufen werden, ist ausgeschlossen. Auf jeden Fall ist eine Haftung auf den Kaufpreis des Programms beschränkt. SONSTIGES: (1.) Änderungen und Ergänzungen des Lizenzbestimmungen sind schriftlich zu vereinbaren. (2.) Sind einzelne Bedingungen der Lizenzbestimmungen unwirksam, so wird dadurch die Wirksamkeit der übrigen Bedingungen nicht berührt. (3.) Gerichtsstand ist Berlin. Uniplot Software GmbH, D-15834 Rangsdorf 97 UniScript Manual, Release R2016 10.2 netCDF Copyright 1993-2002 University Corporation for Atmospheric Research/Unidata Portions of this software were developed by the Unidata Program at the University Corporation for Atmospheric Research. Access and use of this software shall impose the following obligations and understandings on the user. The user is granted the right, without any fee or cost, to use, copy, modify, alter, enhance and distribute this software, and any derivative works thereof, and its supporting documentation for any purpose whatsoever, provided that this entire notice appears in all copies of the software, derivative works and supporting documentation. Further, UCAR requests that the user credit UCAR/Unidata in any publications that result from the use of this software or in any product that includes this software. The names UCAR and/or Unidata, however, may not be used in any advertising or publicity to endorse or promote any products or commercial entity unless specific written permission is obtained from UCAR/Unidata. The user also understands that UCAR/Unidata is not obligated to provide the user with any support, consulting, training or assistance of any kind with regard to the use, operation and performance of this software nor to provide the user with any updates, revisions, new versions or "bug fixes." THIS SOFTWARE IS PROVIDED BY UCAR/UNIDATA "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL UCAR/UNIDATA BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE ACCESS, USE OR PERFORMANCE OF THIS SOFTWARE. 10.3 Scintilla License for Scintilla and SciTE Copyright 1998-2002 by Neil Hodgson <[email protected]> All Rights Reserved Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright notice appear in all copies and that both that copyright notice and this permission notice appear in supporting documentation. NEIL HODGSON DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL NEIL HODGSON BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 98 Kapitel 10. Lizenzbestimmungen UniScript Manual, Release R2016 10.4 VTK Copyright (c) 1993-2001 Ken Martin, Will Schroeder, Bill Lorensen All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither name of Ken Martin, Will Schroeder, or Bill Lorensen nor the names of any contributors may be used to endorse or promote products derived from this software without specific prior written permission. * Modified source versions must be plainly marked as such, and must not be misrepresented as being the original software. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHORS OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 10.5 PCRE PCRE LICENCE -----------PCRE is a library of functions to support regular expressions whose syntax and semantics are as close as possible to those of the Perl 5 language. Release 8 of PCRE is distributed under the terms of the "BSD" licence, as specified below. The documentation for PCRE, supplied in the "doc" directory, is distributed under the same terms as the software itself. The basic library functions are written in C and are freestanding. Also included in the distribution is a set of C++ wrapper functions. THE BASIC LIBRARY FUNCTIONS --------------------------Written by: Philip Hazel Email local part: ph10 Email domain: cam.ac.uk 10.4. VTK 99 UniScript Manual, Release R2016 University of Cambridge Computing Service, Cambridge, England. Copyright (c) 1997-2009 University of Cambridge All rights reserved. THE C++ WRAPPER FUNCTIONS ------------------------Contributed by: Google Inc. Copyright (c) 2007-2008, Google Inc. All rights reserved. THE "BSD" LICENCE ----------------Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of the University of Cambridge nor the name of Google Inc. nor the names of their contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. End 10.6 zlib (C) 1995-2002 Jean-loup Gailly and Mark Adler This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, 100 Kapitel 10. Lizenzbestimmungen UniScript Manual, Release R2016 including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. Jean-loup Gailly [email protected] Mark Adler [email protected] 10.7 LZF Copyright (c) 2000-2007 Marc Alexander Lehmann <[email protected]> Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 10.8 expat Copyright (c) 1998, 1999, 2000 Thai Open Source Software Center Ltd and Clark Cooper Copyright (c) 2001, 2002 Expat maintainers. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: 10.7. LZF 101 UniScript Manual, Release R2016 The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 10.9 qhull Qhull, Copyright (c) 1993-2002 The National Science and Technology Research Center for Computation and Visualization of Geometric Structures (The Geometry Center) University of Minnesota 400 Lind Hall 207 Church Street S.E. Minneapolis, MN 55455 USA email: [email protected] This software includes Qhull from The Geometry Center. Qhull is copyrighted as noted above. Qhull is free software and may be obtained via http from www.geom.umn.edu. It may be freely copied, modified, and redistributed under the following conditions: 1. All copyright notices must remain intact in all files. 2. A copy of this text file must be distributed along with any copies of Qhull that you redistribute; this includes copies that you have modified, or copies of programs or other software products that include Qhull. 3. If you modify Qhull, you must include a notice giving the name of the person performing the modification, the date of modification, and the reason for such modification. 4. When distributing modified versions of Qhull, or other software products that include Qhull, you must provide notice that the original source code may be obtained as noted above. 5. There is no warranty or other guarantee of fitness for Qhull, it is provided solely "as is". Bug reports or fixes may be sent to [email protected]; the authors may or may not act on them as they desire. 102 Kapitel 10. Lizenzbestimmungen UniScript Manual, Release R2016 10.10 jpeg This software is copyright (C) 1991-1998, Thomas G. Lane. All Rights Reserved except as specified below. Permission is hereby granted to use, copy, modify, and distribute this software (or portions thereof) for any purpose, without fee, subject to these conditions: (1) If any part of the source code for this software is distributed, then this README file must be included, with this copyright and no-warranty notice unaltered; and any additions, deletions, or changes to the original files must be clearly indicated in accompanying documentation. (2) If only executable code is distributed, then the accompanying documentation must state that "this software is based in part on the work of the Independent JPEG Group". (3) Permission for use of this software is granted only if the user accepts full responsibility for any undesirable consequences; the authors accept NO LIABILITY for damages of any kind. 10.11 png This copy of the libpng notices is provided for your convenience. In case of any discrepancy between this copy and the notices in the file png.h that is included in the libpng distribution, the latter shall prevail. COPYRIGHT NOTICE, DISCLAIMER, and LICENSE: If you modify libpng you may insert additional notices immediately following this sentence. libpng versions 1.0.7, July 1, 2000, through 1.2.4, July 8, 2002, are Copyright (c) 2000-2002 Glenn Randers-Pehrson and are distributed according to the same disclaimer and license as libpng-1.0.6 with the following individuals added to the list of Contributing Authors Simon-Pierre Cadieux Eric S. Raymond Gilles Vollant and with the following additions to the disclaimer: There is no warranty against interference with your enjoyment of the library or against infringement. There is no warranty that our efforts or the library will fulfill any of your particular purposes or needs. This library is provided with all faults, and the entire risk of satisfactory quality, performance, accuracy, and effort is with the user. libpng versions 0.97, January 1998, through 1.0.6, March 20, 2000, are Copyright (c) 1998, 1999 Glenn Randers-Pehrson, and are distributed according to the same disclaimer and license as libpng-0.96, with the following individuals added to the list of Contributing Authors: Tom Lane Glenn Randers-Pehrson 10.10. jpeg 103 UniScript Manual, Release R2016 Willem van Schaik libpng versions 0.89, June 1996, through 0.96, May 1997, are Copyright (c) 1996, 1997 Andreas Dilger Distributed according to the same disclaimer and license as libpng-0.88, with the following individuals added to the list of Contributing Authors: John Bowler Kevin Bracey Sam Bushell Magnus Holmgren Greg Roelofs Tom Tanner libpng versions 0.5, May 1995, through 0.88, January 1996, are Copyright (c) 1995, 1996 Guy Eric Schalnat, Group 42, Inc. For the purposes of this copyright and license, "Contributing Authors" is defined as the following set of individuals: Andreas Dilger Dave Martindale Guy Eric Schalnat Paul Schmidt Tim Wegner The PNG Reference Library is supplied "AS IS". The Contributing Authors and Group 42, Inc. disclaim all warranties, expressed or implied, including, without limitation, the warranties of merchantability and of fitness for any purpose. The Contributing Authors and Group 42, Inc. assume no liability for direct, indirect, incidental, special, exemplary, or consequential damages, which may result from the use of the PNG Reference Library, even if advised of the possibility of such damage. Permission is hereby granted to use, copy, modify, and distribute this source code, or portions hereof, for any purpose, without fee, subject to the following restrictions: 1. The origin of this source code must not be misrepresented. 2. Altered versions must be plainly marked as such and must not be misrepresented as being the original source. 3. This Copyright notice may not be removed or altered from any source or altered source distribution. The Contributing Authors and Group 42, Inc. specifically permit, without fee, and encourage the use of this source code as a component to supporting the PNG file format in commercial products. If you use this source code in a product, acknowledgment is not required but would be appreciated. A "png_get_copyright" function is available, for convenient use in "about" boxes and the like: printf("%s",png_get_copyright(NULL)); 104 Kapitel 10. Lizenzbestimmungen UniScript Manual, Release R2016 Also, the PNG logo (in PNG format, of course) is supplied in the files "pngbar.png" and "pngbar.jpg (88x31) and "pngnow.png" (98x31). Libpng is OSI Certified Open Source Software. OSI Certified Open Source is a certification mark of the Open Source Initiative. Glenn Randers-Pehrson [email protected] July 8, 2002 10.12 cxImage License The class CxImage is free; as for the TIFF, JPEG, PNG and ZLIB libraries : "If you use this source code in a product, acknowledgment is not required but would be appreciated." 10.13 nullsoft Installer license Copyright (C) 1999-2001 Nullsoft, Inc. This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software. Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions: 1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required. 2. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software. 3. This notice may not be removed or altered from any source distribution. 10.14 libffi license libffi - Copyright (c) 1996-2008 See source files for details. Red Hat, Inc and others. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the ``Software''), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, 10.12. cxImage 105 UniScript Manual, Release R2016 distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED ``AS IS'', WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. 10.15 HDF5 Copyright Notice and License Terms for HDF5 (Hierarchical Data Format 5) Software Library and Utilities ----------------------------------------------------------------------------HDF5 (Hierarchical Data Format 5) Software Library and Utilities Copyright 2006-2012 by The HDF Group. NCSA HDF5 (Hierarchical Data Format 5) Software Library and Utilities Copyright 1998-2006 by the Board of Trustees of the University of Illinois. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted for any purpose (including commercial purposes) provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions, and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions, and the following disclaimer in the documentation and/or materials provided with the distribution. 3. In addition, redistributions of modified forms of the source or binary code must carry prominent notices stating that the original code was changed and the date of the change. 4. All publications or advertising materials mentioning features or use of this software are asked, but not required, to acknowledge that it was developed by The HDF Group and by the National Center for Supercomputing Applications at the University of Illinois at Urbana-Champaign and credit the contributors. 5. Neither the name of The HDF Group, the name of the University, nor the name of any Contributor may be used to endorse or promote products derived from this software without specific prior written permission from The HDF Group, the University, or the Contributor, respectively. 106 Kapitel 10. Lizenzbestimmungen UniScript Manual, Release R2016 DISCLAIMER: THIS SOFTWARE IS PROVIDED BY THE HDF GROUP AND THE CONTRIBUTORS "AS IS" WITH NO WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED. In no event shall The HDF Group or the Contributors be liable for any damages suffered by the users arising out of the use of this software, even if advised of the possibility of such damage. --------------------------------------------------------------------------------------------------------------------------------------------------------Contributors: National Center for Supercomputing Applications (NCSA) at the University of Illinois, Fortner Software, Unidata Program Center (netCDF), The Independent JPEG Group (JPEG), Jean-loup Gailly and Mark Adler (gzip), and Digital Equipment Corporation (DEC). ----------------------------------------------------------------------------- 10.16 kazlib /* Copyright 1996-2012 * Kaz Kylheku <[email protected]> * Vancouver, Canada * All rights reserved. * * BSD License: * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the above copyright * notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in * the documentation and/or other materials provided with the * distribution. * 3. The name of the author may not be used to endorse or promote * products derived from this software without specific prior * written permission. * * * THIS SOFTWARE IS PROVIDED ``AS IS'' AND WITHOUT ANY EXPRESS OR * IMPLIED WARRANTIES, INCLUDING, WITHOUT LIMITATION, THE IMPLIED * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. */ 10.17 upfirdn (Polyphase FIR Resampling) Copyright (c) 2009, Motorola, Inc All Rights Reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are 10.16. kazlib 107 UniScript Manual, Release R2016 met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. * Neither the name of Motorola nor the names of its contributors may be used to endorse or promote products derived from this software without specific prior written permission. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 10.18 LZ4 LZ4 - Fast LZ compression algorithm Copyright (C) 2011-2013, Yann Collet. BSD 2-Clause License (http://www.opensource.org/licenses/bsd-license.php) Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: * Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. * Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. You can contact the author at : 108 Kapitel 10. Lizenzbestimmungen UniScript Manual, Release R2016 - LZ4 homepage : http://fastcompression.blogspot.com/p/lz4.html - LZ4 source repository : http://code.google.com/p/lz4/ 10.19 libxml2 Except where otherwise noted in the source code (e.g. the files hash.c, list.c and the trio files, which are covered by a similar licence but with different Copyright notices) all the files are: Copyright (C) 1998-2003 Daniel Veillard. All Rights Reserved. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE DANIEL VEILLARD BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Except as contained in this notice, the name of Daniel Veillard shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization from him. 10.20 Color Brewer Apache-Style Software License for ColorBrewer software and ColorBrewer Color Schemes Copyright (c) 2002 Cynthia Brewer, Mark Harrower, and The Pennsylvania State University. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. 10.19. libxml2 109 UniScript Manual, Release R2016 10.21 cURL Library (http://curl.haxx.se) COPYRIGHT AND PERMISSION NOTICE Copyright (c) 1996 - 2014, Daniel Stenberg, [email protected]. All rights reserved. Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT OF THIRD PARTY RIGHTS. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. Except as contained in this notice, the name of a copyright holder shall not be used in advertising or otherwise to promote the sale, use or other dealings in this Software without prior written authorization of the copyright holder. 10.22 OpenSSL LICENSE ISSUES ============== The OpenSSL toolkit stays under a dual license, i.e. both the conditions of the OpenSSL License and the original SSLeay license apply to the toolkit. See below for the actual license texts. Actually both licenses are BSD-style Open Source licenses. In case of any license issues related to OpenSSL please contact [email protected]. OpenSSL License --------------/* * * * * * * * * * * * * * * * * ==================================================================== Copyright (c) 1998-2011 The OpenSSL Project. All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 1. Redistributions of source code must retain the above copyright notice, this list of conditions and the following disclaimer. 2. Redistributions in binary form must reproduce the above copyright notice, this list of conditions and the following disclaimer in the documentation and/or other materials provided with the distribution. 3. All advertising materials mentioning features or use of this software must display the following acknowledgment: 110 Kapitel 10. Lizenzbestimmungen UniScript Manual, Release R2016 "This product includes software developed by the OpenSSL Project * for use in the OpenSSL Toolkit. (http://www.openssl.org/)" * * * 4. The names "OpenSSL Toolkit" and "OpenSSL Project" must not be used to endorse or promote products derived from this software without * prior written permission. For written permission, please contact * [email protected]. * * * 5. Products derived from this software may not be called "OpenSSL" nor may "OpenSSL" appear in their names without prior written * permission of the OpenSSL Project. * * * 6. Redistributions of any form whatsoever must retain the following acknowledgment: * "This product includes software developed by the OpenSSL Project * for use in the OpenSSL Toolkit (http://www.openssl.org/)" * * * THIS SOFTWARE IS PROVIDED BY THE OpenSSL PROJECT ``AS IS'' AND ANY * EXPRESSED OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE OpenSSL PROJECT OR * ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT * NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED * OF THE POSSIBILITY OF SUCH DAMAGE. * ==================================================================== * * This product includes cryptographic software written by Eric Young * ([email protected]). This product includes software written by Tim * Hudson ([email protected]). * */ Original SSLeay License ----------------------/* * * * * * * * * * * * * * * * * Copyright (C) 1995-1998 Eric Young ([email protected]) All rights reserved. This package is an SSL implementation written by Eric Young ([email protected]). The implementation was written so as to conform with Netscapes SSL. This library is free for commercial and non-commercial use as long as the following conditions are aheared to. The following conditions apply to all code found in this distribution, be it the RC4, RSA, lhash, DES, etc., code; not just the SSL code. The SSL documentation included with this distribution is covered by the same copyright terms except that the holder is Tim Hudson ([email protected]). Copyright remains Eric Young's, and as such any Copyright notices in the code are not to be removed. If this package is used in a product, Eric Young should be given attribution 10.22. OpenSSL 111 UniScript Manual, Release R2016 * as the author of the parts of the library used. * This can be in the form of a textual message at program startup or * in documentation (online or textual) provided with the package. * * Redistribution and use in source and binary forms, with or without * modification, are permitted provided that the following conditions * are met: * 1. Redistributions of source code must retain the copyright notice, this list of conditions and the following disclaimer. * 2. Redistributions in binary form must reproduce the above copyright * notice, this list of conditions and the following disclaimer in the * documentation and/or other materials provided with the distribution. * 3. All advertising materials mentioning features or use of this software * must display the following acknowledgement: * "This product includes cryptographic software written by * Eric Young ([email protected])" * The word 'cryptographic' can be left out if the rouines from the library * being used are not cryptographic related :-). * 4. If you include any Windows specific code (or a derivative thereof) from * the apps directory (application code) you must include an acknowledgement: * "This product includes software written by Tim Hudson ([email protected])" * * * THIS SOFTWARE IS PROVIDED BY ERIC YOUNG ``AS IS'' AND * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * * The licence and distribution terms for any publically available version or * derivative of this code cannot be changed. i.e. this code cannot simply be * copied and put under another distribution licence * [including the GNU Public Licence.] */ 10.23 libssh2 /* * * * * * * * * * * * * Copyright (c) 2004-2007 Sara Golemon <[email protected]> Copyright (c) 2005,2006 Mikhail Gusarov <[email protected]> Copyright (c) 2006-2007 The Written Word, Inc. Copyright (c) 2007 Eli Fant <[email protected]> Copyright (c) 2009 Daniel Stenberg Copyright (C) 2008, 2009 Simon Josefsson All rights reserved. Redistribution and use in source and binary forms, with or without modification, are permitted provided that the following conditions are met: 112 Redistributions of source code must retain the above Kapitel 10. Lizenzbestimmungen UniScript Manual, Release R2016 copyright notice, this list of conditions and the * following disclaimer. * * Redistributions in binary form must reproduce the above * copyright notice, this list of conditions and the following * disclaimer in the documentation and/or other materials * provided with the distribution. * * Neither the name of the copyright holder nor the names * of any other contributors may be used to endorse or * promote products derived from this software without * specific prior written permission. * * * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND * CONTRIBUTORS "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, * INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES * OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, * BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR * SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS * INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE * USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY * OF SUCH DAMAGE. */ 10.23. libssh2 113 UniScript Manual, Release R2016 114 Kapitel 10. Lizenzbestimmungen Stichwortverzeichnis Symbols 1D-Datensatz, 33 2D-Datensatz, 33 3D-Datensatz, 33 3D-Diagramm, 32 A Achse Absteigende Skalierung, 28 Lineare Skalierung, 28 Logarithmische Skalierung, 28 Quadratische Skalierung, 28 Zeit/Datum Skalierung, 28 Achse verschieben, 26 Achse verstecken, 26 Achsen verknüpfen, 26 Achsenbeschriftung, 28 Achsenposition, 26 Achsentitel Pfeile im Text, 40 Symbole im Text, 41 Acrobat-Reader, 5 ASAM-ODS, 65 Automatisierung Laden, 89 Registrierung, 89 Deinstallation, 1 DIADem, 65 Diagramm 2D-Diagramm, 26 3D-Diagramm, 32 Achse verschieben, 26 Achse verstecken, 26 Achsen verknüpfen, 26 Achsenposition, 26 Aufbau, 26 Ausgabereihenfolge, 25 nach Hinten stellen, 35 nach Vorne stellen, 35 Wasserfall, 33 document new, 13 DSV-Import, 69 E Ellipse, 34 Excel, 65 Exceldatei-Import, 69 F COMBI, 65 CSV-Import, 69 Famos, 65 Fanggitter, 35 Feld-Funktionen Erzeugen, 46 Neue Funktionen zufügen, 46 Feldfunktionen, 45 Dateiname, 45 FEVIS, 65 Formatvorschriften, 69 D G Datensätze Ausgabereihenfolge, 25 Datensatz, 33 nach Hinten stellen, 35 nach Vorne stellen, 35 Gestapelte Diagramme, 29 Griechische Zeichen, 38 B Beliebig verteilte 3D-Daten, 33 C H Hintergrund, 25 115 UniScript Manual, Release R2016 I Kreise, 34 kubelwinkelbezogene Signale, 33 Koordinatensystem, 25 zufügen, 23 Seiten zuladen, 48 Setup, 1 Sonderzeichen, 38 stacked diagrams, 29 Symbole im Text, 41 Symbolleiste Cursor, 10 Zeichnen, 34 Systemvoraussetzungen, 1 L T Legende, 41, 42 Legenden, 45 libxml2, 109 Linie, 34 Lizenzen, 96 LZ4, 108 lzf, 101 Tabulatoren in Textobjekten, 43 Text-Platzhalter ($Text$), 43 Textdatei-Import, 69 Textobjekt, 34 Feld-Funktionen, 45 Größe automatisch anpassen, 46 Griechische Zeichen, 38 Hochstellen, 36 Leerräume im Text, 42 Linien im Text, 40 Pfeile im Text, 40 Schraffur-Symbol im Text, 42 Sonderzeichen, 38 Symbole im Text, 41 Tabulatoren, 43 Tiefstellen, 36 Textobjekte, 36 IFILE, 65 Import von Daten, 65 INCA, 65 INDIMASTER, 65 INDISET, 65 Installation, 1 K M Marker im Text, 41 Matrix-Datensatz, 33 Mausrad, 35 MDF, 65 N nach Hinten stellen, 35 nach Vorne stellen, 35 netCDF, 65, 97 O OLE, 53 OnLayerLink, 29 P PCRE-Lizenz, 99 Pfeil, 34 Pfeile im Text, 40 Platzhalter ($Text$), 43 R U UTX, 65 UTX-Dateiformat, 71 UXX-BEGIN Schlüsselwort, 71 UXX-Import, 77 V VS100, 65 VTK, 98 W Rechteck, 34 Wasserfalldiagramm, 33 WFT, 65 S Z Schraffur-Symbol im Text, 42 Schriftfelder, 48 Schriftfelder erzeugen, 49 Scintilla, 98 Seite Ausgabereihenfolge, 26 Zeichenobjekte auftrennen, 35 Ausgabereihenfolge, 25 Bearbeiten, 35 Dialog öffnen, 35 Ellipse, 34 116 Stichwortverzeichnis UniScript Manual, Release R2016 Fanggitter, 35 Formeln, 36 Gruppieren, 35 Kreise, 34 Linie, 34 markieren, 34 nach Hinten stellen, 35 nach Vorne stellen, 35 Pfeil, 34 Rechteck, 34 Snap-To-Grid, 35 Text, 34, 36 vergrößern, 34 verschieben, 34 zusammenfassen, 35 Zeichentabelle, 38 Zeitsignale, 33 zlib, 100 Zoom, 35 Zwischenablage, 53 Stichwortverzeichnis 117