2013-04-02 3 views
0

Возможно ли это сделать с помощью gnuplot? Нечто подобное на этом изображении (ссылка)gnuplot: 3d plot электромагнитная волновая функция

http://i.stack.imgur.com/mZ3M0.gif

Я не могу показаться, чтобы быть в состоянии установить х = sin (у) и г = Sin (у) независимо друг от друга. искать помощь!

Спасибо!

ответ

0

Да! Тебе повезло, я понял это на прошлой неделе. Вот код Gnuplot я использую:

#!/usr/bin/env gnuplot 

reset 

set term png lw 2 
set out 'test.png' 

set style data lines 

# Set x,y,z ranges 
set xr [0:10] 
set yr [-2:2] 
set zr [-2:2] 

# Rotates so that plots have a nice orientation. 
# To get parameters, plot in interactive terminal and use 'show view' command. 
set view 45,30,1,1 

set arrow from 0,0,0 to 10,0,0 

unset border 
unset tics 

splot '+' u 1:(0):(sin($1)) t 'E', \ 
     '+' u 1:(-sin($1)):(0) t 'B' 

А вот рисунок я получаю:

enter image description here

У меня нет этикетки, но вы можете использовать set label и больше стрелки, чтобы воспроизвести ваш пример.

+0

Большое вам спасибо! – Yannick

0

Вы также можете определить кривые, как этот параметрически:

set parametric 
splot u,0,sin(u) title 'E',\ 
     u,-sin(u),0 title 'B' 

Обратите внимание, что u здесь не обсчитывать для using, как вы будете часто видеть. u - это фиктивная переменная, используемая в параметрическом «s» построении gnuplot.