Verwendung von gnuplot i: Unterschied zwischen den Versionen

Aus Physik
Zur Navigation springen Zur Suche springen
Zeile 1: Zeile 1:
 
==Grundlagen==
 
==Grundlagen==
 
 
<nowiki>Gnuplot_i</nowiki> ist ein C-Interface für das konsolenbasierte Programmpaket gnuplot. Letzteres ist ein verbreitetes und mächtiges Werkzeug um Zeichnen von Diagrammen (siehe http://www.gnuplot.info). <br> Gnuplot selbst ist für viele Platformen erhältlich, jedoch funktioniert <nowiki>Gnuplot_i</nowiki> nicht so ohne weiters unter Windows, da es POSIX-Pipes verwendet.
 
<nowiki>Gnuplot_i</nowiki> ist ein C-Interface für das konsolenbasierte Programmpaket gnuplot. Letzteres ist ein verbreitetes und mächtiges Werkzeug um Zeichnen von Diagrammen (siehe http://www.gnuplot.info). <br> Gnuplot selbst ist für viele Platformen erhältlich, jedoch funktioniert <nowiki>Gnuplot_i</nowiki> nicht so ohne weiters unter Windows, da es POSIX-Pipes verwendet.
   
 
Das Interface stellt einige Funtionen zur Verfügung, denen einfach (z.B. x,y-) Daten übergeben werden woraus ein Diagramm generiert wird. Um dem Programmierer weiters die volle Gnuplot-Funktionalität zur Verfügung zu stellen ist die Möglichkeit gegeben Befehle direkt an Gnuplot zu "senden".
 
Das Interface stellt einige Funtionen zur Verfügung, denen einfach (z.B. x,y-) Daten übergeben werden woraus ein Diagramm generiert wird. Um dem Programmierer weiters die volle Gnuplot-Funktionalität zur Verfügung zu stellen ist die Möglichkeit gegeben Befehle direkt an Gnuplot zu "senden".
   
'''Vorteile'''
+
'''Angenehme Eigenschaften'''
 
* Einfache Handhabung, man braucht nur wenige, gut dokumentierte Befehle zu kennen um wissenschaftlich korrekte Diagramme zu zeichnen.
 
* Einfache Handhabung, man braucht nur wenige, gut dokumentierte Befehle zu kennen um wissenschaftlich korrekte Diagramme zu zeichnen.
 
* Die Syntax der Befehle erinnert sehr an Matlab
 
* Die Syntax der Befehle erinnert sehr an Matlab
Zeile 12: Zeile 11:
   
 
==Download==
 
==Download==
 
 
* [[Image:Gnuplot_i-2.10.tar.gz|Gnuplot i-2.10.tar.gz]]
 
* [[Image:Gnuplot_i-2.10.tar.gz|Gnuplot i-2.10.tar.gz]]
 
** In dem Archiv befinden sich der Sourcecode, zwei Testbeispiele und eine HTML-Dokumentation mit ausführlichen Beschreibungen der Funktionen.
 
** In dem Archiv befinden sich der Sourcecode, zwei Testbeispiele und eine HTML-Dokumentation mit ausführlichen Beschreibungen der Funktionen.
Zeile 20: Zeile 18:
   
 
==Programmierung==
 
==Programmierung==
  +
  +
===Einbinden der Library===
  +
Allgemeines zu diesem Thema gibt's [[Numerische_Methoden#Compilierung_und_Projektaufbau|hier]] nachzulesen.
  +
  +
Verwendet man <nowiki>Gnuplot_i</nowiki> so muss man mehrere c-Files und mindestens ein h-File managen. Die einfachste Variante ist, einfach die Datei <tt>gnuplot_i.c</tt> zu inludieren:
  +
#include "gnuplot_i.c"
  +
Diese inkludiert in weiterer Folge das h-File, so dass alle nötigen Deklarationen bereits eingebunden sind.
  +
  +
Wenn man berüchsichtigt, dass man eigentlich keine c-Files inkludieren soll, muss man etwas anders vorgehen, was hier allerdings zu praktisch keinem Mehraufwand führt. Da man die Gnuplot-Library selbst kaum ändern wird, reicht es aus sie einmal zu compilieren und dann stets mitzulinken. Weiters wird statt des c-Files das h-File eingebunden.
  +
# gcc -c gnuplot_i.c
  +
erzeugt das File
  +
  +
 
===Prinzipieller Ablauf===
 
===Prinzipieller Ablauf===
 
* Starten einer Gnuplot-Session
 
* Starten einer Gnuplot-Session

Version vom 7. November 2005, 12:33 Uhr

Grundlagen

Gnuplot_i ist ein C-Interface für das konsolenbasierte Programmpaket gnuplot. Letzteres ist ein verbreitetes und mächtiges Werkzeug um Zeichnen von Diagrammen (siehe http://www.gnuplot.info).
Gnuplot selbst ist für viele Platformen erhältlich, jedoch funktioniert Gnuplot_i nicht so ohne weiters unter Windows, da es POSIX-Pipes verwendet.

Das Interface stellt einige Funtionen zur Verfügung, denen einfach (z.B. x,y-) Daten übergeben werden woraus ein Diagramm generiert wird. Um dem Programmierer weiters die volle Gnuplot-Funktionalität zur Verfügung zu stellen ist die Möglichkeit gegeben Befehle direkt an Gnuplot zu "senden".

Angenehme Eigenschaften

  • Einfache Handhabung, man braucht nur wenige, gut dokumentierte Befehle zu kennen um wissenschaftlich korrekte Diagramme zu zeichnen.
  • Die Syntax der Befehle erinnert sehr an Matlab
  • Es handelt sich um ein sehr kleines, leicht einzubindendes Paket (ein c und ein h File)


Download

  • Datei:Gnuplot i-2.10.tar.gz
    • In dem Archiv befinden sich der Sourcecode, zwei Testbeispiele und eine HTML-Dokumentation mit ausführlichen Beschreibungen der Funktionen.
  • Projektseite
    • Hier kann die aktuellste Version heruntergeladen und die Doku online eingesehen werden. Weiters sind Links zu anderen Gnuplot Interfaces angegeben.


Programmierung

Einbinden der Library

Allgemeines zu diesem Thema gibt's hier nachzulesen.

Verwendet man Gnuplot_i so muss man mehrere c-Files und mindestens ein h-File managen. Die einfachste Variante ist, einfach die Datei gnuplot_i.c zu inludieren:

 #include "gnuplot_i.c"

Diese inkludiert in weiterer Folge das h-File, so dass alle nötigen Deklarationen bereits eingebunden sind.

Wenn man berüchsichtigt, dass man eigentlich keine c-Files inkludieren soll, muss man etwas anders vorgehen, was hier allerdings zu praktisch keinem Mehraufwand führt. Da man die Gnuplot-Library selbst kaum ändern wird, reicht es aus sie einmal zu compilieren und dann stets mitzulinken. Weiters wird statt des c-Files das h-File eingebunden.

 # gcc -c gnuplot_i.c

erzeugt das File


Prinzipieller Ablauf

  • Starten einer Gnuplot-Session
  • Einstellungen festlegen
  • Daten plotten
  • Beenden der Session (WICHTIG!)