axes3Dを使用して楕円をプロットしている間、私はエラーで満たさはTypeErrorエラー:パイソン
:非結合方法プロットは()Axes3Dインスタンスに呼び出されなければなりません最初の引数として(代わりにndarrayインスタンスを得ました)
内部にランダムな点数を持つ楕円をプロットする必要があります。だから私はランダムモジュールを使用した。しかし、私はそのようなエラーの理由を特定できませんでした。プログラムは以下の通りです。
import random
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import *
fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
n = 1000000
a = input("Enter the value of semi major axis: \n")
b = input("Enter the value of semi minor axis: \n")
c = input("Enter the value of c \n")
x = random.uniform(-a, a, n)
y = random.uniform(-b, b, n)
z = random.uniform(-c, c, n)
r = (x ** 2/a ** 2) + (y ** 2/b ** 2) + (z ** 2/c ** 2)
rd = r[:] <= 1
xd = x[rd]
yd = y[rd]
zd = z[rd]
Axes3D.plot3D(xd, yd, zd, "*")
plot.show()
いくつかのエラーがある場合があります。私は初心者で、私を助けてください。
あなたの実際のコードを投稿してください、あなたが投稿したものは 'random.uniform(-a、a、n)'に失敗します。 – gboffi
エラーはあなたに何をするかを正確に伝えています(これは唯一の問題ではありません)。 plot3dの最初のパラメータとしてaxを使用してください! – sascha