Python 如何将类似网格的matplotlib绘图转换为类似平滑渐变的曲面?

Python 如何将类似网格的matplotlib绘图转换为类似平滑渐变的曲面?,python,matplotlib,plot,Python,Matplotlib,Plot,我正在尝试使用matplotlib.pyplot中的imshow函数绘制2D numpy数组(它是使用自组织映射的码本生成的U矩阵的绘图) 绘图由以下行生成: matplotlib.pyplot.imshow(umat, cmap=plt.cm.get_cmap('RdYlBu_r'), alpha=1) 这里,umat是我试图绘制的2D numpy数组。以下是生成的绘图: 它将每个节点(点)显示为一个不同的正方形 我想生成这样的东西 , 显示一个平滑的表面,但我无法找到一个方法来做到这一点

我正在尝试使用
matplotlib.pyplot
中的
imshow
函数绘制2D numpy数组(它是使用自组织映射的码本生成的U矩阵的绘图)

绘图由以下行生成:

matplotlib.pyplot.imshow(umat, cmap=plt.cm.get_cmap('RdYlBu_r'), alpha=1)
这里,umat是我试图绘制的2D numpy数组。以下是生成的绘图:

它将每个节点(点)显示为一个不同的正方形

我想生成这样的东西

,


显示一个平滑的表面,但我无法找到一个方法来做到这一点。有人能演示一下怎么做吗?

如果您想使用imshow,可以尝试不同的插值方法,请参阅

例如:
ax.imshow(网格,插值=interp_方法,cmap='viridis')
其中,
interp\u方法

methods = [None, 'none', 'nearest', 'bilinear', 'bicubic', 'spline16', 'spline36', 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric', 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', 'lanczos']

谢谢这正是我要找的。你能为学习绘图提供一个好的起点吗?我发现matplotlib网站上的例子很有启发性,但这不是课程或类似的东西。我之前看过这个图库,但直到图稿有代码链接为止。谢谢