配列とpylabのimshow()関数を使用して、2変量データにわたってガウス分布をプロットするコードがあります。 x[i,j]
のための私の式はi
とj
に対するガウスの製品ですPythonのグラフが正しくプロットされていない
from pylab import *
x = zeros((101,101))
mean_i = 50
mean_j = 50
sigma = 10
max_ = 100
for i in range(101):
for j in range(101):
x[i,j] = max_*exp(((-(i-mean_i)**2)-(j-mean_j)**2)/(2*(sigma**2)))
for i in range(101):
plot(i,x[i,50], 'rx')
show()
imshow(x)
show()
:私のコードは次のようになります。
コードを実行すると、2つのプロットが生成されます。 1つはi/j
配列のカラーマップで、中央に明るい点があり、ガウスのように崩壊し、もう1つはj = 50の値のi
のプロットなので、正規のガウス曲線にする必要があります。
これは起こることではありません。私がコードを実行すると、データが連続していないようなステップがあります。どうしてこれなの?それは私の方程式、または私の作図テクニックに問題がありますか?
シグマを10から10.0に変更しても問題が解決しました。そのような簡単な解決策...ありがとう! –