#python #animation #colors #3d
Вопрос:
Я хочу создать дискретную 3d-анимацию с изменяющимися цветами точек. У меня есть списки. Проблема в том, что я не знаю, как оживлять. У меня есть трехмерная функция вероятности с течением времени. Я хочу отобразить значение вероятности в виде цвета от черного до белого.(чем ближе к 0, тем ближе к белому. чем ближе к 1, тем ближе к черному) Также я хочу, чтобы цвета точек менялись со временем. Не могли бы вы порекомендовать соответствующий код?
P=[[[[0 for i1 in range(0,T 1)] for i2 in range(0,6)] for i3 in range(0,6)] for i4 in range(0,6)] P[1][0][1][0]=1 a,b,c=1/5.2,0.03,1/12.5 def f(S,E,I,t): s=0 R=N-S-E-I if(Ilt;N and Rgt;0): s =c*(I 1)*P[N-S][E][I 1][t]/N if(Slt;N and Egt;0): s =b*(S 1)*I*P[N-S-1][E-1][I][t]/(N**2) if(Elt;N and Igt;0): s =a*(E 1)*P[N-S][E 1][I-1][t]/N if(Egt;0 and Ilt;N): s-=a*E*P[N-S][E][I][t]/N if(Sgt;N-5 and Elt;N): s-=b*S*I*P[N-S][E][I][t]/(N**2) if(Igt;0 and Rlt;N): s-=c*I*P[N-S][E][I][t]/N return s def g(S,E,I,t): s=0 R=N-S-E-I k=f(S,E,I,t) if(Ilt;N and Rgt;0): s =c*(I 1)*(P[N-S][E][I 1][t] h/2*f(S,E,I 1,t))/N if(Slt;N and Egt;0): s =b*(S 1)*I*(P[N-S-1][E-1][I][t] h/2*f(S 1,E-1,I,t))/(N**2) if(Elt;N and Igt;0): s =a*(E 1)*(P[N-S][E 1][I-1][t] h/2*f(S,E 1,I-1,t))/N if(Egt;0 and Ilt;N): s-=a*E*(P[N-S][E][I][t] h/2*k)/N if(Sgt;N-5 and Elt;N): s-=b*S*I*(P[N-S][E][I][t] h/2*k)/(N**2) if(Igt;0 and Rlt;N): s-=c*I*(P[N-S][E][I][t] h/2*k)/N return s h=0.1 for t in range(0,T): for S in range(N 1-5,N 1): for E in range(0,N 1-S): for I in range(0,N 1-S-E): P[N-S][E][I][t 1]=P[N-S][E][I][t] h*g(S,E,I,t)```
Комментарии:
1. Пожалуйста, предоставьте достаточно кода, чтобы другие могли лучше понять или воспроизвести проблему.