gpt4 book ai didi

matplotlib - 清除 Matplotlib 中的子图

转载 作者:行者123 更新时间:2023-12-04 16:50:44 38 4
gpt4 key购买 nike

我在图中有许多子图 fig1 ,通过创建

ax = fig1.add_subplot(221)

然后我通过在每个子图中绘制东西
im=ax.plot(x,y)

并通过添加一些轴标签
ax.set_xlabel('xlabel')

然后我想完全清除特定的子图,如 When to use cla(), clf() or close() for clearing a plot in matplotlib? 中所述。 .然而问题是 ax.cla()ax.clear()似乎只从图中清除数据,而没有删除轴、轴刻度标签等。另一方面 plt.clf()清除整个图形。中间有什么吗?一个类似于 clf 的命令可以清除子图中的所有内容,包括轴标签?还是我只是以错误的方式使用了这些命令?

最佳答案

  • ax.clear()清除轴。也就是说,它会从轴中删除所有设置和数据,这样您就剩下一个轴,就像刚创建时一样。
  • ax.axis("off")关闭轴,从而隐藏所有轴脊和刻度标签。
  • ax.set_visible(False)使整个轴不可见,包括其中的数据。
  • ax.remove()从图中删除轴。

  • 完整示例:
    import matplotlib.pyplot as plt

    fig,axes = plt.subplots(2,3)
    for ax in axes.flat:
    ax.plot([2,3,1])

    axes[0,1].clear()
    axes[1,0].axis("off")
    axes[1,1].set_visible(False)
    axes[0,2].remove()

    plt.show()

    enter image description here

    关于matplotlib - 清除 Matplotlib 中的子图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47282918/

    38 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com