lx1506558705 2023-10-14 19:02 采纳率: 25%
浏览 3
已结题

plt.subplot()调用问题

调用plt.subplot()函数后图像单独显示,而不是所有图像在同一张大图上,该如何解决这个问题
代码如下:


plt.figure(figsize=(16,8))
for i in range(len(image[:6])):
    img=image[:6][i].numpy()
    img=np.squeeze(img)
    label_img=label[:6][i].numpy()
    plt.subplot(2,4,i+1)
    plt.title(label_img)
    plt.imshow(img)
    plt.show()

输出如图

img

  • 写回答

1条回答 默认 最新

  • CSDN-Ada助手 CSDN-AI 官方账号 2023-10-14 20:56
    关注

    【以下回答由 GPT 生成】

    问题分析: 从代码中可以看出,使用了plt.subplot()函数来创建子图,但是最终显示的子图总是不正确。希望得到正确的子图显示结果。

    解决方案: plt.subplot()函数的三个参数分别表示子图布局的行数,列数和当前子图的索引。在代码中,设置的行数为2,列数为4,但是最终显示的子图数量超过了设定的范围。

    修改代码的部分如下:

    plt.figure(figsize=(16, 8))
    for i in range(len(image[:6])):
        img = image[:6][i].numpy()
        img = np.squeeze(img)
        label_img = label[:6][i].numpy()
        plt.subplot(2, 3, i+1)  # 修改此处的列数为3
        plt.title(label_img)
        plt.imshow(img)
    plt.show()  # 将plt.show()放在for循环外,只显示一次图像
    

    如此一来,每次循环时,会自动在指定位置上创建子图,并进行图像显示。一共需要创建2行3列共6个子图来显示图片。

    这样,就能够正确显示多个子图的结果了。

    请注意,根据图片输出效果,需要根据具体需求调整子图的布局参数。



    【相关推荐】



    如果你已经解决了该问题, 非常希望你能够分享一下解决方案, 写成博客, 将相关链接放在评论区, 以帮助更多的人 ^-^
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 10月23日
  • 已采纳回答 10月15日
  • 修改了问题 10月14日
  • 创建了问题 10月14日

悬赏问题

  • ¥15 问题遇到的现象和发生背景 360导航页面千次ip是20元,但是我们是刷量的 超过100ip就不算量了,假量超过100就不算了 这是什么逻辑呢 有没有人能懂的 1000元红包感谢费
  • ¥30 计算机硬件实验报告寻代
  • ¥15 51单片机写代码,要求是图片上的要求,请大家积极参与,设计一个时钟,时间从12:00开始计时,液晶屏第一行显示time,第二行显示时间
  • ¥15 用C语言判断命题逻辑关系
  • ¥15 原子操作+O3编译,程序挂住
  • ¥15 使用STM32F103C6微控制器设计两个从0到F计数的一位数计数器(数字),同时,有一个控制按钮,可以选择哪个计数器工作:需要两个七段显示器和一个按钮。
  • ¥15 在yolo1到yolo11网络模型中,具体有哪些模型可以用作图像分类?
  • ¥15 AD9910输出波形向上偏移,波谷不为0V
  • ¥15 淘宝自动下单XPath自动点击插件无法点击特定<span>元素,如何解决?
  • ¥15 曙光1620-g30服务器安装硬盘后 看不到硬盘