首页 > 解决方案 > 如何在python中绘制直方图

问题描述

我有一个项目列表(有重复项目)。

Total_Item={12,13,13,16,....10}

当我执行

 import collections
  ..
  ..

  print collections.Counter(Total_Item)

我得到以下输出

Counter({13: 17, 12: 12, 14: 9, 15: 5, 11: 2, 17: 2, 10: 1, 16: 1})

我想绘制一个直方图来显示此列表中不同项目的分布。

我已经使用 google sheet 进行了绘制,但这很耗时。

在此处输入图像描述

如何在python中绘制直方图?

根据评论中的建议和这个链接matplotlib,我可以打印直方图。

  import matplotlib.pyplot as plt
  import collections
  ..
  ..

  print collections.Counter(Total_Item)
  plt.figure()
  plt.hist(Total_Item)
  plt.show()

标签: pythonpython-2.7

解决方案


这是来自https://pythonspot.com/matplotlib-histogram/的一个简单示例

import numpy as np
import matplotlib.mlab as mlab
import matplotlib.pyplot as plt

x = [21,22,23,4,5,6,77,8,9,10,31,32,33,34,35,36,37,18,49,50,100]
num_bins = 5
n, bins, patches = plt.hist(x, num_bins, facecolor='blue', alpha=0.5)
plt.show()

推荐阅读