jupyter 使用Pillow包显示图像时inline显示方式
作者:Jack_Kuo 发布时间:2021-09-08 00:42:02
标签:jupyter,Pillow,图像,inline
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新版本)的画图的过程中遇到了一个有关内嵌命令的问题,将其记录如下:
1、案例描述
一个超级简单的画图程序,因为jupyter是一个C/S分布式的python编辑环境,是一个基于客户端web页面的在线编辑器,你可以在浏览器中输入服务器的ip地址及jupyter的端口号(默认为8888),也可以自己的本机做服务器(地址为http://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之后可正确运行出结果:
来源:https://blog.csdn.net/weixin_37251044/article/details/81137726
0
投稿
猜你喜欢
- 本文介绍如果使用python汇总常用的图表,与Excel的点选操作相比,用python绘制图表显得比较比较繁琐,尤其提现在对原始数据的处理上
- Firefox 2.0 在对 XML 的支持方面有几个重要的改进。目前它的用户部署如日中天。了解 Firefox 2.0 XML 特性的改进
- 目录一、图片处理(一)图片采集(二)图片装载(三)完整代码二、初始化pygame相关参数(一)设置初始化参数(二)设置为全屏显示:三、核心模
- 一、Pandas Series对象Pandas 是基于 NumPy 设计实现的 Python 数据分析库,Pandas 提供了大量的能让我们
- 一、lambda关键字的使用方法func=lambda x:x+1print(func(1))#2print(func(2))#3#以上la
- 本文实例讲述了Python wxPython库使用wx.ListBox创建列表框。分享给大家供大家参考,具体如下:如何创建一个列表框?列表框
- 变量全都是引用跟其他编程语言不同,Python的变量不是盒子,不会存储数据,它们只是引用,就像标签一样,贴在对象上面。比如:>>
- 模块:包含定义函数和变量的python文件,可以被别的程序引入。os模块是操作系统接口模块,提供了一些方便使用操作系统相关功能函数,这里介绍
- var long2="1988-0w-07";alert(long2.substring(0,4)+"----
- 为数据库配置比较大的内存,可以有效提高数据库性能。因为数据库在运行过程中,会在内存中划出一块区域来作为数据缓存。通常情况下,用户访问数据库时
- 通过本篇内容给大家介绍一下Python实现金融数据可视化中两列数据的提取、分别画、双坐标轴、双图、两种不同的图等代码写法和思路总结。impo
- 最近在学习Golang语言,中间遇到一个前辈指点,有一个学习原则:Learning By Doing。跟我之前学习Java的经验高度契合。在
- python中自带了处理python的模块,使用时候直接import json即可。 使用loads方法即可将json字符串转换成pytho
- 阅读上一篇:WEB前端开发经验总结 ⅠWEB标准篇现在我们接着来讲怎么在实际开发中结合我前面所讲的理论来开发制作页面吧。现在就来看看我们要制
- 一、Python简介Python是一种面向对象的解释型计算机程序设计语言。Python是纯粹的自由软件, 源代码和解释器CPython遵循
- (1)应用于客户需要与不同的数据源进行交互时。数据可能来自不同的数据库,他们都有各自不同的复杂格式。但客户与这些数据库间只通过一种标准语言进
- 优化前后新老代码如下:from git_tools.git_tool import get_collect_projects, QQNews
- Python之绘图和可视化1. 启用matplotlib最常用的Pylab模式的IPython(IPython --pylab)2. mat
- 我就废话不多说了,大家还是直接看代码吧!def pro_mgr(): """ 获取当前
- b.php的代码 <?php //只能通过post方式访问 if ($_SERVER['REQUEST_METHOD'