将数据绘制为图表,可以帮我们直观地发现数据的一些内在结构,及数据层面可能存在的问题。但必须要注意的一点是,人们经常关注自己期望结果的相关证据,而会忽略其余部分,所以一般来说,对于构建一个假设来说绘图会很有帮助,但千万不要试图从图形层面去验证一个假设。
matplotlib是Python中常用的一个绘图库,之前的几篇文章中也有已经有所提及,这篇我们再专门介绍一下。
数据准备
在绘图前我们先准备一下后续需要的数据,先引入matplotlib库
引入matplotlib库
这篇文章中我们使用苹果与微软的价格数据为基础,通过get_pricing方法我们会获取到一个DataFrame,我们将列名由默认修改为易于处理的股票代码
获取原始数据
接下来我们就根据这个数据,来介绍几种常见的图表。
直方图(Histogram)
直方图常用于显示不同数据的出现频率,可以直观地显示出观测数据中大部分数据的分布情况。直方图中每个条块的纵向高度表示频率,横向则为观测数据划分的不同区间。直方图可看作为一个离散的概率密度函数(P.D.F)。
首先我们将微软2014年的股价,横向切分为20个区间,展示价格在不同区间出现的频率。
示例代码
微软2014年价格直方图
进一步,我们可以通过pct_change()函数将价格数据转换为价格变动数据,进而展示出每日价格波动比率的分布情况。
示例代码
微软2014年每日价格变动直方图
累计概率密度函数(C.D.F)应用也非常广泛,与概率密度函数不同之处在于,每个区域的直方块高度不仅仅包含本区间内出现次数,还包含了其左侧所有直方块代表的次数,所以图表中展示为一个从左至右不断升高的图形。
示例代码
微软2014年每日价格波动的累计概率密度直方图
散点图(Scatter plot)
散点图常用于分析两个数据集间的关联关系,两个数据集需要有一定的关联,如下例中微软和苹果公司的股票价格通过日历关联,散点图中没一点表示相同日期两个公司的股票价格。
示例代码
苹果与微软的股票价格散点图
同样,我们使用pct_change()函数,将价格数据转换为价格变动数据,再来绘制一次散点图
示例代码
苹果与微软价格变化率散点图
线图(Line graph)
线图用来展示Y轴变量随X轴变量的变化趋势,价格波动图就是最为常见的线图,表示股票价格随时间的变化所发生的变化。我们来绘制出微软与苹果2014年的股票价格变动图。
示例代码
股票价格变动图
通过以上的介绍,是不是觉得matplotlib很酷,将扁平的数据转化为活灵活现的图标,这将非常有助于我们去验证一些自己的想法。
本文就到这里,感谢阅读,欢迎订阅。
网友评论