如何消除马赛克上子地块之间的间隙?传统的方法不适用于马赛克:

plt.subplots_adjust(wspace=0, hspace=0)

我也试过gridspec_kw次,但没有成功.

import matplotlib.pyplot as plt
import numpy as np

ax = plt.figure(layout="constrained").subplot_mosaic(
    """
    abcde
    fghiX
    jklXX
    mnXXX
    oXXXX
    """,
    empty_sentinel="X",
    gridspec_kw={
        "wspace": 0,
        "hspace": 0,
    },
)


for k,ax in ax.items():
    print(ax)
    #ax.text(0.5, 0.5, k, transform=ax.transAxes, ha="center", va="center", fontsize=8, color="darkgrey")
    ax.set_xticklabels([])
    ax.set_yticklabels([])
    ax.tick_params(length = 0)

The code generates: enter image description here

推荐答案

这不是由subplot_mosaic引起的,而是因为指定了layout.如果使用约束布局或紧密布局,布局管理器将取代自定义调整.

删除布局管理器,两种方法都可以使用:

  • gridspec_kw

    fig = plt.figure() # without layout param
    ax = fig.subplot_mosaic(
        """
        abcde
        fghiX
        jklXX
        mnXXX
        oXXXX
        """,
        empty_sentinel="X",
        gridspec_kw={
            "wspace": 0,
            "hspace": 0,
        },
    )
    
  • subplots_adjust

    fig = plt.figure() # without layout param
    ax = fig.subplot_mosaic(
        """
        abcde
        fghiX
        jklXX
        mnXXX
        oXXXX
        """,
        empty_sentinel="X",
    )
    fig.subplots_adjust(wspace=0, hspace=0)
    

Python相关问答推荐

如何在图片中找到这个化学测试条?OpenCV精明边缘检测不会绘制边界框

当使用keras.utils.Image_dataset_from_directory仅加载测试数据集时,结果不同

查找两极rame中组之间的所有差异

Excel图表-使用openpyxl更改水平轴与Y轴相交的位置(Python)

如何让程序打印新段落上的每一行?

如何列举Pandigital Prime Set

Julia CSV for Python中的等效性Pandas index_col参数

基于字符串匹配条件合并两个帧

如何使用pytest来查看Python中是否存在class attribution属性?

如何更新pandas DataFrame上列标题的de值?

从旋转的DF查询非NaN值

如何在海上配对图中使某些标记周围的黑色边框

在numpy数组中寻找楼梯状 struct

在Django中重命名我的表后,旧表中的项目不会被移动或删除

使用SQLAlchemy从多线程Python应用程序在postgr中插入多行的最佳方法是什么?'

操作布尔值的Series时出现索引问题

Pandas:将值从一列移动到适当的列

分解polars DataFrame列而不重复其他列值

在任何要保留的字段中添加引号的文件,就像在Pandas 中一样

Django更新视图未更新