をあなたが規則的な格子を持っていない場合は、三角形の面補間を使用することは良い選択かもしれません。
この例と上記の例では、長いデータがある場合は、プロットの境界を確認するだけです。
import numpy as np
import seaborn as sns
import matplotlib.pyplot as plt
import matplotlib.tri as tri
sns.set(style="white")
x = np.array([1,4,6,7,8,2,6])
y = np.array([7,7,8,9,0,1,2])
z = np.array([8,9,7,1,2,2,3])
fig = plt.figure(figsize=(10, 10))
ax = fig.add_subplot(111)
nptsx, nptsy = 100, 100
xg, yg = np.meshgrid(np.linspace(x.min(), x.max(), nptsx),
np.linspace(y.min(), y.max(), nptsy))
triangles = tri.Triangulation(x, y)
tri_interp = tri.CubicTriInterpolator(triangles, z)
zg = tri_interp(xg, yg)
# change levels here according to your data
levels = np.linspace(0, 10, 5)
colormap = ax.contourf(xg, yg, zg, levels,
cmap=plt.cm.Blues,
norm=plt.Normalize(vmax=z.max(), vmin=z.min()))
# plot data points
ax.plot(x, y, color="#444444", marker="o", linestyle="", markersize=10)
# add a colorbar
fig.colorbar(colormap,
orientation='vertical', # horizontal colour bar
shrink=0.85)
# graph extras: look at xlim and ylim
ax.set_xlim((0, 10))
ax.set_ylim((0, 10))
ax.set_aspect("equal", "box")
plt.show()
この
が出力される。

これは非常に有用であるが、私はそれぞれx、y、zのアレイの411点の大規模なデータセットを持っていることを言います。このプログラムで何を変える必要がありますか? – Cosmoman
@Cosmoman:z = f(x、y)のような解析関数がありますか? – Mahdi
いいえ、私はちょうど特定のz値(配列3)に対応する(x(配列1)、y(配列2)を持つ)3つの配列を持っています。 – Cosmoman