Matplotlib 直方图学习笔记
什么是直方图?
直方图是一种用于表示数据分布的统计图形,它将数据分成若干组,并绘制出每一组的频数或频率,以便于观察数据的分布情况。直方图通常用于描述连续型变量,例如身高、体重等。
Matplotlib绘制直方图
Matplotlib是一个Python中的数据可视化工具,它提供了丰富的图形绘制功能,其中包括绘制直方图的功能。使用Matplotlib绘制直方图需要导入matplotlib.pyplot
模块,并通过调用hist
方法实现。
pythonCopy Codeimport matplotlib.pyplot as plt
import numpy as np
# 生成随机数据
np.random.seed(10)
data = np.random.normal(100, 20, 1000)
# 绘制直方图
plt.hist(data, bins=30, alpha=0.5, color='blue')
# 设置标题和轴标签
plt.title('Histogram of Random Data')
plt.xlabel('Value')
plt.ylabel('Frequency')
# 显示图形
plt.show()
上述代码中,我们生成了一个包含1000个随机数据的数组data
,然后通过hist
方法绘制直方图。bins
参数指定直方图分成的组数,alpha
参数指定透明度,color
参数指定颜色。最后设置了标题和轴标签,并通过show
方法显示图形。
示例
我们通过一个具体的示例来演示Matplotlib如何绘制直方图。假设我们有一份商店中100名顾客的购物清单,我们想要了解这批顾客的消费情况,进而对商品进行优化。
pythonCopy Codeimport matplotlib.pyplot as plt
import pandas as pd
# 读取数据
data = pd.read_csv('shopping.csv')
# 统计消费情况
consuming = data['Price'].values
# 绘制直方图
plt.hist(consuming, bins=20, alpha=0.5, color='blue')
# 设置标题和轴标签
plt.title('Histogram of Consuming')
plt.xlabel('Price')
plt.ylabel('Number of Customers')
# 显示图形
plt.show()
上述代码中,我们通过pandas
模块读取了一份名为shopping.csv
的数据文件,并将其中的Price
列截取出来。然后,通过hist
方法绘制了直方图,并设置了标题和轴标签。最后,通过show
方法展示了图形。
在图形中,我们可以清晰地看到价格在50元以下的商品销售量最多,而高价商品销售量较少,这为商家提供了重要的经营参考。