一个简单的软件包,利用IPython和HTML在Jupyter笔记本电脑中实现更高效、更广泛和交互式的图像绘图
ipyplot的Python项目详细描述
IPyPlot是一个小的python包,它提供了在python笔记本单元内快速高效地绘制图像的功能。它将IPython与HTML结合使用,以更快、更丰富、更具交互性的方式显示大量图像。在
用Python在笔记本上显示大量图像对我来说一直是一个很大的痛苦,因为我总是使用matplotlib
来完成这项任务,我甚至从未考虑过是否可以更快、更容易或更高效地完成这项任务。
尤其是在我最近的一个项目中,我不得不以一种非常交互式的方式处理大量的文档图像,这导致我总是要重新运行笔记本单元格,并等待数不清的秒数等待matplotlib
来完成这项工作。
我的挫败感发展到我无法再忍受下去,开始寻找其他选择。
我发现的最佳解决方案是使用IPython
包与简单的HTML连接。使用这种方法,我构建了一个名为^{str1}$IPyPlot的简单python包,它最终帮助我克服了挫折,节省了大量时间。在
特点:
- [x] 在笔记本电脑中用python轻松、快速、高效地绘制图像
- [x] 绘制函数(请参见examples section了解更多信息):
- [x]
plot_images
-简单地以网格状布局打印所有图像 - [x]
plot_class_representations
-与plot_images
相似,但只显示每个标签/类的第一个图像(基于提供的labels集合) - [x]
plot_class_tabs
-基于提供的标签,在每个标签/类的单独选项卡中以类似网格的方式绘制图像
- [x]
- [x] 支持的图像格式:
- [x] 本地存储URL的序列,例如
[your/dir/img1.jpg]
- [x] 远程URL的序列,例如
[http://yourimages.com/img1.jpg]
- [x]
PIL.Image
对象的序列 - [x] 作为
numpy.ndarray
对象的图像序列 - [x] 支持的序列类型:
list
,numpy.ndarray
,pandas.Series
- [x] 本地存储URL的序列,例如
- [x] 其他功能:
- [x]
custom_texts
param显示其他文本,如每个图像的置信度或其他一些信息 - [x]
force_b64
标志以强制将图像从url转换为base64格式 - [x] 点击图片放大
- [x] 通过
max_images
和img_width
参数控制显示图像的数量及其宽度 - [x] “显示html”按钮,显示用于生成绘图的html代码
- [x] 选项可设置标签/标签的特定顺序、过滤它们或忽略某些标签
- [x]
- [x] 支持的笔记本平台:
- [x] 朱皮特
- [x] 谷歌Colab
- [x] Azure笔记本
- [x] 卡格尔笔记本
入门
要开始使用IPyPlot,请参见examples below或转到 ^{yp str}你最可能的选择是。在
安装
IPyPlot可以通过PyPI安装:
pip install ipyplot
或使用pip
直接从该回购中:
使用示例
IPyPlot提供3个主要功能,可用于在笔记本电脑中显示图像:
要开始使用IPyPlot
,只需按如下方式导入:
importipyplot
并使用下面显示的任何可用绘图功能(注意执行时间)。在
- images-应该是
string
(本地或远程图像文件url)、PIL.Image
对象或代表图像的numpy.ndarray
对象的序列 - labels-应该是
string
或{}的序列
显示图像集合
显示类表示(每个唯一标签的第一个图像)
为每个唯一类在单独的交互式选项卡中显示图像
了解更多关于n使用IPyPlot转到gear-images-examples.ipynb笔记本获取更复杂的示例。在
- 项目
标签: