利用python实现周期财务统计可视化

yipeiwu_com6年前Python基础

正文之前

上午给爸爸打了个电话庆祝他50岁生日,在此之前搞了个大扫除,看了会知乎,到实验室已经十一点多了。约喜欢的妹子吃饭失败,以至于工作积极性收到了打击,所以就写个程序来统计下开学十一天的财务消费情况,更清楚的认识自己。

正文

废话不多说,先放代码:

import matplotlib.pyplot as plt
import matplotlib
from pylab import mpl
plt.rcParams['font.sans-serif']=['SimHei']


def getAll(x):
 s=0
 for i in x:
  s+=i
 return s

sump = [374.9,70,85.5,72.9,33.7,14.8,35.4,30.1,66.52,114.3,-13]
fruit = [0,0,0,10,0,0,0,0,35,0,0]
other = [338.6,50,53.8,49.5,10,0,0,0,6.42,92,-34]
food = []
for i in range(len(sump)):
 food.append(sump[i] - fruit[i] - other[i])

date = []

for i in range(11):
 date.append("8."+str(i+14))

plt.xlabel(u"时间")
plt.ylabel(u"消费")
plt.plot(date,sump)
plt.plot(date,fruit)
plt.plot(date,other)
plt.plot(date,food)

plt.legend()
plt.show()


sump_all = getAll(sump)
fruit_all = getAll(fruit)
other_all = getAll(other)
food_all = getAll(food)

plt.figure(figsize=(6,9)) #调节图形大小
labels = [u'Food '+str(int(food_all)),u'Fruit '+str(fruit_all),u'Other '+str(other_all)] #定义标签
sizes = [food_all,fruit_all,other_all] #每块值
colors = ['red','yellowgreen','lightskyblue'] #每块颜色定义
explode = (0,0,0) #将某一块分割出来,值越大分割出的间隙越大
patches,text1,text2 = plt.pie(sizes,
      explode=explode,
      labels=labels,
      colors=colors,
      autopct = '%3.2f%%', #数值保留固定小数位
      shadow = False, #无阴影设置
      startangle =90, #逆时针起始角度设置
      pctdistance = 0.6) #数值距圆心半径倍数距离
#patches饼图的返回值,texts1饼图外label的文本,texts2饼图内部的文本
# x,y轴刻度设置一致,保证饼图为圆形
plt.axis('equal')
plt.show()

print("十天合计消费:%d"%(fruit_all+other_all+food_all))

其实就画了俩图,一个是折线图,一个饼图

最后总结出来的就是这样了。。

至于每天怎么做统计的,也放个样子出来。

每天花个几分钟统计下,然后隔段时间来做个统计,更清晰的知道自己最近花了多少钱,钱都去哪儿了。很有利于我脱离月光族的状态。。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

在Django的模型中执行原始SQL查询的方法

有时候你会发现Django数据库API带给你的也只有这么多,那你可以为你的数据库写一些自定义SQL查询。 你可以通过导入django.db.connection对像来轻松实现,它代表当前...

深入理解Python 关于supper 的 用法和原理

一、前言 Python 面向对象中有继承这个概念,初学时感觉很牛逼,里面也有个super类,经常见到,最近做一些题才算是理解了。特地记录分享给后来研究的小伙伴,毕竟现在小学生都开始学了(...

解决pyinstaller打包exe文件出现命令窗口一闪而过的问题

解决pyinstaller打包exe文件出现命令窗口一闪而过的问题

用pyinstaller打包的exe文件打开时,命令窗口一闪而过,并且未出现GUI界面,也看不到错误信息,然后去网上搜相关的信息,最多的两种说法: 1.添加raw_input()或者os...

Python 执行字符串表达式函数(eval exec execfile)

仔细研读后学习了三个函数: eval:计算字符串中的表达式 exec:执行字符串中的语句 execfile:用来执行一个文件 需注意的是,exec是一个语句,而eval()和execfi...

python pandas消除空值和空格以及 Nan数据替换方法

在人工采集数据时,经常有可能把空值和空格混在一起,一般也注意不到在本来为空的单元格里加入了空格。这就给做数据处理的人带来了麻烦,因为空值和空格都是代表的无数据,而pandas中Serie...