2次元正規密度関数のヒートマップ
Simon J.D. Prince, Computer vision: models, learning and inference (2012) に頻繁に出てくるヒートマップに刺激されて真似てみた。
#coding: utf-8 import numpy as np import matplotlib.pyplot as plt import matplotlib.mlab as mlab def main(): x = np.linspace(-4.0, 4.0, 200) y = np.linspace(-4.0, 4.0, 200) X, Y = np.meshgrid(x, y) # 2次元正規分布 # matplotlib.mlab : MATLAB compatible command # matplotlib.mlab.bivariate_normal(X, Y, sigmax=1.0, sigmay=1.0, mux=0.0, muy=0.0, sigmaxy=0.0) # spherical covariance # Z = mlab.bivariate_normal(X, Y, 1.0, 1.0, 0.0, 0.0, 0.0) # diagonal covariance Z = mlab.bivariate_normal(X, Y, 2.0, 1.0, 0.0, 0.0, 0.0) # ヒートマップ plt.pcolor(X, Y, Z, cmap=plt.cm.hot) plt.colorbar() # タイトル plt.title('bivariate normal density') # ラベル plt.xlabel('$x$', size=12) plt.ylabel('$y$', size=12) plt.show() if __name__ == '__main__': main()
描画されたヒートマップを以下に示す。