nano_exit

基礎的なことこそ、簡単な例が必要だと思うのです。

行列要素を視覚的にチェックする方法

行列要素をなんとか可視化したくて、三次元プロット散布図で表現してみた。
Pythonでデータを可視化するmatplotlib初級(3D散布図編) - しぷぜん

from mpl_toolkits.mplot3d import Axes3D
import matplotlib.pyplot as plt
import numpy as np

N = 20
row = range( N )
column = range( N )

X, Y = np.meshgrid( row, column )
X = X.reshape( N * N )
Y = Y.reshape( N * N )

fig = plt.figure()
ax = fig.add_subplot( 111, projection='3d' )
for i in range(3):
    matrix_reshape_1d = np.random.rand( N * N )
    # default marker size = 20
    ax.scatter( X, Y, [i] * ( N * N ), s = matrix_reshape_1d * 20. )
plt.show()

f:id:koideforest:20180501190738p:plain

例えば行列全体が時間に依存していて、それの時間発展を見たい時には良さそう。
複素数の場合には、色で位相を表現することになると思うが、色は配列で渡せないので、一点一点をいちいちプロットしないと行けない気がする。行列サイズが大きいと、おそらく途中で限界が来るだろう。