強度プロットを作成する必要があります。Python - 補間のない強度マップ
実際のデータからインポートされたx、y、z値の3つのリスト:x_list, y_list, z_list
があります。これらの各リストには200個の値が含まれています。したがって、各x、yカップルに対応するzの値が存在する。
私は、ウェブ上でいくつかの検索とのStackOverflow上の別の質問の後に、次のことを試してみました:
import numpy as np
import pylab as plt
data = np.loadtxt('data.d')
x_list = data[:,0]
y_list = data[:,1]
z_list = data[:,2]
from scipy.interpolate import interp2d
f = interp2d(x_list,y_list,z_list,kind="linear")
x_coords = np.arange(min(x_list),max(x_list)+1)
y_coords = np.arange(min(y_list),max(y_list)+1)
Z = f(x_coords,y_coords)
fig = plt.imshow(Z,
extent=[min(x_list),max(x_list),min(y_list),max(y_list)],
origin="lower")
fig.axes.set_autoscale_on(False)
plt.scatter(x_list,y_list,400,facecolors='none')
plt.show()
これは、補間を使用し、私はそれは私が必要とする正確に何であることを確認していません。 200 x、yのカップルに対応するzの200個の値だけをプロットする方法はありますか?明らかに私はまだ何らかの「強度関係」が必要ですが、私は200点のz値の「強度」を解釈する方法がない散布図を持つことはできません。
値が補間されている理由はありません、かなり明白ですか? f = interp2d(...、Z = f(...、plt.imshow(Z ... –
@ tommy.carstensenはい、私は補間をしたくないのですが、これはplt.imshowではなく、それはうまくいきますが、私は補間を望んでいません。 – johnhenry
'Z = np.reshape(z_list、(max(x_list)、max(y_list)))')を実行することができます。 –