如何模拟死亡率并将其视为点随着时间的推移消失

时间:2017-05-07 20:34:09

标签: python visualization simulation

所以,我刚刚使用scipy解决了一个人口死亡率的ODE模型,并将其绘制成2d图表与时间的关系。我认为,如果我可以将人群可视化,因为点在ODE定义的死亡率下消失。有哪些优秀的Python库和GUI可以处理这个问题?

添加。信息:

我如何解决ODE:

import scipy.integrate as spi
import numpy as np
import pylab as pl

L = 1500
alpha = 0.25
sigma = 0.75
TS = 1.0
ND = 120
m = 0.24
mu = 0.06
w = 10000
H0 = 45000 #initial number of hive bees
F0 = 15000 #initial number of forager bees
INPUT = (H0, F0)

def death_rates(INP, t):
    Y = np.zeros((2))
    V = INP #V[0] = H, V[1] = F
    Y[0] = ((L*(V[0]+V[1]))/(w+V[0]+V[1])) - V[0]*(alpha - sigma*(V[1]/(V[0]+V[1]))) - mu*V[0]
    Y[1] = V[0]*(alpha - sigma*(V[1]/(V[0]+V[1]))) - m*V[1]
    return Y

t_start = 0.0; t_end = ND; t_inc = TS
t_range = np.arange(t_start, t_end+t_inc, t_inc)
RES = spi.odeint(death_rates, INPUT, t_range)

print RES
pl.subplot(311)
pl.plot(RES[:,0], '-g', label='Hive Bees')
pl.xlabel('Time')
pl.ylabel('Hive Bees')
pl.subplot(312)
pl.plot(RES[:,1], '-r', label='Forager Bees')
pl.xlabel('Time')
pl.ylabel('Forager Bees')
pl.show()

生成以下图表: 2D plot of the population decline

基本上,我想做的是将结果设置为动画,因为最初在人口数N0处的点(蜜蜂)不断消失,直到它在人口N1处以60秒的速度平稳。

1 个答案:

答案 0 :(得分:1)

Plotly适用于Python。 " gapminder"此链接末尾的示例与您想要的类似。

向下滚动到最后。

https://plot.ly/python/animations/

这是一个屏幕截图 - 但它最好动画:

enter image description here

如果没有示例数据以及有关您想要的更多详细信息(我可以想象出与您描述的内容相符的一些内容),那么真的可以让您获得更多。