Pygal 中的甜甜圈图
Pygal 是一个 Python 库,用于创建数据可视化的图形和图表。甜甜圈图是一种中间有洞的饼图。使用 Pygal 库可以轻松创建甜甜圈图。在本文中,我们将使用甜甜圈图可视化示例数据。
安装 Pygal 库
在开始使用 Pygal 模块之前,我们需要使用 Python 包管理器在系统中安装 Pygal 库。在终端或命令提示符中输入以下命令来安装 Pygal 库。
pip install pygal
算法
导入 Pygal 模块。
使用 Pie() 函数创建环形图,并根据需要指定内半径。
使用 add() 方法将数据添加到环形图,并为每个系列提供标签和数据点。
通过使用 style 参数设置图表标题、字体大小、自定义颜色和悬停效果等属性来自定义图表。
使用适当的方法(render_to_file() 或render_in_browser())。
创建环形图
安装 Pygal 后,我们可以使用 Pygal 功能在 Python 中创建任何数据的环形图。
示例
在下面的示例中,我们创建了一个环形图,用于显示一个人饮食中来自不同常量营养素的卡路里百分比。我们使用 pygal.Pie() 函数通过 inner_radius 参数将内半径设置为 0.4。内半径是图表中间孔的大小。
import pygal # 创建环形图 donut_chart = pygal.Pie(inner_radius=0.4) # 将数据添加到环形图 donut_chart.add('Carbohydrates', 50) donut_chart.add('Protein', 25) donut_chart.add('Fat', 25) # 呈现图表 donut_chart.render_to_file('donut_chart.svg')
输出

自定义环形图
我们可以使用 Pygal 以不同的方式自定义环形图,例如更改图表的颜色、添加标题和标签、更改字体大小等。
示例
在下面的示例中,我们将添加标题和标签,并为图表添加自定义颜色。我们可以使用 color 参数将自定义颜色传递给每个数据点。借助 title 参数,我们可以为图表添加标题。
import pygal # 创建甜甜圈图 donut_chart = pygal.Pie(inner_radius=0.4) # 为甜甜圈图添加数据 donut_chart.add('Carbohydrates', 50, color='rgb(31, 119, 180)') donut_chart.add('Protein', 25, color='rgb(255, 127, 14)') donut_chart.add('Fat', 25, color='rgb(44, 160, 44)') # 自定义甜甜圈图 donut_chart.title = 'Macrobiotics细分' donut_chart.legend_at_bottom = True donut_chart.legend_box_size = 16 donut_chart.print_values = True donut_chart.value_font_size = 20 donut_chart.label_font_size = 18 # 渲染图表 donut_chart.render_to_file('donut_chart.svg')
输出

创建具有多个系列的环形图
要创建具有多个系列的环形图,我们可以多次使用 add() 方法,并使用不同的数据点和标签。
示例
在上面的代码中,我们首先创建一个内径为 0.4 的环形图。然后,我们使用 add() 方法向图表添加多个系列。每个系列都有自己的一组数据点和标签。最后,我们使用 render_to_file() 方法将图表渲染到文件中。
import pygal # 创建包含多个系列的环形图 donut_chart = pygal.Pie(inner_radius=0.4) # 将数据添加到环形图 donut_chart.add('Carbohydrates', [50, 70, 80]) donut_chart.add('Protein', [25, 30, 35]) donut_chart.add('Fat', [25, 0, 15]) # 将图表渲染到文件 donut_chart.render_to_file('multiple_series_donut_chart.svg')
使用颜色和悬停效果自定义环形图
我们还可以通过更改颜色和显示悬停效果来自定义环形图。Pygal 为环形图提供了几个自定义选项,包括 style 参数,它允许我们定义自定义颜色和其他样式属性。
示例
在下面的代码中,我们首先使用 style 参数创建一个内半径为 0.4 的环形图和一个自定义样式。style 参数的 colors 属性允许我们为每个系列定义自定义颜色。我们还设置了 hover_fill 属性来定义悬停效果的颜色,并设置了 hover_font_size、value_font_size 和 label_font_size 属性来设置图表中各个元素的字体大小。然后,我们使用 add() 方法将数据添加到图表中,就像前面的示例一样。最后,我们使用 render_to_file() 方法将图表渲染到文件中。
import pygal # 创建具有自定义颜色和悬停效果的环形图 donut_chart = pygal.Pie(inner_radius=0.4, style=pygal.style.Style( colors=('#FFA07A', '#ADD8E6', '#90EE90'), hover_fill='#FFF', hover_font_size=20, value_font_size=25, label_font_size=25 )) # 将数据添加到甜甜圈图 donut_chart.add('Carbohydrates', 50) donut_chart.add('Protein', 25) donut_chart.add('Fat', 25) # 将图表渲染到文件 donut_chart.render_to_file('customized_donut_chart.svg')
输出

结论
在本文中,我们讨论了 Pygal 库以及如何使用绘制甜甜圈图Python 中的 Pygal 库。Pygal 提供各种函数以图表形式可视化数据。我们在本文中仅使用了环形图,但我们也可以使用 Pygal 库绘制其他图表。