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

回答編集履歴

1

動くソースコードを追加

2020/07/03 09:51

投稿

yymmt
yymmt

スコア1615

answer CHANGED
@@ -5,4 +5,37 @@
5
5
  ```python
6
6
  a1 = np.maximum(a[i, :, :], 0)
7
7
  ```
8
- の間違いではないでしょうか?
8
+ の間違いではないでしょうか?
9
+
10
+ [追記]
11
+ メッシュの次元が逆転していましたので、上記に加えて
12
+ ```python
13
+ x, y = np.meshgrid(x, y, indexing="ij")
14
+ ```
15
+ とする必要があります。
16
+
17
+ さらに
18
+ ```python
19
+ for i in range(10,a.shape[0],10):
20
+ ```
21
+ ですが、a.shapeは800なので80個の図を並べることになりますので、ここは100の間違いでしょう。
22
+
23
+ 上記全てを考慮したコードは下記となります。
24
+ ```python
25
+ a = reference
26
+
27
+ fig = plt.figure(figsize=(16, 8))
28
+ x = np.linspace(0, a.shape[1], a.shape[1]) #
29
+ y = np.linspace(0, a.shape[2], a.shape[2]) #
30
+ x, y = np.meshgrid(x, y, indexing="ij")
31
+
32
+ axs = []
33
+ for i in range(0, a.shape[0], 100):
34
+ ax = fig.add_subplot(2, 4, i // 100 + 1)
35
+ a1 = np.maximum(a[i, :, :], 0)
36
+ ax.contourf(x, y, a1, cmap="gray")
37
+ ax.set_title("{}".format(i))
38
+ axs.append(ax)
39
+
40
+ plt.show()
41
+ ```