Python Pygal模块安装和使用

前言

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理。

PS:如有需要Python学习资料的小伙伴可以加点击下方链接自行获取

python免费学习资料以及群交流解答点击即可加入

Pygal 是另一个简单易用的数据图库,它以面向对象的方式来创建各种数据图,而且使用 Pygal 可以非常方便地生成各种格式的数据图,包括 PNG、SVG 等。使用 Pygal 也可以生成 XML etree、HTML 表格(这些都需要安装其他包)。

Pygal模块安装

安装 Pygal 包与安装其他 Python 包基本相同,同样可以使用 pip 来安装。

启动命令行窗口,在命令行窗口中输入如下命令:

pip install pygal

上面命令将会自动安装 Pygal 包的最新版本。运行上面命令,可以看到程序先下载 Pygal 包,然后提示 Pygal 包安装成功:

Installing collected packages:pygal

Successfully installed pygal-2.4.0

如果在命令行窗口中提示找不到 pip 命令,则也可以通过 python 命令运行 pip 模块来安装 Pygal。例如,通过如下命令来安装 Pygal 包:

python -m pip install pygal

在成功安装 Pygal 包之后,可以通过 pydoc 来查看 Pygal 包的文档。在命令行窗口中输入如下命令:

python -m pydoc -p 8899

运行上面命令之后,打开浏览器查看 http://localhost:8899/ 页面,可以在 Python 安装目录的 lib\site-packages 下看到 Pygal 包的文档,如图 1 所示。

单击图 1 所示页面上的“pygal(package)”链接,将可以看到如图 2 所示的 API 页面。

通过图 2 所示的页面,即可查看 Pygal 包下的子模块和类。

Pygal 数据图入门

Pygal 使用面向对象的方式来生成数据图。使用 Pygal 生成数据图的步骤大致如下:

1、创建 Pygal 数据图对象。Pygal 为不同的数据图提供了不同的类,比如柱状图使用 pygal.Bar 类,饼图使用 pygal.Pie 类,折线图使用 pygal.Line 类,等等。

2、调用数据图对象的 add() 方法添加数据。

3、调用 Config 对象的属性配置数据图。

4、调用数据图对象的 render_to_xxx() 方法将数据图渲染到指定的输出节点(此处的输出节点可以是 PNG 图片、SVG 文件,也可以是其他节点)。

下面通过生成简单的柱状图来演示如何使用 Pygal 生成数据图,该柱状图展示了两种教程从 2011 年到 2017 年的销量统计数据:

上面程序中第 8 行代码创建了 pygal.Bar 对象,该对象就代表一个柱状图。接下来的两行代码为 pygal.Bar 对象添加了两组柱状图数据。

通过上面程序,实际上已经可以生成简单的柱状图了。如果注释掉后面对 pygal.Bar 对象的属性赋值的代码,运行该程序,将可以看到在程序当前目录下生成了一个 fk_books.svg 文件,使用浏览器查看该文件,可以看到如图 3 所示的柱状图。

图 4 支持交互的 SVG 数据图

配置 Pygal 数据图

正如从前面程序所看到的,使用 pygal.Bar 生成数据图之后,程序可以通过对该对象的属性赋值来配置数据图。那么,除设置上面这些简单的属性之外,是否还可以设置其他属性呢?

答案是肯定的,查阅 http://localhost:8899/pygal.config.html 页面(其中 8899 是运行 pydoc 的端口),可以看到 config 模块的相关说明,该模块包含了 BaseConfig、CommonConfig、Config、SerieConfig 等配置类,这些类所包含的属性正是用于配置 Pygal 数据图的。

下面程序示范了该页面中部分配置属性的作用:

运行上面程序,将会生成如图 5 所示的数据图。

图 5 配置数据图

对比图 4 和图 5 所示的数据图,可以发现图 5 所示的数据图的 X 轴刻度值旋转了45°,这是 x_label_rotation 属性的作用;数据图的图例被显示在底部,这是 legend_at_bottom 属性的作用;数据图不再显示水平方向的网格钱,这是 show_y_guides 属性的作用;数据图显示垂直方向的网格线,这是 show_x_guides 属性的作用。

对于不同的数据图,Pygal 支持大量对应的配置,具体可结合 http://localhost:8899/pygal.config.html 页面给出的属性进行设置、测试,此处不再一一讲解。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值