いくつかの計算から次のデータを取得しました。
x, y, temp
ここで、xとyは、寸法が10x10の2Dボックス内のポイントの座標です。間隔は0.1です。したがって、10000の異なるポイントがあり、結果のファイルは次のようになります。
0.0 0.0 5.6
0.1 0.0 3.2
0.2 0.0 4.1
...
9.9 9.9 2.1
100x100ピクセルのmatplotlibで2Dプロットの種類を準備します。各ピクセルには、値が3列目。データはこのファイルから読み取られます。 matplotlibでこれに最適なアプローチは何ですか
X、y、tempトリプルが並べられているように見える(行にリストされている)方法に基づいて、「temp」列の形状を変更できます。
例えば。
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.cm as cm
x,y,temp = np.loadtxt('data.txt').T #Transposed for easier unpacking
nrows, ncols = 100, 100
grid = temp.reshape((nrows, ncols))
plt.imshow(grid, extent=(x.min(), x.max(), y.max(), y.min()),
interpolation='nearest', cmap=cm.Gist_Rainbow)
plt.show()
編集:おそらく実際にhsv
は、参照していた「レインボー」カラーマップです。matplotlib.cm.Gist_Rainbow
。 matplotlib.cm.hsv
は下部の赤に戻ります。こちらをご覧ください: https://matplotlib.org/users/colormaps.html カラーマップのリスト。
X、y、tempトリプレットが実際に順序付けされていない場合は、ポイントを削除する必要があります。この例を my answer で前の質問に示しました。