1

時間で動くグシアン関数を示したい。私が書いた以下のコードは私のためにそれを行うことができます。ここで、xy 平面で 2D 背景を固定し、この gussian 関数をその上に移動します (3D プロットを 2D プロットに重ねます)。それを行う方法はありますか?助けてくれてありがとう

import math
import numpy as np
import matplotlib.pyplot as plt
from pylab import *
from mpl_toolkits.mplot3d import Axes3D
import time

teta=45;              # direction
v=0.09                        # Speed
sigma_x=0.1;              
sigma_y=0.1;               
x_0=0;                        # Initial location (center) of gussian function
y_0=0; 
T=20

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
count=-1
for t in [i for i in range(T+1)]:
    Miu_x=x_0+v*t*cos(teta*pi/180);
    Miu_y=y_0+v*t*sin(teta*pi/180);
    L=[]
    x_1=[]
    y_1=[]
    count=count+1    
    time.sleep(0.5) 
    for x in [-4+0.1*i for i in range(80)]:
        for y in [-4+0.1*i for i in range(80)]:
            a_x=pow((x-Miu_x)/(1.4*sigma_x),2);
            a_y=pow((y-Miu_y)/(1.4*sigma_y),2);
            x_1.append(x)
            y_1.append(y)
            zz=(exp(-1*(a_x+a_y)))
            L.append(zz);
     ion()
     draw() # force a draw
     plot(x_1,y_1, L, zdir='z')
4

0 に答える 0