Python 尝试使用PIL和BytesIO显示图像,但不返回任何结果
我正在尝试显示数据集中的徽标。 数据集如下所示:Python 尝试使用PIL和BytesIO显示图像,但不返回任何结果,python,image,png,bytesio,Python,Image,Png,Bytesio,我正在尝试显示数据集中的徽标。 数据集如下所示: Player Club Logo tom https://abc.png jerry https://def.png peter https://frf.png woody https://awt.png 但是,它没有给我任何标识。它只显示了4个空网格框。我的代码如下。 我也尝试过使用im=Image.open(BytesIO(r.content)).show(),但
Player Club Logo
tom https://abc.png
jerry https://def.png
peter https://frf.png
woody https://awt.png
但是,它没有给我任何标识。它只显示了4个空网格框。我的代码如下。
我也尝试过使用im=Image.open(BytesIO(r.content)).show()
,但最终在我的计算机上打开了徽标
import matplotlib.pyplot as plt
import requests
from PIL import Image
from io import BytesIO
fig, ax = plt.subplots(2,2, figsize=(2,2))
for i in range(4):
r = requests.get(df['Club Logo'][i])
im = Image.open(BytesIO(r.content))
plt.show()
谢谢从这些图片开始:
“0.png”
:
“1.png”
:
“2.png”
:
“3.png”
:
我想你想要这个:
#!/usr/bin/env python3
from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
fig, ax = plt.subplots(2,2, figsize=(2,2))
for i in range(4):
# Load image and make into Numpy array
im = Image.open(f'{i}.png').convert('RGB')
na = np.array(im)
# Shove into the plot
ax[i%2][i//2].imshow(na)
fig.show()
你好,马克,谢谢你的帮助!我只是想知道这行im=Image.open(f'{I}.png').convert('RGB')。。。f{i}是指文件吗?我确实尝试过,但它返回给我的[Errno 2]没有这样的文件或目录:“0.png”。我使用了这个“im=Image.open(BytesIO(r.content)).convert('RGB')”,并成功地获得了4张图片中的3张,其中1张网格仍然是黑色的。这可能与您的URL有关。我的观点是,您的初始代码缺少两行内容,这两行内容实际上将图像放入绘图中。我的回答解决了您的问题吗?如果是这样,请考虑接受它作为您的答案-点击空心蜱/支票旁边的选票计数。如果没有,请说出什么不起作用,以便我或其他人可以进一步帮助您。谢谢