擅长:python、mysql、java
<p>索引错误是因为pcolormesh需要一个2D数组,而<code>arr</code>是一个1D向量。如果我理解正确,你的输入文件有</p>
<pre><code>0,1,z
0,2,z
...
0,ymax,z
...
1,1,z
1,2,z
...
xmax,ymax,z
</code></pre>
<p>在这种情况下,<code>meshgrid(x,y)</code>将无法工作,因为它需要类似于<code>meshgrid(range(xmax),range(ymax))</code>的东西,即没有重复值的向量。</p>
<p>在您的例子中,您需要找出有多少不同的x和y值,然后简单地将向量重塑为2D数组。</p>
<pre><code>shape = np.unique(x).shape[0],np.unique(y).shape[0]
x_arr = x.reshape(shape)
y_arr = y.reshape(shape)
z_arr = z.reshape(shape)
plt.pcolormesh(x_arr,y_arr,z_arr)
</code></pre>