質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

Q&A

解決済

1回答

2260閲覧

3dbarのnp.nanの使い方がいまいちわかりません。

Fallout_18

総合スコア124

Python 3.x

Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

Python

Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

0グッド

0クリップ

投稿2018/07/02 07:07

編集2018/07/02 07:08

以下のax.bar3dのzが0の値をプロットしないようにしたいのですが、以下のように、書いたら全体が真っ赤に染まってしまいました。
変化前

python

1from mpl_toolkits.mplot3d import axes3d 2import matplotlib.pyplot as plt 3import numpy as np 4from matplotlib import style 5style.use('ggplot') 6 7fig = plt.figure() 8ax1 = fig.add_subplot(111, projection='3d') 9 10x3 = [1,2,3,4,5,6,7,8,9,10] 11y3 = [1,2,3,4,5,6,7,8,9,10] 12X,Y=np.meshgrid(x3,y3) 13z3 = np.zeros([10,10]) 14#dx = np.ones(10) 15#dy = np.ones(10) 16dz = np.zeros([10,10]) 17dz[3,3]=0 18dz[5,5]=2 19dz[1,7]=0 20dz[5,2]=1 21dz[1,0]=2 22dz[dz<=0.0]=np.nan 23ax1.bar3d(X.ravel(), Y.ravel(), z3.ravel(), 0.5, 0.5, dz.ravel(),color="red") 24 25ax1.set_xlabel('x axis') 26ax1.set_ylabel('y axis') 27ax1.set_zlabel('z axis') 28 29plt.show()

変化後

#エラー return umr_maximum(a, axis, None, out, keepdims) return umr_minimum(a, axis, None, out, keepdims)

どのようにmax,minを設定すれば、解決するのでしょうか?
ご指導、ご鞭撻のほど宜しくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答1

0

ベストアンサー

bar3d()nanを含んだデータの渡したときの挙動の原因はわかりませんが、単純に zの値が0より大きいときのデータのみを bar3d() の引数として渡すとよいのではないでしょうか。

from mpl_toolkits.mplot3d import axes3d import matplotlib.pyplot as plt import numpy as np from matplotlib import style style.use('ggplot') fig = plt.figure() ax1 = fig.add_subplot(111, projection='3d') x3 = [1,2,3,4,5,6,7,8,9,10] y3 = [1,2,3,4,5,6,7,8,9,10] X,Y=np.meshgrid(x3,y3) dz = np.zeros([10,10]) dz[3,3]=0 dz[5,5]=2 dz[1,7]=0 dz[5,2]=1 dz[1,0]=2 mask = (dz > 0.0) ax1.bar3d(X[mask].ravel(), Y[mask].ravel(), 0.0, 0.5, 0.5, dz[mask].ravel(), color='r') ax1.set_xlabel('x axis') ax1.set_ylabel('y axis') ax1.set_zlabel('z axis') plt.show()

投稿2018/07/02 11:04

magichan

総合スコア15898

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

Fallout_18

2018/07/03 15:09

解決しました!! 本当にありがとうございます。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問