Python matplotlib - 图像标题未在循环中显示

dvd*_*940 2 python matplotlib imshow

我希望以图像名称作为标题循环显示图像。每个图像都显示在循环中,但标题没有。

在下面的函数中,img_listcontains 列表具有以下[image, image_title].

def display_images(img_list, cmap='gray', cols = 2, fig_size = (10, 10) ):
    """
    Display images in img_list
    """
    i = 1  # for subplot

    num_images = len(img_list)
    num_rows = num_images / cols

    plt.figure(figsize=fig_size)       

    for image in img_list:
        image_file_name = image[1]
        plt.subplot(num_rows, cols, i)        
        plt.title = image_file_name
        plt.imshow(image[0], cmap=cmap)        
        i += 1     

    plt.show()
Run Code Online (Sandbox Code Playgroud)

谢谢。

Imp*_*est 6

如果您重新分配plt.title,该title()函数将被字符串覆盖。

相反,您需要调用plt.title()函数。

plt.title(image_file_name)
Run Code Online (Sandbox Code Playgroud)

  • 谢谢 - 那行得通。对于找到此答案的其他人,进行更改后需要重新启动内核。否则你会得到一个 ''str' object is not callable'" 错误。 (2认同)