如何使用Python在绘图中显示图像?

时间:2016-01-06 10:14:06

标签: python image matplotlib

我导入了matplotlib.pyplot和NumPy

我想在桌面上显示图片到情节,但我得到TypeError

代码:

img = (image) ( here do we need to give the location of the file or the file directly)

imshow(img, extent=[-25,25,-25,25], cmap = cm.bone)
colorbar()


Error: TypeError: Image data can not convert to float

我使用Pycharm作为我的想法。

2 个答案:

答案 0 :(得分:4)

你有点模棱两可

  

这里我们需要直接给出文件或文件的位置

不,不。您需要使用一些成像库来读取图像。 from html.parser import HTMLParser 无法读取图片!

例如,要阅读'png'图像,您可以:

img="C:\image.jpg"

在matplotlib的doc

上的Image tutorial阅读更多内容

答案 1 :(得分:0)

img是正确类型的 numpy数组吗?

如果您使用枕头等阅读图像。并且有一个Image对象,你必须从它获取numpy数组(img.getdata()

  

X:array_like,shape(n,m)或(n,m,3)或(n,m,4)

     

将X中的图像显示到当前轴。 X可以是浮点数组,a   uint8数组或PIL图像。如果X是一个数组,它可以有   以下形状:

     

MxN - 亮度(灰度,仅浮点数)MxNx3 - RGB(浮点或   uint8数组)MxNx4 - RGBA( float或uint8数组)    MxNx3和MxNx4浮点数组件的每个组件的值应在0.0到1.0范围内;

将img标准化,使其介于0.0和1.0之间,或将其转换为uint8(img=np.array(img, dtype=np.uint8))。