最近发现的4个Python命令行可视化库,太酷了!
通常大家都是在自己的电脑上跑程序,直接是可以可视化相应的结果。
如果是在服务器上的话,使用终端,是不太方便查看结果。
今天,小F就给大家介绍4个可以在命令行中使用的Python库。
分别是Bashplotlib、tqdm、PrettyTable、Colorama。
① 使用Bashplotlib在命令行中绘图
如果你想在命令行窗口中绘制数据的情况,那么Bashplotlib是非常适合的。
首先安装Bashplotlib这个库。
pip install bashplotlib -i https://mirror.baidu.com/pypi/simple/
下面我们可以使用Bashplotlib来绘制一组正态分布的数据图表。
使用NumPy来生成一个正态分布数字列表。
如果还没有NumPy,同样可以使用pip安装。
pip install numpy -i https://mirror.baidu.com/pypi/simple/
使用Bashplotlib的直方图绘图函数plot_hist。
import numpy as np
from bashplotlib.histogram import plot_hist
rand_nums = np.random.normal(size=1000, loc=0, scale=1)
plot_hist(rand_nums, bincount=100)
结果如下。
![](https://filescdn.proginn.com/9b13eb39a45e2280adeea54020397d5d/b4c00878f949452ca0918a7cf51cb387.webp)
确实是可以在终端可视化数据。
通过查看源代码,得知相关参数设置。
![](https://filescdn.proginn.com/ace1c3c44add7c2b3e9dfb65103e75e2/8554d5498346f9f17e6aa01961612944.webp)
② 使用TQDM添加进度条
有时运行一个耗时较长的程序,我们不能看到程序的运行进度,给人的体验不是很好。
这里可以使用TQDM,直接在命令行中可视化程序的运行进度。
使用pip命令安装TQDM。
pip install tqdm -i https://mirror.baidu.com/pypi/simple/
下面来一个示例吧~
让我们遍历数字0至1000,并添加一个小的延迟,得以查看TQDM进度条的工作情况。
from tqdm import trange
from time import sleep
for i in trange(1000):
sleep(0.01)
结果如下。
![](https://filescdn.proginn.com/b5e8cabcfbddba4d230dd6328a8a4dd7/4b38fe7553d921aaea2ed08395a9d235.webp)
给人提供了一个预期,不会变的那么遥遥无期。
③ 使用PrettyTable打印漂亮的表格
当我们在终端输出表格数据的时候,排版总是乱乱的。
使用PrettyTable,便能在终端输出易读的、类似于表格格式的数据展现。
安装。
pip install prettytable -i https://mirror.baidu.com/pypi/simple/
让我们创建一个国家城市的人口表格。
from prettytable import PrettyTable
table = PrettyTable()
table.field_names = ['Country', 'Capital', 'Population']
table.add_row(["China", "Beijing", 21893095])
table.add_row(["Russia", "Moscow", 12195221])
table.add_row(["Germany", "Berlin", 3748148])
table.add_row(["Spain", "Madrid", 3223334])
table.add_row(["Finland", "Helsinki", 631695])
print(table)
结果如下,确实变得清晰明了~
![](https://filescdn.proginn.com/5b6e11c0bf4708840291124ed0eb6a0c/e5de6f5a21096e2174796d05a263b3b9.webp)
可惜的是,并不能很好的支持中文。
同时,还可对表格内容进行排序等操作。
table.sortby = 'Capital'
print(table)
以首都数据排序为例。
![](https://filescdn.proginn.com/9c791958570ea92f1094c6a942c7200b/0cc96e6290221b945d515fac110f79fd.webp)
可以看到,柏林排在了前头。
还可生成HTML代码,将表格内容插入到网站中。
print(table.get_html_string())
结果如下。
![](https://filescdn.proginn.com/a821fc3ab39ecc13017cfada6c9ba482/85e7f53f52a13b843cdf570c28c10eb2.webp)
新建一个HTML文件,将表格放到body标签下。
![](https://filescdn.proginn.com/23289c7bca3a37dd46eae751dc559703/b4a2854b0a47e003a4bf9f0d3f661811.webp)
再在浏览器打开这个文件,结果如下。
④ 使用Colorama为您的命令行着色
使用Colorama为您的程序输出,在命令行中有不一样的颜色显示,更快了解程序的运行情况。
使用pip安装。
pip install colorama -i https://mirror.baidu.com/pypi/simple/
支持三种不同的颜色类型。
foreground,是文本颜色
background,是背景颜色
style,是一些额外的颜色样式
![](https://filescdn.proginn.com/71c0fb6d62008604746dbca850fb380a/65d62b29b91dfee2c54ffd4d5563d5be.webp)
通过适当地配置,可以给你的Python命令行应用程序带来方便。
接下来让我们看一些例子。
首先将文本更改为绿色,以便以绿色字体显示“任务已完成”。
这可以通过在Fore渲染模式中将前景色更改为绿色来完成:
from colorama import Fore
print(Fore.GREEN)
print("Task completed")
结果如下
然后,让红色背景色的高亮表示错误,通过设置背景渲染模式Back到RED:
from colorama import Back
print(Back.RED)
print("Error occurred!")
结果
你还可以通过更改渲染样式来使文本变暗:
from colorama import Style
print(Style.DIM)
print("Not that important")
结果如下
最后,如果你想复原之前的设置,重置操作如下。
print(Style.RESET_ALL)
print('hello')
好了,本期的分享就到此结束了,有兴趣的小伙伴可以自行去实践学习。
推荐阅读:
入门: 最全的零基础学Python的问题 | 零基础学了8个月的Python | 实战项目 |学Python就是这条捷径
干货:爬取豆瓣短评,电影《后来的我们》 | 38年NBA最佳球员分析 | 从万众期待到口碑扑街!唐探3令人失望 | 笑看新倚天屠龙记 | 灯谜答题王 |用Python做个海量小姐姐素描图 |碟中谍这么火,我用机器学习做个迷你推荐系统电影
趣味:弹球游戏 | 九宫格 | 漂亮的花 | 两百行Python《天天酷跑》游戏!
AI: 会做诗的机器人 | 给图片上色 | 预测收入 | 碟中谍这么火,我用机器学习做个迷你推荐系统电影
小工具: Pdf转Word,轻松搞定表格和水印! | 一键把html网页保存为pdf!| 再见PDF提取收费! | 用90行代码打造最强PDF转换器,word、PPT、excel、markdown、html一键转换 | 制作一款钉钉低价机票提示器! |60行代码做了一个语音壁纸切换器天天看小姐姐!|
年度爆款文案
点阅读原文,领廖雪峰资料!