30 行代码绘出你的微信朋友统计图

项目环境:python 3

环境安装

通过下面命令安装 itchat:

pip install itchat

通过下面命令安装 matplotlib:

pip install matplotlib

Matplotlib 是一个 Python 的 2D 绘图库,它以各种硬拷贝格式和跨平台的交互式环境生成出版质量级别的图形。

先给大家展示下成果图:

image

image.gif

程序结构:

  1. 登录微信;

  2. 统计出微信里好友男女人数;

  3. 根据第 2 步统计的人数画出柱形图。
    登录微信

itchat.auto_login(hotReload=True)

第一次运行程序需要微信扫码登录,这里直接调用 auto_login 方法传入值为 True 的hotReload。该方法会生成一个静态文件 itchat.pkl,用于存储登陆的状态。这样即使程序关闭,一定时间内重新开启也可以不用重新扫码。

####统计人数
用 get_friends 获取所有好友信息。
循环统计时从 1 开始,因为 friends[0] 是自己的信息。

friends=itchat.get_friends(update=True)[0:]  #获取所有好友信息  
male = female = other =0
for i in friends[1:]:
    sex=i["Sex"]
    if sex==1:
        male+=1
    elif sex==2:
        female+=1
    else:
        other+=1
total=len(friends[1:])

再打印出统计比例:

print("男性好友: %.2f%%" % (float(male)/total*100) + "\n" +
"女性好友: %.2f%%" % (float(female) / total * 100) + "\n" +
"不明性别好友: %.2f%%" % (float(other) / total * 100))

画图
设置 x 轴、 y 轴 和标题的名称,定义柱形图的颜色,最后通过 plt.show显示出来。

'''
遇到不懂的问题?Python学习交流群:821460695满足你的需求,资料都已经上传群文件,可以自行下载!
'''
plt.xlabel("sex")
plt.ylabel("count")
plt.title("Gender statistics")
a=plt.subplot(1,1,1)
plt.bar(10, male, facecolor='red', width=3, label='male')
plt.bar(15, female, facecolor='yellow', width=3, label='female')
plt.bar(20, other, facecolor='blue', width=3, label='other')
plt.legend()
plt.show()

这样微信好友的统计图就完成了,当然,这只是 itchat 冰山一角的功能,还有很多有意思的功能等着我们去挖掘。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值