如何通过Pillow包在Jupyter中实现图像的inline inline显示?

2026-05-27 03:571阅读0评论SEO问题
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计905个文字,预计阅读时间需要4分钟。

如何通过Pillow包在Jupyter中实现图像的inline inline显示?

1. 使用Pillow包打开图片时,图片会自动在新窗口中显示: python from PIL import Image img=Image.open('data/empire.jpg') img.show()

2.在Jupyter Notebook的浏览器上边显示图片,可以使用matplotlib.pyplot模块:

python import matplotlib.pyplot as plt plt.imshow(img)

1.单独使用Pillow包时,图片会弹出新窗口显示:

from Pillow import Image img = Image.open('data/empire.jpg') img.show()

2.我想要在jupyter notebook的浏览器上边显示图片怎么办?

可以使用matplotlab.pyplot 和 Pillow 结合使用

%matplotlib inline import matplotlib.pyplot as plt from PIL import Image img = Image.open('./img.png', 'r') plt.imshow(img) plt.axis('on') # 关掉坐标轴为 off plt.title('image') # 图像题目 plt.show()

例子如下:

3.pillow显示灰色图片+plt显示多个图片

%matplotlib inline import matplotlib.pyplot as plt from PIL import Image img = Image.open('./img.png', 'r') gray = img.convert('L') r,g,b = img.split() #注意:gray和r,g,b不一样,gray是三者通过公式算出来的 img_merged = Image.merge('RGB', (r, g, b)) #plt.figure(figsize=(10,5)) #设置窗口大小 plt.suptitle('Multi_Image') # 图片名称 plt.subplot(2,3,1), plt.title('imge:oringe') plt.imshow(img), plt.axis('off') plt.subplot(2,3,2), plt.title('gray:weicaise') plt.imshow(gray), plt.axis('off') plt.subplot(2,3,3), plt.title('gray:true')# 这里必须加 cmap='gray' ,否则尽管原图像是灰度图(下图1),但是显示的是伪彩色图像(下图2)(如果不加的话) plt.imshow(gray,cmap='gray'), plt.axis('off') plt.subplot(2,3,4), plt.title('r') plt.imshow(r,cmap='gray'), plt.axis('off') plt.subplot(2,3,5), plt.title('g') plt.imshow(g,cmap='gray'), plt.axis('off') plt.subplot(2,3,6), plt.title('b') plt.imshow(b,cmap='gray'), plt.axis('off') plt.show()

补充知识:jupyter(ipython)内嵌问题:%pylab inline的使用

在使用jupyter(ipython新版本)的画图的过程中遇到了一个有关内嵌命令的问题,将其记录如下:

如何通过Pillow包在Jupyter中实现图像的inline inline显示?

1、案例描述

一个超级简单的画图程序,因为jupyter是一个C/S分布式的python编辑环境,是一个基于客户端web页面的在线编辑器,你可以在浏览器中输入服务器的ip地址及jupyter的端口号(默认为8888),也可以自己的本机做服务器(地址为localhost:8888)

未修改的代码如下:

%matplotlib inline import numpy as np import matplotlib.pyplot as plt #以自然数序列作为多项式的系数,使用polyld函数创建多项式 func = np.poly1d(np.array([1,2,3,4]).astype(float)) print func #使用Numpy的linspace函数创建X轴的数值,在-10和10之间产生30个均匀分布的值 x=np.linspace(-10,10,30) #计算我们在第一步中创建的多项式的值 y=func(x) plt.plot(x,y) plt.xlabel('x',fontsize=12) plt.ylabel('y(x)',fontsize=12) plt.show()

2、报错:

错误提示:ImportError: libXext.so.6: cannot open shared object file: No such file or directory

一开始以为是没有安装PyQt4的错(虽然我的确没有安装该模块)。

但是仔细看了下很长的错误提示后发现是pylab没有内嵌进去。于是在开头部分内嵌进去即可。修改后的代码如下:

3、解决方案

在代码的第一行加上%pylab inline

#在开头添加pylab的内嵌语句,pylab是 Matplotlib 和Ipython提供的一个模块,提供了类似Matlab的语法。 %pylab inline %matplotlib inline import numpy as np import matplotlib.pyplot as plt #以自然数序列作为多项式的系数,使用polyld函数创建多项式 func = np.poly1d(np.array([1,2,3,4]).astype(float)) print func #使用Numpy的linspace函数创建X轴的数值,在-10和10之间产生30个均匀分布的值 x=np.linspace(-10,10,30) #计算我们在第一步中创建的多项式的值 y=func(x) plt.plot(x,y) plt.xlabel('x',fontsize=12) plt.ylabel('y(x)',fontsize=12) plt.show()

加%pylab inline之后可正确运行出结果:

以上这篇jupyter 使用Pillow包显示图像时inline显示方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。

本文共计905个文字,预计阅读时间需要4分钟。

如何通过Pillow包在Jupyter中实现图像的inline inline显示?

1. 使用Pillow包打开图片时,图片会自动在新窗口中显示: python from PIL import Image img=Image.open('data/empire.jpg') img.show()

2.在Jupyter Notebook的浏览器上边显示图片,可以使用matplotlib.pyplot模块:

python import matplotlib.pyplot as plt plt.imshow(img)

1.单独使用Pillow包时,图片会弹出新窗口显示:

from Pillow import Image img = Image.open('data/empire.jpg') img.show()

2.我想要在jupyter notebook的浏览器上边显示图片怎么办?

可以使用matplotlab.pyplot 和 Pillow 结合使用

%matplotlib inline import matplotlib.pyplot as plt from PIL import Image img = Image.open('./img.png', 'r') plt.imshow(img) plt.axis('on') # 关掉坐标轴为 off plt.title('image') # 图像题目 plt.show()

例子如下:

3.pillow显示灰色图片+plt显示多个图片

%matplotlib inline import matplotlib.pyplot as plt from PIL import Image img = Image.open('./img.png', 'r') gray = img.convert('L') r,g,b = img.split() #注意:gray和r,g,b不一样,gray是三者通过公式算出来的 img_merged = Image.merge('RGB', (r, g, b)) #plt.figure(figsize=(10,5)) #设置窗口大小 plt.suptitle('Multi_Image') # 图片名称 plt.subplot(2,3,1), plt.title('imge:oringe') plt.imshow(img), plt.axis('off') plt.subplot(2,3,2), plt.title('gray:weicaise') plt.imshow(gray), plt.axis('off') plt.subplot(2,3,3), plt.title('gray:true')# 这里必须加 cmap='gray' ,否则尽管原图像是灰度图(下图1),但是显示的是伪彩色图像(下图2)(如果不加的话) plt.imshow(gray,cmap='gray'), plt.axis('off') plt.subplot(2,3,4), plt.title('r') plt.imshow(r,cmap='gray'), plt.axis('off') plt.subplot(2,3,5), plt.title('g') plt.imshow(g,cmap='gray'), plt.axis('off') plt.subplot(2,3,6), plt.title('b') plt.imshow(b,cmap='gray'), plt.axis('off') plt.show()

补充知识:jupyter(ipython)内嵌问题:%pylab inline的使用

在使用jupyter(ipython新版本)的画图的过程中遇到了一个有关内嵌命令的问题,将其记录如下:

如何通过Pillow包在Jupyter中实现图像的inline inline显示?

1、案例描述

一个超级简单的画图程序,因为jupyter是一个C/S分布式的python编辑环境,是一个基于客户端web页面的在线编辑器,你可以在浏览器中输入服务器的ip地址及jupyter的端口号(默认为8888),也可以自己的本机做服务器(地址为localhost:8888)

未修改的代码如下:

%matplotlib inline import numpy as np import matplotlib.pyplot as plt #以自然数序列作为多项式的系数,使用polyld函数创建多项式 func = np.poly1d(np.array([1,2,3,4]).astype(float)) print func #使用Numpy的linspace函数创建X轴的数值,在-10和10之间产生30个均匀分布的值 x=np.linspace(-10,10,30) #计算我们在第一步中创建的多项式的值 y=func(x) plt.plot(x,y) plt.xlabel('x',fontsize=12) plt.ylabel('y(x)',fontsize=12) plt.show()

2、报错:

错误提示:ImportError: libXext.so.6: cannot open shared object file: No such file or directory

一开始以为是没有安装PyQt4的错(虽然我的确没有安装该模块)。

但是仔细看了下很长的错误提示后发现是pylab没有内嵌进去。于是在开头部分内嵌进去即可。修改后的代码如下:

3、解决方案

在代码的第一行加上%pylab inline

#在开头添加pylab的内嵌语句,pylab是 Matplotlib 和Ipython提供的一个模块,提供了类似Matlab的语法。 %pylab inline %matplotlib inline import numpy as np import matplotlib.pyplot as plt #以自然数序列作为多项式的系数,使用polyld函数创建多项式 func = np.poly1d(np.array([1,2,3,4]).astype(float)) print func #使用Numpy的linspace函数创建X轴的数值,在-10和10之间产生30个均匀分布的值 x=np.linspace(-10,10,30) #计算我们在第一步中创建的多项式的值 y=func(x) plt.plot(x,y) plt.xlabel('x',fontsize=12) plt.ylabel('y(x)',fontsize=12) plt.show()

加%pylab inline之后可正确运行出结果:

以上这篇jupyter 使用Pillow包显示图像时inline显示方式就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持易盾网络。