如何使用Python 的绘图库Matplotlib完成折线图的绘制
现在有一个unrate.cvs文件,内部数据为:
这个数据是每一年的每一个月的失业率,那么下面就将这个数据以折线图的方式来进行绘制,首先这个文件的时间格式不是我们想要的,我们想要1948-1-1这样的格式,所以我们下面的步骤是将这个cvs时间格式先统一转换。
import pandas as pd unrate=pd.read_csv("UNRATE.csv") unrate["DATE"]=pd.to_datetime(unrate['DATE']) print unrate.head(5)
代码分析:
unrate为读到csv文件,然后使用pd的to_datetime方法将unrate['DATE']变成时间,赋值给原来的列,最后输出前5行。
个人发现:将csv文件复制到pycharm中的时候,他自己就自动变成了这样
所以直接读取这个文件,输出就是1948-01-01的形式不用进行类型转换
画图
数据已经有了,下面的任务就是使用python的库,将这些数据以图的形式展现出来
画图是使用matplotlib.pyplot
导入这个库之后,plt.plot()的意思是绘制这个图,plt.show是显示绘制的这个图
效果就是弹出来这样的图,因为我们在plt.plot的是时候,并没有根据数据在获取图,所以当前的图显示的效果是空的
plot(x,y)方法可以有两个参数,第一个参数是图的x轴,第二个参数是图的y轴,举例
这个plot在绘制图的时候,就是x轴表示DATE数据,Y轴表示VALUE数据,那么两个就可以确定唯一的点,多个点连起来就可以确定一条折现图
可以看出这个折现图的已经出来了,但是有一个问题是这个折现图的横坐标因为放不下所以覆盖了,显示不是很清晰。
这个使用了一个方法xticks,为x轴的坐标数据显示旋转,参数rotation=45表示旋转45度,效果为
可以看出横坐标的时间都是斜着45度的方式在放置,所以这样看起来清晰,但是还有一个问题是:这个图上没有标明横坐标是什么,y坐标是什么,以及这个图的标题是什么。
使用xlabel指定x坐标是什么,使用ylabel指定y坐标是什么,使用title指定这个图的标题是什么,效果为: