2.4 数据可视化:使用Matplotlib等工具
除上述直接使用Pandas来作图外,Python中的Matplotlib库是用于创建静态、动态和交互式的2D和3D图形的强大工具。在金融领域中,数据可视化帮助我们更好地理解和解释数据,从而做出更好的决策。下面以绘制收盘价的直方图、时间序列图,以及收盘价和成交量的散点图为例,通过Python的包管理器pip来安装Matplotlib,然后输入以下命令。

之后导入所需要的库。

假设我们已经获取了2023年1月1日至2023年7月1日苹果公司的历史数据,就可以用以下代码绘制收盘价的直方图。

得到的结果如图2.9所示。

图2.9 苹果公司收盘价的直方图
接下来,我们可以绘制时间序列图来观察收盘价随时间的变化。

得到的结果如图2.10所示。

图2.10 苹果公司收盘价的时间序列图
除此之外,我们还可以绘制收盘价和成交量的散点图,以便更好地理解这两个变量之间的关系。

得到的结果如图2.11所示。

图2.11 苹果公司收盘价和成交量的散点图
如果我们使用三维图来表示日期、收盘价和成交量之间的关系,为了使坐标显示日期,我们还需要导入另外两个库。


得到的结果如图2.12所示。

图2.12 苹果公司对应不同时间收盘价和成交量的3D散点图
其中,使用的库为matplotlib.ticker和datetime,具体需要调用的函数如下。
(1)from matplotlib.ticker import FuncFormatter:matplotlib.ticker模块提供了一些类和函数用于自定义刻度的位置和标签。FuncFormatter是其中的一个类,它可以接收一个自定义的函数作为参数,用于格式化刻度标签。这个函数应该接收两个参数:刻度的值和刻度的位置,然后返回一个字符串作为刻度标签。在代码中,这个函数将刻度值从序数转换为日期,然后将日期格式化为字符串。
(2)from datetime import datetime:datetime是Python标准库中的一个模块,它提供了一些类和函数用于操作日期和时间。datetime模块中还有一个名为datetime的类,这个类可以表示一个具体的日期和时间。在代码中,datetime.fromordinal()函数将序数转换为日期,然后将日期格式化为字符串。
这些是使用Matplotlib库在Python中对金融数据进行可视化的一种方式。同样,你可以使用其他可视化库(如Seaborn、Plotly等)来根据你的需求进行更复杂的数据可视化。