Matplotlib库画分布图和直方图
首先我们一定要区分直方图和分布图,因为这完全是两个不同的概念。
举例来说:
有一个list,里面有1000个int值,
当我们对这个list统计分布图时,需要对统计出现在list中的所有数值,这个数值不重复,然后统计每个数值出现的次数,然后在x轴上描述出数值,在y轴上描述出该数值出现的次数,这种图叫做分布图,这种图是一种连续的曲线。
当我们对这个list进行分段,例如0-10,10-20,20-30.......,然后统计出现在每个分段中的数值数量,以分段区间为x,数值数量为y,这种图叫做直方图,这种图是离散的,是一块一块的。
画分布图的方式如下:
import seaborn as sns import matplotlib.pyplot as plt # 生成一个示例列表 data = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15] # 绘制分布图 sns.kdeplot(data) # 设置标题和标签 plt.title("Distribution of Data") plt.xlabel("Data Values") plt.ylabel("Density") # 保存分布图 plt.savefig("mydistribution.png")
画直方图的方式如下:
import matplotlib.pyplot as plt import numpy as np # 生成一个包含随机数的列表 data = np.random.normal(size=1000) # 画出直方图 plt.hist(data, bins=50) plt.show()
本文来自博客园,作者:海_纳百川,转载请注明原文链接:https://www.cnblogs.com/chentiao/p/17187164.html,如有侵权联系删除