質問編集履歴

3

内容を簡潔にした

2018/07/02 07:04

投稿

Fallout_18
Fallout_18

スコア124

test CHANGED
@@ -1 +1 @@
1
- ax.bar3dの影につ
1
+ ax.bar3dのnp.nanの使
test CHANGED
@@ -1,23 +1,83 @@
1
- きれいに整えていま
1
+ 以下のax.bar3dのzが0の値プロットしなようしたいのですが、以下のように、書いたら全体が真っ赤に染まっしまいました
2
2
 
3
- 言葉で説明しにくいのですが、以下の図のzの値が0の部分(xy平面上の四角いポチポチのところです)がbar表示されていて、この余計な部分を取り除きたいのですが、その該当部分のコードを掲載します。
4
-
5
- bar3dに関して、このような処理がネットに載っていなかったので質問しました。
6
-
7
- ![](fda43c39603c1c06c9c04e7b48d2e93c.png)
3
+ ![変化前](d4b7f7003ed9dab8f92f673b91a67872.png)
8
4
 
9
5
  ```python
6
+
7
+ from mpl_toolkits.mplot3d import axes3d
8
+
9
+ import matplotlib.pyplot as plt
10
+
11
+ import numpy as np
12
+
13
+ from matplotlib import style
14
+
15
+ style.use('ggplot')
16
+
17
+
18
+
19
+ fig = plt.figure()
20
+
21
+ ax1 = fig.add_subplot(111, projection='3d')
22
+
23
+
24
+
25
+ x3 = [1,2,3,4,5,6,7,8,9,10]
26
+
27
+ y3 = [1,2,3,4,5,6,7,8,9,10]
28
+
29
+ X,Y=np.meshgrid(x3,y3)
30
+
31
+ z3 = np.zeros([10,10])
32
+
33
+ #dx = np.ones(10)
34
+
35
+ #dy = np.ones(10)
36
+
37
+ dz = np.zeros([10,10])
38
+
39
+ dz[3,3]=0
40
+
41
+ dz[5,5]=2
42
+
43
+ dz[1,7]=0
44
+
45
+ dz[5,2]=1
46
+
47
+ dz[1,0]=2
48
+
49
+ dz[dz<=0.0]=np.nan
50
+
51
+ ax1.bar3d(X.ravel(), Y.ravel(), z3.ravel(), 0.5, 0.5, dz.ravel(),color="red")
52
+
53
+
54
+
55
+ ax1.set_xlabel('x axis')
56
+
57
+ ax1.set_ylabel('y axis')
58
+
59
+ ax1.set_zlabel('z axis')
60
+
61
+
62
+
63
+ plt.show()
64
+
65
+ ```
66
+
67
+ ![変化後](150d6adf89df889e650a4dbb0984b5d9.png)
10
68
 
11
69
 
12
70
 
13
71
  ```
14
72
 
15
- 私が考えるに、
73
+ #エラー
16
74
 
17
- ```python
75
+ return umr_maximum(a, axis, None, out, keepdims)
18
76
 
19
- ax.bar3d(Y.ravel(), X.ravel(), p_map.ravel() ,0.5, 0.5, -p_map.ravel(),color =clrs)
77
+ return umr_minimum(a, axis, None, out, keepdims)
20
78
 
21
79
  ```
22
80
 
23
- の部分で全体に色を指定してしっているでこのようになってしまうと思ったのですが、ただ、clrsのところでz軸の値にだけ色しているので、、、、なぜこうなるのでしょうか?
81
+ すいせん、どのようにmax,minるのでしょうか?
82
+
83
+ ご指導、ご鞭撻のほど宜しくお願い致します。

2

コードをかいた

2018/07/02 07:04

投稿

Fallout_18
Fallout_18

スコア124

test CHANGED
File without changes
test CHANGED
@@ -8,45 +8,7 @@
8
8
 
9
9
  ```python
10
10
 
11
- fig = plt.figure()
12
11
 
13
- ax = Axes3D(fig, rect=(0.1,0.1,0.8,0.8))
14
-
15
- X,Y = np.meshgrid(x_list, y_list)
16
-
17
- ax.set_xlabel("x",fontsize=24)
18
-
19
- ax.set_ylabel("y",fontsize=24)
20
-
21
- ax.set_zlabel("|φ^2|",fontsize=18)
22
-
23
- ax.set_xlim(2*m,0)
24
-
25
- ax.set_ylim(0,3*m)
26
-
27
- ax.set_zlim(0,0.01)
28
-
29
- offset = p_map.ravel() + np.abs(p_map.min())
30
-
31
- fracs = offset.astype(float)/offset.max()
32
-
33
- norm = colors.Normalize(fracs.min(), fracs.max())
34
-
35
- clrs = cm.cool(norm(fracs))
36
-
37
- ax.bar3d(Y.ravel(), X.ravel(), p_map.ravel() ,0.5, 0.5, -p_map.ravel(),color =clrs)
38
-
39
- ax.w_xaxis.set_pane_color((0, 0, 0, 0))
40
-
41
- ax.w_yaxis.set_pane_color((0, 0, 0, 0))
42
-
43
- ax.w_zaxis.set_pane_color((0, 0, 0, 1))
44
-
45
- ax.grid(color="white")
46
-
47
- ax.grid(False)
48
-
49
- plt.show()
50
12
 
51
13
  ```
52
14
 

1

タイトル

2018/07/02 06:49

投稿

Fallout_18
Fallout_18

スコア124

test CHANGED
@@ -1 +1 @@
1
- ax.bar3dが原因なか、meshgridが原因なのかわかりません。
1
+ ax.bar3dの影について
test CHANGED
File without changes