Python利用matplotlib绘制约数个数统计图示例

前端之家收集整理的这篇文章主要介绍了Python利用matplotlib绘制约数个数统计图示例前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

本文实例讲述了Python利用matplotlib绘制约数个数统计图。分享给大家供大家参考,具体如下:

利用Python计算1000以内自然数的约数个数,然后通过matplotlib绘制统计图。

下图为约数个数的散点图及其分布情况的条形图。

Python利用matplotlib绘制约数个数统计图示例

Python代码

import collections
import matplotlib.pyplot as plt
def countDivisors(num):
  ans = 1
  x = 2
  while x * x <= num:
    cnt = 1
    while num % x == 0:
      cnt += 1
      num /= x
    ans *= cnt
    x += 1
  return ans * (1 + (num > 1))
MAXNUM = 1000
x = range(1,MAXNUM)
y = map(countDivisors,x)
plt.subplot(2,1,1)
plt.title('Divisors Count')
plt.xlim(0,MAXNUM)
plt.ylim(0,max(y) + 1)
plt.scatter(x,y)
plt.grid(True)
plt.subplot(2,2)
plt.title('Statistics of Divisor Count')
z = collections.Counter(y)
plt.bar(z.keys(),z.values(),align = 'center')
plt.grid(True)
plt.show()

更多关于Python相关内容感兴趣的读者可查看本站专题:《Python数学运算技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

猜你在找的Python相关文章