plt (matplotlib) 未在新窗口中显示

Mou*_*low 2 python matplotlib figure subplot canopy

我正在尝试使用and对两个图像myImageReflectanceImage进行子绘制,问题是该图形显示在控制台中而不是在新窗口中,我需要将该图形放在一个新的单独窗口中才能保存并在外部使用代码。matplotlibplt

我相信问题实际上与我使用的Linux (Ubuntu)版本有关?或者我遗漏了一些代码?

    import matplotlib.pyplot as plt
    import numpy as np
    import cv2
    
    img_directory = "/XXX/XXX/IMG_XXX.TIF"

    myImage=cv2.imread(img_directory)

    plt.figure()
    plt.subplot(221), plt.imshow(myImage),plt.title('Original Image')
    plt.subplot(222), 
    plt.imshow(np.array(reflectanceImage).reshape(1280,960).T),plt.title('Reflectance')p
Run Code Online (Sandbox Code Playgroud)

感谢您的帮助。

mrk*_*mrk 6

如果您使用matplotlib,则需要使用显示图像plt.show(),除非您不在交互模式下:

plt.figure()
plt.imshow(sample_image) 
plt.show()  # display it
Run Code Online (Sandbox Code Playgroud)

注意:请注意,您不必显示图像即可保存它。

plt.savefig('image.png')
Run Code Online (Sandbox Code Playgroud)