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


Posted in Python onNovember 26, 2019

本文实例讲述了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, 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程序设计有所帮助。

Python 相关文章推荐
Python爬虫之xlml解析库(全面了解)
Aug 08 Python
使用pycharm设置控制台不换行的操作方法
Jan 19 Python
python实现K近邻回归,采用等权重和不等权重的方法
Jan 23 Python
Python 限定函数参数的类型及默认值方式
Dec 24 Python
pycharm运行程序时看不到任何结果显示的解决
Feb 21 Python
django实现模板中的字符串文字和自动转义
Mar 31 Python
python中对二维列表中一维列表的调用方法
Jun 07 Python
python实现批处理文件
Jul 28 Python
Tensorflow使用Anaconda、pycharm安装记录
Jul 29 Python
vscode调试django项目的方法
Aug 06 Python
详细介绍python类及类的用法
May 31 Python
python not运算符的实例用法
Jun 30 Python
创建Shapefile文件并写入数据的例子
Nov 26 #Python
python使用opencv在Windows下调用摄像头实现解析
Nov 26 #Python
使用Python实现 学生学籍管理系统
Nov 26 #Python
python redis 批量设置过期key过程解析
Nov 26 #Python
python3 tkinter实现添加图片和文本
Nov 26 #Python
使用Rasterio读取栅格数据的实例讲解
Nov 26 #Python
Python小程序之在图片上加入数字的代码
Nov 26 #Python
You might like
PHP实现支付宝即时到账功能
2016/12/21 PHP
PHP实践教程之过滤、验证、转义与密码详解
2017/07/24 PHP
PHP的垃圾回收机制代码实例讲解
2021/02/27 PHP
js文件中调用js的实现方法小结
2009/10/23 Javascript
js跟随滚动条滚动浮动代码
2009/12/31 Javascript
jQuery 顺便学习下CSS选择器 奇偶匹配nth-child(even)
2010/05/24 Javascript
javascript学习笔记(三) String 字符串类型介绍
2012/06/19 Javascript
AngularJS iframe跨域打开内容时报错误的解决办法
2015/01/26 Javascript
JavaScript中String.match()方法的使用详解
2015/06/06 Javascript
JS动态插入并立即执行回调函数的方法
2016/04/21 Javascript
window.open不被拦截的简单实现代码(推荐)
2016/08/04 Javascript
javascript对浅拷贝和深拷贝的详解
2016/10/14 Javascript
NodeJS仿WebApi路由示例
2017/02/28 NodeJs
利用vue.js插入dom节点的方法
2017/03/15 Javascript
Vue.js 插件开发详解
2017/03/29 Javascript
Vuex利用state保存新闻数据实例
2017/06/28 Javascript
深入浅析JSONAPI在PHP中的应用
2017/12/24 Javascript
vue+element导航栏高亮显示的解决方式
2019/11/12 Javascript
JavaScript设计模式--简单工厂模式定义与应用案例详解
2020/05/23 Javascript
原生js实现五子棋游戏
2020/05/28 Javascript
python多线程抽象编程模型详解
2019/03/20 Python
python3爬虫学习之数据存储txt的案例详解
2019/04/24 Python
django创建最简单HTML页面跳转方法
2019/08/16 Python
Python sep参数使用方法详解
2020/02/12 Python
Python基础之列表常见操作经典实例详解
2020/02/26 Python
matplotlib jupyter notebook 图像可视化 plt show操作
2020/04/24 Python
日本最大的购物网站:日本乐天市场(Rakuten Ichiba)
2020/11/04 全球购物
策划主管的工作职责
2013/11/24 职场文书
售后求职信范文
2014/03/15 职场文书
学习雷锋活动总结
2014/04/29 职场文书
乡镇干部先进性教育活动个人整改措施
2014/09/16 职场文书
授权委托书
2014/09/17 职场文书
2015年学校医务室工作总结
2015/07/20 职场文书
pycharm无法导入lxml的解决办法
2021/03/31 Python
CSS控制继承中的height能变为可继承吗
2022/06/10 HTML / CSS
Mybatis-plus配置分页插件返回统一结果集
2022/06/21 Java/Android