PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Gnuplot: Ticks auf der X-Achse mit eigenen Werten beschriften



axeljaeger
02-01-2005, 16:20
Hallo,
wiedermal keine Latex-Frage, aber ich denke hier kennt man sich aus.
Ich habe Messwerte, die in einen Graphen eingetragen werden sollen. Es handelt sich um eine Tabelle Widerstand -> Spannung. Die Widerstandswerte haben nicht den gleichen Abstand, die Werte sollen aber im Graph mit gleichem Abstand nebeneinander stehen, die Skalierung ist also sehr abenteuerlich. Das bekomme ich noch hin, indem ich nicht die erste gegen die zweite Spalte, sondern nullte Spalte gegen zweite Spalte auftrage. Nur die Beschriftung der Punkte auf der X-Achse passt mir noch nicht, die würde ich gerne aus einer Datei lesen können. Da ist noch das Problem, dass der erste Messwert mit "EMK" beschriftet ist, was einem unendlichen Widerstand entspricht. Das ist also keine Zahl, zusätzliche Schwierigkeit.
Vielen Dank

moedule
02-01-2005, 16:54
was heißt aus einer datei lesen??

du kannst natürlich die tic selber beschriften

und mit etwas aufwand und etwas script auch automatisch aus ner datei, aber für den einmaligen gebrauch wird es wohl langen die tics manuel zu setzen

set xtics ("EMK" 0, "xyz" 50, "abc" 100)

macht bezeichnungen EMK bei 0, xyz bei 50, abc bei 100

set xtics ("EMK" 0, 50,100)

macht bezeichnungen EMK bei 0, 50 bei 50, 100 bei 100


was allerdings eine nicht-lineare x-achse für einen sin machen sollte ?

moe

moedule
02-01-2005, 17:15
und mit etwas aufwand und etwas script auch automatisch aus ner datei,


tic.sh


#!/bin/sh
echo "set xtics ("`(awk '{print "\""$2"\" " $1}' $1) |tr "\n" ","`")"|sed s/",)"/")"/


und dann einfach mit
load '<./tic.sh tic.dat'
ins gnuplot einbinden

achso... die tic.dat, position, titel
0 EMK
3 abc
5 5

sieht etwas böser aus als es ist ...
awk klar um die werte auszulesen, tr um die zeielnumbnrüche rauszunehmen, und sed um das letzte koma wieder wegzukriegen

moe

axeljaeger
02-01-2005, 18:46
Ich danke, es funktioniert

moedule
02-01-2005, 19:00
das ist das wichtigste....

im endeffekt kann man vieles mit gnuplot selbst lösen, aber ich bin irgendwann zur einsicht gekommen das es meißtens einfacher ist noch ne zusätzliche scriptsprache dazuzunehmen.... in kombination ist gnuplot fast unschlagbar

moe

axeljaeger
02-01-2005, 19:06
Ich hab es ohne Skript gemacht, es waren nur 10 Werte