teratail header banner
teratail header banner
質問するログイン新規登録

回答編集履歴

1

説明、コメントを追加

2019/09/03 13:55

投稿

nomuken
nomuken

スコア1627

answer CHANGED
@@ -15,10 +15,12 @@
15
15
 
16
16
  x = np.arange(-np.pi, np.pi, 0.1)
17
17
 
18
+ # funcの数だけyを準備する。
18
19
  y = []
19
20
  for func in funcs:
20
21
  y.append(func(x))
21
22
 
23
+ # yの数(=funcsの数)だけlineを作る
22
24
  lines = []
23
25
  for item in y:
24
26
  line, = ax.plot(x, item)
@@ -26,6 +28,8 @@
26
28
 
27
29
  while True:
28
30
  x += 0.1
31
+
32
+ # funcの数だけ演算とグラフのデータ更新をする。
29
33
  for i in range(len(funcs)):
30
34
  y[i] = funcs[i](x)
31
35
  lines[i].set_data(x, y[i])
@@ -36,4 +40,6 @@
36
40
  ```
37
41
 
38
42
  Python初心者の私にはこれが限界でした。
39
- funcs.appendを増やしていけばその数に従ってグラフを増やしていきます。
43
+ funcs.appendを増やしていけばその数に従ってグラフを増やしていきます。
44
+
45
+ 配列をうまく使うのがポイントだと思います。データだけでなく関数(今回はラムダ式)も配列に含めることができます。