Pygal是一个Python库,用于生成SVG格式的交互式图表。首先通过pip install pygal安装,然后导入图表类型如Bar、Line、Pie,创建实例并设置标题和标签,使用add()方法添加数据,x_labels设置横坐标,最后调用render_to_file()输出SVG文件。例如绘制柱状图展示月度销售额,或饼图显示市场份额。支持多种图表类型,如StackedBar、XY等,可通过render()生成SVG字符串嵌入网页,适用于Flask、Django等Web框架。使用时需注意数据与标签长度匹配,适合轻量级、高美观度的网页图表展示。

Pygal 是一个用于创建 SVG(可缩放矢量图形)图表的 Python 库,适合生成美观、交互性强的图表,常用于网页展示。它使用简单,支持多种图表类型,比如柱状图、折线图、饼图等。
安装 pygal
在使用前需要先安装 pygal 模块:
pip install pygal基本使用步骤
以下是使用 pygal 绘制图表的基本流程:
- 导入所需图表类型,如 Bar(柱状图)、Line(折线图)、Pie(饼图)等
- 创建图表实例,可设置标题、坐标轴标签等属性
- 添加数据系列(add 方法)
- 将图表输出为 SVG 文件或直接在浏览器中查看
示例:绘制一个简单的柱状图
立即学习“Python免费学习笔记(深入)”;
import pygal# 创建柱状图实例
bar_chart = pygal.Bar()
bar_chart.title = '月度销售额'
# 添加数据
bar_chart.add('产品A', [60, 45, 70, 85, 65])
bar_chart.add('产品B', [40, 55, 45, 60, 75])
# 设置横坐标标签
bar_chart.x_labels = ['1月', '2月', '3月', '4月', '5月']
# 生成 SVG 文件
bar_chart.render_to_file('bar_chart.svg')
运行后会生成 bar_chart.svg 文件,用浏览器打开即可查看图表。
dmSOBC SHOP网店系统由北京时代胜腾信息技术有限公司(http://www.webzhan.com)历时6个月开发完成,本着简单实用的理念,商城在功能上摒弃了外在装饰的一些辅助功能,尽可能的精简各项模块开发,做到有用的才开发,网店V1.0.0版本开发完成后得到了很多用户的使用并获得了好评,公司立即对网店进行升级,其中包括修正客户提出的一些意见和建议,现对广大用户提供免费试用版本,如您在使用
常用图表类型
pygal 支持多种图表,只需更换类名即可:
- Line():折线图
- Pie():饼图,适用于比例数据
- StackedBar():堆叠柱状图
- XY():散点图或 XY 折线图
例如,绘制饼图:
pie_chart = pygal.Pie()pie_chart.title = '市场份额'
pie_chart.add('公司A', 45)
pie_chart.add('公司B', 30)
pie_chart.add('公司C', 25)
pie_chart.render_to_file('pie_chart.svg')
嵌入网页或显示图表
pygal 可直接生成 SVG 字符串,便于嵌入 HTML 页面:
svg_data = bar_chart.render() # 返回字节流# 或者使用 render_to_string() 获取字符串(需解码)
svg_string = bar_chart.render().decode('utf-8')
也可以配合 Flask、Django 等 Web 框架返回响应内容。
基本上就这些。pygal 使用直观,适合快速生成轻量级图表,尤其适合需要 SVG 格式或简单交互的场景。不复杂但容易忽略细节,比如 x_labels 要和数据长度匹配。









