利用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设计】的支持。

相关文章

Python中函数参数设置及使用的学习笔记

Python中函数参数设置及使用的学习笔记

一、参数和共享引用: In [56]: def changer(a,b): ....: a=2 ....: b[0]='spam' ....: In [57...

Django 外键的使用方法详解

Django 外键的使用方法详解

一、描述 在利用django做网络开发的时候我们会遇到一个问题就是,我们建立了多张数据表,但是多张数据表中的内容是不一样的,但是之间有着联系比如: 我有两张表,一张是记录歌曲信息的内容,...

详解 Python 读写XML文件的实例

详解 Python 读写XML文件的实例

详解 Python 读写XML文件的实例 Python 生成XML文件 from xml.dom import minidom # 生成XML文件方式 def generateX...

Python算法输出1-9数组形成的结果为100的所有运算式

问题: 编写一个在1,2,…,9(顺序不能变)数字之间插入+或-或什么都不插入,使得计算结果总是100的程序,并输出所有的可能性。例如:1 + 2 + 34–5 + 67–8 + 9 =...

Python文件如何引入?详解引入Python文件步骤

Python文件如何引入?详解引入Python文件步骤

python基本语法--引入Python文件 1、新建python文件 :在同目录lib下创建mylib.py和loadlib.py两个文件 2、在mylib.py文件中创建一个Hel...