Matplotlib - 如何将图形并排放置?

Matplotlib - How to place figures next to each other?

我有以下代码:

def compare(f,a,b,c,d,n,points):
    """Plots 2 figures - one of the color map of f, and one of the color map of a rectangle [a,b] x [c,d], split
    into n^2 subareas, using the list of points to estimate the color map"""
    #fig, axes = plt.subplots(nrows=2, ncols=2)
    q = plt.figure(1)
    colorMapList(f,a,b,c,d,n,points)
    #q.show()
    p = plt.figure(2)
    colorMap(f)
    plt.show()

函数 colorMapListcolorMap 都是 return ax.contourf(Y,X,z).

当我按照我的方式编写代码时,程序会输出两个图表,一个在另一个下方。我怎样才能让图表水平并排显示? 谢谢!

如果您希望两个图都显示在一个图形上,那么您可以使用 plt.subplot(121)plt.subplot(122)。第一个索引是行数,第二个索引是列数。第三个索引是图形布局的位置计数,因此如果它是 subplot(221) 将是图形的 2x2 显示,1 表示左上角的图形。然后,subplot(222) 将在右上角,subplot(223) 将在左下角,subplot(224) 将在右下角。这遵循每行从左上到右的顺序。

但是,如果您想绘制 2 个不同的数字 side-by-side,那么您可以查看 this 解决方案。