PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Brauche Tips zu Vektorplots und Intensitätsplots



SuperBonk
23-05-2009, 20:07
Hoi!

Ich hab zwei Problemchen und fände es klasse, wenn mir jemand weiter helfen könnte.

Aaalso, ich würde gerne Plots von Matrizen erstellen, die aus externen Dateien eingelesen werden. Ich weiß, dass ich das mit pstricks und psMatrixPlot machen kann. Aber leider wird hier nur zwischen Werten "Null" und "Nicht-Null" unterschieden, um Punkte zu erzeugen. Ich bräuchte aber zusätzlich, dass die Werte in der Matrix in eine Farbskala übersetzt werden, damit die Farbe eine Intensitätsinformation an der betreffenden Stelle angibt.
Die zweite Sache ist, dass ich Vektor-Plots machen wollte. Hier sollen aus einer Datei die Ortskoordinate und Vektor-Komponenten ausgelesen werden und dann natürlich die Vektoren zentriert auf die jeweilig zugehörigen Ortskoordinaten abgebildet werden.

Weiß jemand, ob etwas derartiges schon realisiert ist? Ich hab zumindest nichts gefunden. Gibt's noch etwas anderes Gutes in Bezug auf plotten und Graphiken machen außer den pstricks-Paketen? Ich frage, weil ich schätze, dass es viel Aufwand erfordert, so etwas selbst zu machen - vor Allem wenn man sich erst noch ins Basis-TeXen einlesen muss. Darum wär ich für jede Hilfe sehr dankbar.

LG,
eva

voss
23-05-2009, 20:38
Aaalso, ich würde gerne Plots von Matrizen erstellen, die aus externen Dateien eingelesen werden. Ich weiß, dass ich das mit pstricks und psMatrixPlot machen kann. Aber leider wird hier nur zwischen Werten "Null" und "Nicht-Null" unterschieden, um Punkte zu erzeugen. Ich bräuchte aber zusätzlich, dass die Werte in der Matrix in eine Farbskala übersetzt werden, damit die Farbe eine Intensitätsinformation an der betreffenden Stelle angibt.
Die zweite Sache ist, dass ich Vektor-Plots machen wollte. Hier sollen aus einer Datei die Ortskoordinate und Vektor-Komponenten ausgelesen werden und dann natürlich die Vektoren zentriert auf die jeweilig zugehörigen Ortskoordinaten abgebildet werden.

http://tug.org/PSTricks/main.cgi?file=pst-plot/3D/contour

vom Zweiten habe ich keine Vorstellung, was du meinst ...

Herbert

SuperBonk
23-05-2009, 21:46
Danke für die Hilfe! Beispiele für einen Intensitätsplot und einen Vektorplot habe ich mal angehängt. Momentan erstelle ich die Graphiken noch mit einem speziell dafür gemachten Programm, das mich aber zur Weißglut treibt, weil es erstens nur für Win ist und zweitens wie viele Win Programme nicht das macht, was ich will ;) und kein source code frei gegeben ist, um das Programm direkt zu modifizieren.
Ich dachte, wenn ich mir das einmal in Tex mache, wird es zwar am Anfang ein ziemlicher Krampf, aber was man einmal hat, das hat man.

Das mit dem contourplot sieht schon echt klasse aus. Jetzt muss ich mich nur noch schlau machen, wie ich die Farbskala bestimmen kann und wie ich einen Legenden-Balken basteln kann.
Das mit dem Vektorplot war so gedacht, dass die Vektoren am jeweiligen Ort Magnitude und Richtung der Bewegung(sgeschwindigkeit) wiedergeben, d.h. ich muss pro Pixel vier Werte einlesen (x-Ortskoor., y-Ortskoor., x-Vektorkomp., y-Vektorkomp.) und ich muss noch irgendwie Optionen einfügen, dass beispielsweise nur jeder 4te dieser Vektoren abgebildet werden soll und dass ggf. die Vektoren runter-skaliert werden, weil das sonst bei 2k x 2k Pixel-Images unübersichtlich werden könnte. Irgendwie werd ich das schon hinkriegen.

Nochmals: Vielen Dank!
eva

voss
23-05-2009, 22:21
Danke für die Hilfe! Beispiele für einen Intensitätsplot und einen Vektorplot habe ich mal angehängt. Momentan erstelle ich die Graphiken noch mit einem speziell dafür gemachten Programm, das mich aber zur Weißglut treibt, weil es erstens nur für Win ist und zweitens wie viele Win Programme nicht das macht, was ich will ;) und kein source code frei gegeben ist, um das Programm direkt zu modifizieren.
Ich dachte, wenn ich mir das einmal in Tex mache, wird es zwar am Anfang ein ziemlicher Krampf, aber was man einmal hat, das hat man.

Das mit dem contourplot sieht schon echt klasse aus. Jetzt muss ich mich nur noch schlau machen, wie ich die Farbskala bestimmen kann und wie ich einen Legenden-Balken basteln kann.

Das ist ja nun trivial ... den Quellcode kannst du dir ja einfach ansehen.



Das mit dem Vektorplot war so gedacht, dass die Vektoren am jeweiligen Ort Magnitude und Richtung der Bewegung(sgeschwindigkeit) wiedergeben, d.h. ich muss pro Pixel vier Werte einlesen (x-Ortskoor., y-Ortskoor., x-Vektorkomp., y-Vektorkomp.) und ich muss noch irgendwie Optionen einfügen, dass beispielsweise nur jeder 4te dieser Vektoren abgebildet werden soll und dass ggf. die Vektoren runter-skaliert werden, weil das sonst bei 2k x 2k Pixel-Images unübersichtlich werden könnte. Irgendwie werd ich das schon hinkriegen.


LEtztlich auch trivial ... Hast du ein Beispiel für ein paar Datensätze.

Herbert

SuperBonk
24-05-2009, 22:43
Ich werd's erstmal selbst probier'n. Nur so lernt man was dazu! Zumindest funktioniert learning bei torture bei mir immernoch am besten :p
Aber falls es Dich interessiert:
Die Datensätze, exportiert direkt aus meinen Messungen, sind Matrizen, in denen die Position in der Matrix (n,m) die Ortskoordinate für die Bildposition ist. Der Wert an der Stelle (n,m) ist die Intensität oder die x- bzw. die y-Komponente der Geschwindigkeit. D.h. für den Intensitätsplot brauche ich nur eine solche Matrix, für den Vektorplot brauche ich zwei solche Matrizen.
Echte Beispiele könnte ich erst morgen anhängen, wenn ich an meinem Arbeitsrechner bin.
Ich werd auch mal schaun, ob's mit Matlab nicht einfacher zu realisieren ist.

SuperBonk
26-05-2009, 16:37
Naja, ich hab jetzt herumprobiert und als mein Hauptproblem hat sich letztendlich herausgestellt, dass meine input-Dateien den Latex memory stack bei Weitem überschreiten. :(
Dann muss es wohl Matlab oder sowas sein.