Python matplotlib:是否删除轴之间的水平间隙?

Python matplotlib:是否删除轴之间的水平间隙?,python,matplotlib,Python,Matplotlib,我似乎无法让子地块之间的水平间隙消失。有什么建议吗 代码: 为这段代码发布了示例,并保留了记号和框架 您正在为图形设置两个并发规则 一是轴线方面 ax.set_aspect(i) 这将迫使绘图始终遵循1:1的比例 另一个是将h_空间和w_空间设置为零。在这种情况下,matplotlib将尝试更改轴的大小,以将空间减少到零。当您将纵横比设置为1时,只要其中一条边彼此接触,轴的大小将不再改变。这会产生使图形水平分开的间隙 有两种方法可以迫使它们彼此靠近 您可以更改地物宽度,使它们彼此更接近 可

我似乎无法让子地块之间的水平间隙消失。有什么建议吗

代码:

为这段代码发布了示例,并保留了记号和框架


您正在为图形设置两个并发规则

一是轴线方面

ax.set_aspect(i)
这将迫使绘图始终遵循1:1的比例

另一个是将
h_空间
w_空间
设置为零。在这种情况下,matplotlib将尝试更改轴的大小,以将空间减少到零。当您将纵横比设置为1时,只要其中一条边彼此接触,轴的大小将不再改变。这会产生使图形水平分开的间隙

有两种方法可以迫使它们彼此靠近

  • 您可以更改地物宽度,使它们彼此更接近
  • 可以设置左右边缘的间距以使它们彼此更接近
使用您给出的示例,我修改了几行,以说明如何使用左右间距

fig = plt.figure()
for i in range(6):
    ax = fig.add_subplot(3,2,i)
    ax.plot(linspace(-1,1),sin(2*pi*linspace(-1,1)))
    draw()
    frame_range = [[]]

    ax.set_aspect(1)
    ax.set_xticks([])
    ax.set_yticks([])
#    ax.set_frame_on(False)
#    ax.add_patch(dt.PolygonPatch(provs[0],fc = 'None', ec = 'black'))


fig.tight_layout(pad=0,w_pad=0, h_pad=0)
subplots_adjust(left=0.25,right=0.75,wspace=0, hspace=0)
结果应该与下面的数字类似。 重要的是要记住,如果调整窗口大小,绘图将再次分开,具体取决于您是使其更高/更短还是更宽/更窄

希望能有帮助

可能存在的副本
fig = plt.figure()
for i in range(6):
    ax = fig.add_subplot(3,2,i)
    ax.plot(linspace(-1,1),sin(2*pi*linspace(-1,1)))
    draw()
    frame_range = [[]]

    ax.set_aspect(1)
    ax.set_xticks([])
    ax.set_yticks([])
#    ax.set_frame_on(False)
#    ax.add_patch(dt.PolygonPatch(provs[0],fc = 'None', ec = 'black'))


fig.tight_layout(pad=0,w_pad=0, h_pad=0)
subplots_adjust(left=0.25,right=0.75,wspace=0, hspace=0)