超强Python数据分析工具!Jupyter Notebook,竟还有这个功能!

超强Python数据分析工具!Jupyter Notebook,竟还有这个功能!插图亿华云

Jupyter Notebook应该很多同学都或多或少有所了解,但是,很多同学 还停留在Python、数据分析、交互式开发。

其实,除了这些之外,Jupyter Notebook还可以完成很多你意想不到的事情。

例如,Python工具包开发、创建幻灯片、创建电子书、写博客、写报告、数据看板、REST API、网页应用等。

以网页应用为例,提起开发一个网页应用,很多同学第一印象都会想到需要前端、后端、服务部署等繁琐的步骤,需要具备html、JavaScript、Java或者Python、Django知识。

其实,通过Jupyter Notebook就可以开发一款可部署的网页应用。

下面,就以一个图像处理的网页应用为例给大家演示一下。

准备工作

在正式的开发之前,先把开发环境配置、Python工具包这些基本的准备工作做一下。

环境配置

创建一个虚拟环境,单独的用于这个网页应用,虚拟环境的好处就可以实现不同应用之间的环境隔离,避免不同项目/应用依赖不同版本的工具包导致冲突。

virtualenv sketchenv

source sketchenv/bin/activate

这里的sketchenv是虚拟环境 的名称,你也可以起其他名称。

安装工具包

下面,就是按照开发网页应用需要的一些工具包:

mljar-mercury

opencv-python-headless

pillow

matplotlib

其中,mercury是一款能够将jupyter notebook转换成网页 应用的框架,其余的几款都是用于图像处理的工具包。

正式开始

下面,就正式开始开发工具。

首先,打开一个Jupyter Notebook的窗口:

jupyter notebook

然后,导入一些需要用到的Python工具包并对图像进行一下初始设置:

import os

import cv2

from PIL import Image

from matplotlib import pyplot as plt

import matplotlib as mpl

mpl.rcParams[figure.figsize] = (12,12)

mpl.rcParams[axes.grid] = False

在Jupyter Notebook打开一个新的单元格,输出以下代码,谨记,需要新打开一个,不能和其他单元格的代码放在一起:

image_path = "/home/jackpop/Downloads/house.jpg"

output_dir = "output_images"

image_path是一个要处理图像的路径,output_dir是目录名,用于保存处理好的新图像。

在下一个单元中,将定义一个显示图像的函数:

def imshow(image, title=None, fname=None):

if len(image.shape)

THE END
Copyright © 2024 亿华云