文章目录
- 专栏导读
- 1、hist()基本语法
- 2、使用 hist() 函数绘制多个数据组的直方图
- 3、修改直方图的颜色及边框颜色
- 4、六一儿童节为主题,使用直方图进行可视化
专栏导读
✍ 作者简介:i阿极,CSDN Python领域新星创作者,专注于分享python领域知识。
✍ 本文录入于《数据分析之道》,本专栏针对大学生、初级数据分析工程师精心打造,对python基础知识点逐一击破,不断学习,提升自我。
✍ 订阅后,可以阅读《数据分析之道》中全部文章内容,包含python基础语法、数据结构和文件操作,科学计算,实现文件内容操作,实现数据可视化等等。
✍ 其他专栏:《数据分析案例》 ,《机器学习案例》😊😊😊如果觉得文章不错或能帮助到你学习,可以点赞👍收藏📁评论📒+关注哦!👍👍👍
📜📜📜如果有小伙伴需要数据集和学习交流,文章下方有交流学习区!一起学习进步!💪
1、hist()基本语法
hist()函数是Matplotlib库中用于绘制直方图的函数。它的语法如下:
plt.hist(x, bins=None, range=None, density=False, weights=None, cumulative=False,
bottom=None, histtype='bar', align='mid', orientation='vertical', rwidth=None,
log=False, color=None, label=None, stacked=False, normed=None, **kwargs)
下面是一些常用参数的解释:
- x: 必需参数,用于绘制直方图的数据。
- bins: 可选参数,指定直方图的柱子数量或柱子的边界值。默认值为10。
- range: 可选参数,指定直方图的取值范围。默认值为数据的最小值和最大值。
- density: 可选参数,指定是否将直方图的高度归一化为概率密度。默认值为False。
- histtype: 可选参数,指定直方图的类型。可以是’bar’(默认值),‘barstacked’,‘step’,'stepfilled’等。
- color: 可选参数,指定直方图的颜色。
- label: 可选参数,指定直方图的标签,用于图例显示。
- align: 可选参数,指定柱子的对齐方式。可以是’left’,‘mid’(默认值),‘right’。
- orientation: 可选参数,指定直方图的方向。可以是’vertical’(默认值),‘horizontal’。
- rwidth: 可选参数,指定柱子的宽度,取值范围为[0, 1]。默认值为None,表示自适应宽度。
- 其他参数:还可以传递其他关键字参数,用于进一步自定义直方图的样式和属性。
实例演示hist()制作简单的直方图:
import matplotlib.pyplot as plt
import numpy as np
# 准备数据
data = np.random.randn(1000)
# 绘制直方图
plt.hist(data)
# 添加标签和标题
plt.xlabel('Value')
plt.ylabel('Frequency')
plt.title('Histogram')
# 显示图表
plt.show()
2、使用 hist() 函数绘制多个数据组的直方图
当使用hist()函数绘制多个数据组的直方图时,可以在同一图表中显示这些直方图,并进行比较。
下面是一个示例,演示如何使用hist()函数绘制多个数据组的直方图,并进行比较:
import matplotlib.pyplot as plt
import numpy as np
# 生成随机数据
np.random.seed(0)
data1 = np.random.normal(0, 1, 1000)
data2 = np.random.normal(2, 1, 800)
data3 = np.random.normal(-2, 1, 1200)
# 绘制直方图
plt.hist(data1, bins=30, alpha=0.5, label='Data 1')
plt.hist(data2, bins=30, alpha=0.5, label='Data 2')
plt.hist(data3, bins=30, alpha=0.5, label='Data 3')
# 添加标签和标题
plt.xlabel('Value')
plt.ylabel('Frequency')
plt.title('Histogram Comparison')
# 添加图例
plt.legend()
# 显示图表
plt.show()
在这个例子中,我们生成了三组随机数据data1、data2和data3。然后,我们分别使用plt.hist()函数绘制了这三组数据的直方图,并使用bins参数设置了直方图的柱子数量,alpha参数设置了柱子的透明度,label参数设置了每组数据的标签。
接下来,我们添加了x轴和y轴的标签,以及一个标题。然后,使用plt.legend()函数添加了图例,以便区分不同的数据组。
最后,我们调用plt.show()函数显示了绘制好的直方图。
3、修改直方图的颜色及边框颜色
要修改直方图的颜色和边框颜色,可以使用color参数和edgecolor参数来设置。
下面是一个示例,演示如何修改直方图的颜色和边框颜色:
import matplotlib.pyplot as plt
import numpy as np
# 生成随机数据
np.random.seed(0)
data = np.random.randn(1000)
# 绘制直方图
plt.hist(data, bins=30, color='skyblue', edgecolor='black')
# 添加标签和标题
plt.xlabel('Value')
plt.ylabel('Frequency')
plt.title('Histogram')
# 显示图表
plt.show()
在这个例子中,我们生成了随机数据data。然后,我们使用plt.hist()函数绘制了直方图,并通过color参数将柱子的颜色设置为天蓝色,通过edgecolor参数将柱子的边框颜色设置为黑色。
你可以根据需要修改color参数和edgecolor参数的值,选择适合的颜色来自定义直方图的外观。
运行代码后,你将看到绘制好的直方图,柱子的颜色为天蓝色,边框颜色为黑色。
4、六一儿童节为主题,使用直方图进行可视化
当以儿童节为主题进行可视化时,可以使用直方图展示与儿童节相关的数据。以下是一个示例,演示如何使用直方图可视化儿童节礼物的数量分布:
import matplotlib.pyplot as plt
# 儿童节礼物的数量数据
gifts = ['Dolls', 'Cars', 'Balloons', 'Candies', 'Books']
quantity = [45, 60, 30, 80, 50]
# 绘制直方图
plt.bar(gifts, quantity, color='skyblue')
# 添加标签和标题
plt.xlabel('Gifts')
plt.ylabel('Quantity')
plt.title('Children\'s Day Gifts Distribution')
# 显示图表
plt.show()
在这个示例中,我们定义了儿童节礼物的种类(gifts)和每种礼物的数量(quantity)。然后,我们使用plt.bar()函数绘制了儿童节礼物的直方图,将礼物作为x轴,数量作为y轴,并使用天蓝色作为柱子的颜色。
最后,我们添加了标签和标题,以便更好地说明图表的含义。
📢文章下方有交流学习区!一起学习进步!💪💪💪
📢首发CSDN博客,创作不易,如果觉得文章不错,可以点赞👍收藏📁评论📒
📢你的支持和鼓励是我创作的动力❗❗❗