Pygal 中的甜甜圈图

pythonserver side programmingprogramming

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 库绘制其他图表。


相关文章