PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Vektoren zeichnen? (gnuplot)



wernstrom
02-11-2004, 14:48
Hi

Die Frage betrifft zwar nicht direkt Latex, aber ich hoffe, mir kann trotzdem jemand helfen:
Ich will Vektoren in einem dreidimensionalen Vektorraum zeichnen. Mit gnuplot bekomm ich nur Vektoren im zweidimensionalen Raum hin, bei drei Dimensionen bekomm ich nur einen Punkt als Ergebnis angezeigt. In der Dokumentation hab ich dazu auch nichts gefunden. Weiß jemand, ob das mit gnuplot überhaupt geht? Oder kennt ihr vielleicht Programme, mit denen das besser zu realisieren ist?

Vielen Dank für die Hilfe im Voraus!
wernstrom

moedule
02-11-2004, 17:33
also bei version 4.0.0 patch0 gehts !

einfach mit
set arrow from 0,0,0 to 10,5,4

EDIT: au, sorry wer lesen kann ist klar im vorteil, ich sollte wohl mal lesen lernen


hab dann dochmal selber nachgeschaut, wird dann wohl nciht möglich sein



Gnuplot supports various kinds of plots. In 2D, it can draw line, point, dot, box, histogram graphs or vector fields. In 3D, it supports line, point and dot surfaces, with or without hidden line removal. It supports color or grayscale surfaces and maps, even for non-equidistant and non-rectangular 3D data, otherwise it offers data gridding.



moe

moedule
02-11-2004, 17:52
und weil ich gerade den mund etwas voll genommen hab... hier ein kleiner workarround, der eigentlich auch ganz gut tun sollte solange du nicht alzu viele daten hast (oder halt nen schnellen rechner )

also erst mal brauchst du diesen 2-zeiler (namens vec.gp)


#!/bin/sh
awk '{print "set arrow from "$1", "$2"," $3" to " $4"," $5"," $6}' $1


und dann brauchst du ein file mit 6 spalten wo die daten für die vektoren drin stehen, mal als beispiel (namens vec.dat)


0 0 0 10 10 100
0 0 0 10 -10 150
10 10 10 -5 7 0

kannste natürlich beliebig verbessern

und zum schluß noch im gnuplot benutzen


load '<./vec.gp vec.dat'
splot x**2+y**2


hoffe es hilft, ist aber kein wirklicher ersatz
moe

moedule
02-11-2004, 18:02
origin ?
maple , mathematica,
scigraphica? xmgrace kann glaub ich kein 3d

moedule
02-11-2004, 18:22
kleine verbesserung, jetzt gehen auch files mit nur drei spalten und senkrechten vektoren
außerdem werden noch kommetare und leere zeilen rausgefischt (die fehler verursachten)


#!/bin/sh
grep -v "#" $1 | awk '{if (NF >= 6) {print "set arrow from "$1", "$2"," $3" to " $4"," $5"," $6} else {print "set arrow from "$1", "$2"," $3" to " $1"," $2",0"}}' | grep -v " , , to"


jetzt kann man es auch mit funktionen in gnuplot benutzen

set terminal table
set output 'vec.dat'
splot x**2+y**2
set terminal x11
unset output
load '<./vec.gp vec.dat'
splot [-10:10][-10:10][-10:10] 0

moedule
03-11-2004, 00:40
ja geht aber ganz gut .... hab gerade mals chnell 2045 vektoren geplottet , geht also durch aus, prima (eigenlob) workaround :-)




moe

wernstrom
03-11-2004, 13:54
Danke für die Hilfe, reicht für meine Anforderungen gut aus!

moedule
03-11-2004, 15:09
naja da hat mich der ehrgeiz gepackt

moe