Python利用matplotlib绘制约数个数统计图示例
人气:0本文实例讲述了Python利用matplotlib绘制约数个数统计图。分享给大家供大家参考,具体如下:
利用Python计算1000以内自然数的约数个数,然后通过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, 1, 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程序设计有所帮助。
您可能感兴趣的文章:
加载全部内容