Pygal 中的直方图
Pygal 是一个用于创建交互式图表和图形的 Python 库,它支持的图表之一是直方图。直方图基本上是数值数据分布的图形表示,它可以帮助我们快速识别提供的數據集中模式、异常值和趋势。在本文中,我们将讨论直方图的基础知识以及如何在 Pygal 中创建直方图,包括图表自定义和向其中添加数据。
什么是直方图?
直方图是数据集分布的图形表示。它主要显示数据点在某些区间(也称为箱)中的出现频率。直方图的横轴(x 轴)表示数据集中值的范围,而纵轴(y 轴)表示该特定范围内值的出现频率。
直方图特别用于可视化连续数据,例如篮子中蔬菜的重量或人群中个体的尺寸。直方图使我们能够观察分布的形状,包括偏度以及峰值或谷值的存在。
如何在 pygal 中创建直方图?
以下是我们在 Pygal 中创建直方图时将遵循的步骤。在 Pygal 中创建直方图的第一步是安装 Pygal 库。我们可以使用 pip(Python 的包安装程序)来完成此操作 -
pip install pygal
安装 pygal 库后,我们需要按照以下步骤在 pygal 中创建直方图 -
在程序中导入“pygal”模块和直方图图表类型 -
import pygal from pygal import Histogram
创建一个“直方图”对象并设置其 x 轴标签和标题 -
histogram_obj = Histogram(title='Distribution of Scores', x_title='Score Range')
使用 add() 函数将数据添加到直方图图表中。我们还可以将数据作为值列表或作为字典传递,其中箱标签作为键,箱频率作为值。以下是执行此操作的代码 -
# Add data to the histogram histogram.add('Scores', [(6, 45, 55), (7, 55, 65),(8, 65, 75), (8, 75, 85), (7, 85, 95), (6, 95, 105)])
使用 render_to_file() 方法呈现图表,这将图表保存为 SVG 文件 -
# Render the chart to an SVG file histogram.render_to_file('histogram.svg')
以下是使用 Pygal 创建直方图的完整代码 -
示例
import pygal from pygal import Histogram # Create a Histogram object histogram_obj = Histogram(title='Distribution of Scores', x_title='Score Range') # Add data to the histogram histogram_obj.add('Scores', [(6, 45, 55), (7, 55, 65),(8, 65, 75), (8, 75, 85), (7, 85, 95), (6, 95, 105)]) # Render the chart to an SVG file histogram_obj.render_to_file('histogram_sample.svg')
输出
自定义直方图
Pygame 还允许用户根据颜色、大小、标签等方面自定义直方图的外观。以下是我们可以对直方图进行的一些自定义示例 -
我们可以使用 width 和 height 属性设置图形的大小。
我们可以使用 fill 属性更改条形图的颜色。
我们还可以使用 legend_at_bottom 属性显示图例。
使用 bins 属性,我们可以设置直方图中箱的数量。
让我们来看一个示例,我们将更改条形图的颜色,并将图例显示在底部,为此,我们可以修改直方图对象,如下面的代码所示 -
示例
import pygal from pygal import Histogram histogram_ex = pygal.Histogram(title='Distribution of Test Scores', x_title='Test Scores', y_title='Frequency',xrange=(0, 100), yrange=(0, 10)) histogram_ex.add('Dataset', [(11, 22), (12, 33), (13, 44), (14, 55)], bins=5) histogram_ex.add('Dataset 1', [(23,30), (11,45), (33, 79)],style={'color': 'blue'}) histogram_ex.add('Dataset 2', [(12, 23), (14, 21), (16,19)],style={'color': '#006699'}) histogram_ex.render_to_file('histogram_sample.svg')
输出
结论
总之,在 Pygal 中创建直方图是一个非常简单的过程,它允许我们根据用户的选择创建独特且不同的可视化效果。我们还讨论了 Pygal 的内置方法和属性,使用这些方法和属性,我们可以自定义直方图的各个方面,例如颜色、标题、标签和轴范围。借助本文中提供的步骤,您将能够轻松地为数据集创建直方图。