それ,numpy で書かない?--5--
Python ではリストがよく使われる。また,for ループが遅いのでリストに特化したリスト内包表記も推奨されることが多い。
それなりの根拠があるからではあるが...
課題:リストではなく一次元配列を使う
副次効果:他の部分のプログラムもシェープアップされる
以下の記事を素材とさせていただき,
https://qiita.com/Kazuma-Nakano/items/8294f96698e792614a9b
以下のように書き換えてみる。
import numpy as np
import matplotlib.pyplot as plt
def plot(l_inf = 20, K = 0.3, color = "black"): # 繰り返し処理をまとめる
t = np.arange(0, 25, 0.1) # 簡単に,刻みを細かくできる
lt = l_inf*(1 - np.exp(-K*t)) # ベクトル演算できる(組み込み関数を使おう)
ax.plot(t, lt, color=color, label="K=" + str(K))
fig, ax = plt.subplots()
ax.set_xlabel('t') # x軸ラベル
ax.set_ylabel('lt') # y軸ラベル
ax.grid() # 罫線を引く
plot(20, 0.3, "black") # 条件を変えて描画するのが簡単にできる
plot(20, 0.5, "red")
plot(20, 0.7, "blue")
ax.legend(loc=0)
plt.show()