python画净值走势图

最近开始学习pandas和matplotlib,于是找了4只银行理财产品的2020年以来的净值数据,尝试计划画出其净值走势图。

数据格式是这个样的,共600多条,一条净值数据一行。有些产品并不是每天披露净值,只能有多少画多少了。原有的数据显然不能直接画图,需要重新整理数据。最终数据形式为:第一列为日期,第二列至第五列为不同产品的累计净值的数据形式。


过程:

第一步pandas读取excel数据;

第二把数据形式通过pandas的透视表功能转化成可画图的形式;

第三步用matplotlib画图。

做之前感觉挺简单的,但是我做了一整天,因为是刚开始学嘛,边学边做,基本是靠百度和哔哩哔哩的视频。看到最后的成果,很有成就感。

我认为,过程中有两个难点:一是把数据转化成可以画图的形式,因为横轴是日期,纵轴是净值;二是中文显示问题,试了好多网上的方法,都不行,好在最终找到适合mac系统的方法。

虽然做出来了,但还有个问题没解决:一是图标上显示了none,不知道怎么去掉。二是有只产品的几个数据就是不显示,最终也没有解决。

以下是代码:

import pandasas pd

import matplotlib

import matplotlib.pyplotas plt

plt.rcParams['font.family']='Arial Unicode MS'          #mac显示中文字体

table=pd.read_excel('/Users/xueyzh/Documents/测试数据.xlsx')

table=pd.pivot_table(table,values=['累计净值'],index=['净值日期'],columns='产品代码')

table.plot()

plt.show()

结果:

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容