Gnuplot: Linie ab dem ersten Messwert anzeigen

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
pekabe
Beiträge: 438
Registriert: 14.02.2009 17:12:07
Wohnort: Allgäu

Gnuplot: Linie ab dem ersten Messwert anzeigen

Beitrag von pekabe » 08.11.2015 15:49:59

Hallo,

wo sind die gnuplot-Experten?
Meine Tochter beschäftigt sich seit kurzem mit gnuplot, sie benötigt es für ihre Bachelor Arbeit. Sie will die Werte aus einer Datei (2 Spalten, X- und Y-Werte) als Diagramm ausgeben. Leider wird die Kurve immer erst ab dem zweiten Messwert dargestellt, das Stück zwischen dem ersten Punkt (Ursprung 0, 0) und dem zweiten fehlt! Da ich gar nichts über gnuplot weiß, kann ich ihr hier leider nicht helfen.

Könnt ihr bitte weiterhelfen? Danke!

Grüße pekabe

pekabe
Beiträge: 438
Registriert: 14.02.2009 17:12:07
Wohnort: Allgäu

Re: Gnuplot: Linie ab dem ersten Messwert anzeigen

Beitrag von pekabe » 08.11.2015 16:42:43

Durch Trial and Error ist meine Tochter nun auf eine Lösung gekommen:
Das erste Messwertepaar stand gleich in der ersten Zeile und wurde offenbar von gnuplot ignoriert. Mit einer Leerzeile oder einer Kommentarzeile davor funktioniert es nun.

Falls ihr noch andere Lösungen habt, immer her damit.
Danke!

Benutzeravatar
MSfree
Beiträge: 10776
Registriert: 25.09.2007 19:59:30

Re: Gnuplot: Linie ab dem ersten Messwert anzeigen

Beitrag von MSfree » 08.11.2015 16:46:01

pekabe hat geschrieben:Falls ihr noch andere Lösungen habt, immer her damit.
GNUplot läßt sich wunderbar mit Octave kombinieren. Man kann seine Daten mit Octave be- und verarbeiten und ausplotten lassen, als graphische Schnittstelle dient dann GNUplot. Vor allem, wenn es komplexere Funktionen sind und/oder auch 3D-Plot gemacht werden sollen, tut man sich via octave einiges leichter als direkt mit GNUplot zu hantieren.

Benutzeravatar
CH777
Beiträge: 1466
Registriert: 27.05.2008 16:37:17

Re: Gnuplot: Linie ab dem ersten Messwert anzeigen

Beitrag von CH777 » 08.11.2015 19:03:50

Ich benutze gnuplot regelmäßig und kann das Problem nicht reproduzieren. Bei mir wird auch die erste Zeile immer richtig mitgeplottet.
Kannst du mal den genauen Befehl und einen fehlerhaften Plot posten?

pekabe
Beiträge: 438
Registriert: 14.02.2009 17:12:07
Wohnort: Allgäu

Re: Gnuplot: Linie ab dem ersten Messwert anzeigen

Beitrag von pekabe » 08.11.2015 20:17:02

Hallo CH777,

der Plotbefehl lautet
plot "/Daten/Studium/4. Semester/Bachelorprojekt/Zwickwerte/Kurve.txt" using 1:2 smooth csplines t "Kraftverlauf"
Die Datei hat den Inhalt
0 0
25 61,32590827
40 93,24312664
65 182,9660701
Und die Kurve sieht dann so aus:
Bild

Der erste Messwert (0,0) wird also nicht dargestellt.

Benutzeravatar
MSfree
Beiträge: 10776
Registriert: 25.09.2007 19:59:30

Re: Gnuplot: Linie ab dem ersten Messwert anzeigen

Beitrag von MSfree » 08.11.2015 21:48:53

pekabe hat geschrieben:Die Datei hat den Inhalt

Code: Alles auswählen

0	0
25	61,32590827
40	93,24312664
65	182,9660701
Ich würde auf mal das Dezimalkomma durch einen Punkt ersetzen.

pekabe
Beiträge: 438
Registriert: 14.02.2009 17:12:07
Wohnort: Allgäu

Re: Gnuplot: Linie ab dem ersten Messwert anzeigen

Beitrag von pekabe » 09.11.2015 07:06:15

Stimmt, aber das hat ja noch keinen Einfluss auf die erste Zeile.

Benutzeravatar
CH777
Beiträge: 1466
Registriert: 27.05.2008 16:37:17

Re: Gnuplot: Linie ab dem ersten Messwert anzeigen

Beitrag von CH777 » 09.11.2015 10:49:41

Ich hab das gerade genau wie von dir beschrieben gemacht und das ist das Ergebnis:
Bild
Das Ignorieren der ersten Zeile ist also nicht das Standardverhalten.
Existiert eine persönlich angepasste Konfigurationsdatei? Dazu im Gnuplotterminal show loadpath eingeben und das Ergebnis hier posten.

pekabe
Beiträge: 438
Registriert: 14.02.2009 17:12:07
Wohnort: Allgäu

Re: Gnuplot: Linie ab dem ersten Messwert anzeigen

Beitrag von pekabe » 09.11.2015 12:37:28

@CH777
Werde ich posten, allerdings ist meine Tochter bis zum Wochenende wieder beim Studieren. Dadurch werden meine Reaktionszeiten länger...
Danke für die Geduld und Hilfe!

eggy
Beiträge: 3331
Registriert: 10.05.2008 11:23:50

Re: Gnuplot: Linie ab dem ersten Messwert anzeigen

Beitrag von eggy » 09.11.2015 15:58:32

Für die Tochter: ucp.php?mode=register

pekabe
Beiträge: 438
Registriert: 14.02.2009 17:12:07
Wohnort: Allgäu

Re: Gnuplot: Linie ab dem ersten Messwert anzeigen

Beitrag von pekabe » 09.11.2015 18:16:12

@eggy
Ich deute das mal als Aufforderung an meine Tochter, sich selbst zu registrieren. Gute Idee, werde ich ihr mal vorschlagen.

Übrigens habe ich gerade auf meinem PC (also nicht dem meiner Tochter) gnuplot installiert, eine Textdatei mit den obigen Werten angelegt (allerdings mit Dezimalpunkt statt Komma) und einfach nur den plot-Befehl eingegeben. Ebenso wie bei CH777 wird bei mir die Kurve komplett ab (0,0) dargestellt. Bin auf die gnuplot-Einstellungen bei meiner Tochter gespannt...

pekabe
Beiträge: 438
Registriert: 14.02.2009 17:12:07
Wohnort: Allgäu

Re: Gnuplot: Linie ab dem ersten Messwert anzeigen

Beitrag von pekabe » 10.11.2015 07:08:16

Der Befehl "show loadpath" liefert beim PC meiner Tochter folgende Ausgabe:
loadpath is empty
no XAPPLRESDIR found in the environment,
falling back to "/etc/X11/app-defaults/"
Auf meinem eigenen PC mit frisch installiertem gnuplot kommt die Meldung
loadpath is empty
gnuplotrc is read from /usr/share/gnuplot/gnuplot/4.6
no XAPPLRESDIR found in the environment,
falling back to "/etc/X11/app-defaults/"
Werde nächstes Wochenende mal nachschauen, was sich in /usr/share/gnuplot/gnuplot/4.6 befindet und den Inhalt ggf. auf Tochters PC kopieren. Oder habt ihr andere Vorschläge?

Benutzeravatar
CH777
Beiträge: 1466
Registriert: 27.05.2008 16:37:17

Re: Gnuplot: Linie ab dem ersten Messwert anzeigen

Beitrag von CH777 » 10.11.2015 15:01:10

pekabe hat geschrieben:Werde nächstes Wochenende mal nachschauen, was sich in /usr/share/gnuplot/gnuplot/4.6 befindet und den Inhalt ggf. auf Tochters PC kopieren.
Das würde ich eher nicht machen, es sollte eigentlich nicht nötig sein da irgendwas hin- und herzukopieren.. Benutzt deine Tochter denn überhaupt Denian? Welche Version? Welche Version von Gnuplot?

pekabe
Beiträge: 438
Registriert: 14.02.2009 17:12:07
Wohnort: Allgäu

Re: Gnuplot: Linie ab dem ersten Messwert anzeigen

Beitrag von pekabe » 10.11.2015 15:54:44

Sie benutzt LinuxMint, das ja wiederum auf Ubuntu basiert. Letztendlich alles Debian-Abkömmlinge, aber ich weiß, es gibt trotzdem Unterschiede. Die gnuplot-Version weiß ich jetzt leider nicht.
Vielleicht hilft es ja schon, gnuplot nochmal neu zu installieren?

pekabe
Beiträge: 438
Registriert: 14.02.2009 17:12:07
Wohnort: Allgäu

Re: Gnuplot: Linie ab dem ersten Messwert anzeigen

Beitrag von pekabe » 14.11.2015 10:26:37

Eventuell liegt es an der gnuplot Version. Während meine Tochter LinuxMint 13 (aktuell ist 17.2) mit gnuplot 4.4 installiert hat, ist auf meinem PC ein aktuelles Debian Stable mit gnuplot 4.6 drauf. Ein OS Update will ich mir aber momentan sparen, soweit funktioniert ja auch alles sehr gut. Sie muss eben damit leben, die Wertepaare erst ab Zeile 2 zu speichern.

Antworten