python 得到logistic方程的代码
时间: 2023-07-10 16:25:35 浏览: 103
下面是一个简单的Python代码,可以计算logistic方程:
```python
import numpy as np
import matplotlib.pyplot as plt
# 定义logistic方程
def logistic(r, x):
return r * x * (1 - x)
# 定义绘图函数
def plot_system(r, x0, n, ax=None):
# 绘制函数图像
t = np.linspace(0, 1)
ax.plot(t, logistic(r, t), 'k', lw=2)
ax.set_ylim(0, 1)
ax.set_xlabel('时间步')
ax.set_ylabel('Population')
# 绘制轨迹图像
x = x0
for i in range(n):
y = logistic(r, x)
ax.plot([i, i+1], [x, y], 'b', lw=2)
ax.plot([i], [x], 'ko', ms=5)
x = y
ax.plot([n, n+1], [x, x], 'bo', ms=5)
ax.text(n+0.1, x, f'x = {x:.2f}', va='center')
# 定义参数
r = 2.5 # growth rate
x0 = 0.1 # 初始种群
n = 30 # 时间步数
# 绘制轨迹图像和函数图像
fig, (ax0, ax1) = plt.subplots(nrows=1, ncols=2, figsize=(12, 6), sharey=True)
plot_system(r, x0, n, ax=ax0)
plot_system(3.2, x0, n, ax=ax1)
plt.show()
```
这段代码使用Matplotlib绘制了logistic方程的函数图像和轨迹图像。你可以通过调整参数`r`、`x0`和`n`来探索不同的情况。
阅读全文