天天向上

假设初始个人能力值为 1,以一年 365 天为周期:

  1. 每天坚持进步 1%,计算每日能力变化;
  2. 每天退步 1%,计算每日能力变化;
  3. 隔天进步 1%,计算每日能力变化。

代码

import numpy as np
import pandas as pd
import matplotlib.pyplot as plt

base = 1.0
days = 365
up_rate = 0.01
down_rate = 0.01

progress_up = base * np.power(1 + up_rate, np.arange(days))
progress_down = base * np.power(1 - down_rate, np.arange(days))
progress_mid = base * np.power(1 + up_rate, np.arange(days) // 2)

df = pd.DataFrame({
    "天数": np.arange(days),
    "每天进步1%": progress_up,
    "每天退步1%": progress_down,
    "隔天进步1%": progress_mid
})

print("第365天的结果对比:")
print(df.iloc[-1, 1:])

plt.figure(figsize=(10, 6))
plt.plot(df["天数"], df["每天进步1%"], label="每天进步1%", color="red")
plt.plot(df["天数"], df["每天退步1%"], label="每天退步1%", color="blue")
plt.plot(df["天数"], df["隔天进步1%"], label="隔天进步1%", color="green")

plt.title("“天天向上”模型:365天的差距", fontsize=14)
plt.xlabel("天数", fontsize=12)
plt.ylabel("水平倍数", fontsize=12)
plt.legend()
plt.grid(alpha=0.3)
plt.savefig("天天向上结果.png", dpi=150)
plt.show()
 

输出

更多推荐