Hallo zusammen Ich habe eine Messwertdatei "daten.dat" vorliegen, die in der Form "untere Grenze","Messwert1","obere Grenze" "untere Grenze","Messwert2","obere Grenze" aufgebaut ist. Diese möchte ich mit Gnuplot anzeigen lassen. Die Ausgabe selbst ist kein Problem, doch nun möchte ich gern noch die Achsen umskalieren. Die Messwerte wurden mit einer Frequenz von 1kHz aufgenommen. Da in x-Richtung der zeitliche Verlauf dargestellt werden soll, müssen die Werte mit der Abtast- frequenz verrechnet werden. Auch die y-Werte (Messwert1,...) sollen vorher noch verrechnet werden. Wie funktioniert das, finde keine Quellen hierzu?! Bisher rufe ich die Daten immer mit 'plot "daten.dat" using 1, "daten.dat" using 2, "daten.dat" using 3' auf. Ich hoffe, es kann mir wer weiterhelfen. MfG Lars
Ja, wie war das noch? Hat man einen einspaltigen Datensatz, also nur die y-Werte: plot ’file’ using 1 plot ’file’ using 0:1 Die Null steht dann für die fehlende erste Spalte (x-Wert) und läuft 0, 1, ... Will man Rechnen muss man das $-Zeichen verwenden: plot ’file’ using ($0):($1) plot ’file’ using ($0*0.1):($1*2.5) Vielleicht hilft das schon. Steht aber alles in der Dokumentation. Wenn sich hier sonst keiner mehr meldet: Es gibt auch eine Gnuplot-Mailingliste. Ich kann leider nicht helfen, da ich gnuplot derzeit nicht installiert habe und mich nicht mehr so genau erinnere.
Ich denke meine Erinnerung war halbwegs richtig, hier eine Antwort aus der gnuplot Newsgroup: http://groups.google.de/group/comp.graphics.apps.gnuplot/browse_thread/thread/744861b7f50a4fc3/4ff1e747e17191cb?hl=de&lnk=st&q=group%3Acomp.graphics.apps.gnuplot+scaling+axis#4ff1e747e17191cb Oben hatte ich geschrieben, es gäbe eine Mailingliste. Mag sein, vielleicht gibt es auch nur die Newsgroup.
Danke für den Tip. Für die x-Achse hat's funktioniert. Was ich in der Newsgroup allerdings nicht entdeckt habe, ist eine Skalierung der y-Achse in Abhängigkeit der Messwertzeilen. Ich hab in meiner Messwertdatei keine Konstante Anzahl von Zeilen, da sie von der Aufnahmedauer (bei einer Frequenz von 1kHz) abhängig ist. Nun muss ich vor dem Plotten erst einmal die Anzahl der Zeilen in Erfahrung bringen, damit ich sie durch "1000Hz" teilen kann und sich dann hieraus die korrekte Skalierung der Zeitachse ergibt. Hierzu vielleicht eine Idee? Gruß Lars
>eine Skalierung der y-Achse in Abhängigkeit der Messwertzeilen.
Weiß ich leider nicht.
Dazu müsste gnuplot ja zunächst die gesamte Datei einlesen, die Anzahl
der Zeilen mit Daten ermitteln und das Resultat in einer Variablen
ablegen. Mag sein das das jetzt geht (ich hatte zuletzt 4.0 verwendet).
Am besten fragst Du aber auf der Mailingliste oder der (identischen)
Newsgroup, wobei es sein könnte, dass die Newgroup "Read-Only" ist.
Bis zur Version 4.0 war die Mehrheit der Gnuplot-Autoren der Ansicht,
dass gnuplot in erster Linie zur Darstellung von Daten verwendet werden
soll, weniger zur Datenverarbeitung (Skalierung in Deinem Fall).
Wenn ich heute Messdaten hätte, mit denen ich grössere Bearbeitungen
durchführen muss, bevor ich sie darstelle, würde ich das mit Python
machen. Für Python gibt es auch Erweiterungen zur Datendarstellung und
soweit ich weiß auch ein Interface zu gnuplot.
Aber frag mal auf der Mailingliste/Newsgroup.
Ist es denn wirklich so, dass ich dazu rechnen muss? Ich dachte da an sowas wie die xtics-Einstellung, in der ich dann irgendwie mit angeben kann, dass er alle zig Messwerte eine Marke setzt und die aktuelle Messwertposition dann durch meine Messfrequenz dividiert wird. Hierdurch würde ich keine Vorausermittlung der Messwertmenge benötigen...
Autor: Lars (Gast) schrieb: >Nun muss ich vor dem Plotten erst einmal die Anzahl der Zeilen >in Erfahrung bringen, damit ich sie durch "1000Hz" teilen kann >und sich dann hieraus die korrekte Skalierung der Zeitachse ergibt. >Ist es denn wirklich so, dass ich dazu rechnen muss? Ich hatte Dich so verstanden, dass Du die Y-Werte irgendwie mit der Anzahl der Messwerte skalieren willst. Du schreibst "muss ich vor dem Plotten erst einmal die Anzahl der Zeilen in Erfahrung bringen", dann müsste Gnuplot das wohl auch. So ganz klar ist mir Dein Problem nicht geworden, und scheinbar gibt es hier sonst niemanden der Dir antworten kann bzw. will. Wenn Du dein Problem klar formulieren kannst, evtl. mit Beispiel, dann wäre es wirklich am besten auf der Mailingliste bzw. in der Newsgroup nachzufragen (notfalls auch auf Deutsch, besser natürlich Englisch). Wenn Du gnuplot weiter verwenden willst, so wirst Du eh noch die eine oder andere Frage haben, und dort sitzen die Experten. Ich habe gnuplot in den letzten Jahren nicht benötigt und schon wieder vieles vergessen, und ich kenne auch nur die Version 4.0.
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.