Pandas 是一种非常流行的数据分析工具,同时它还为数据可视化提供了很好的选择。
数据可视化是使数据科学项目成功的重要一步——一个有效的可视化图表可以胜过上千文字描述。
数据可视化是捕捉趋势和分享从数据中获得的见解的非常有效的方式,流行的可视化工具有很,它们各具特色,但是在今天的文章中,我们将学习使用 Pandas 进行绘图。
Pandas 的 plot() 方法
Pandas 附带了一些绘图功能,底层都是基于 Matplotlib 库的,也就是说,由 Pandas 库创建的任何绘图都是 Matplotlib 对象。
从技术上讲,Pandas 的 plot()
方法通过 kind
关键字参数提供了一组绘图样式,以此来创建美观的绘图。kind
参数的默认值是行字符串值。我们可以将 11 种不同的字符串值分配给 kind 参数,也就可以创建出不一样的绘图了。
同时 .plot
也是 Pandas DataFrame 和 series 对象的属性,提供了 Matplotlib 可用的一小部分绘图功能。事实上,Pandas 通过为我们自动化大部分数据可视化过程,使绘图变得像编写一行代码一样简单。
导入库和数据集
在今天的文章中,我们将研究 Facebook、微软和苹果股票的每周收盘价。以下代码导入可视化所需的必要库和数据集,然后在输出中显示 DataFrame 的内容。 %matplotlib 内联魔法命令也被添加到代码中,以确保绘制的数字正确显示在笔记本单元格中:
import pandas as pd
import numpy as np
import matplotlib.pyplot as plt
df = pd.read_csv('weekly_stocks.csv', parse_dates=['Date'], index_col='Date')
pd.set_option('display.max.columns', None)
print(df.head())
Output:
MSFT FB AAPL
Date
2021-05-24 249.679993 328.730011 124.610001
2021-05-31 250.789993 330.350006 125.889999
2021-06-07 257.890015 331.260010 127.349998
2021-06-14 259.429993 329.660004 130.460007
2021-06-21 265.019989 341.369995 133.110001
我们现在已准备好使用 Pandas 探索和可视化数据了,开始吧
折线图
plot 默认图就是是折线图,它在 x 轴上绘制索引,在 y 轴上绘制 DataFrame 中的其他数字列。
让我们绘制一个折线图,看看微软在过去 12 个月的表现如何:
df.plot(y='MSFT', figsize=(9,6))
Output:
figsize 参数接受两个参数,以英寸为单位的宽度和高度,并允许我们更改输出图形的大小。宽度和高度的默认值分别为 6.4 和 4.8。
通过提供列名列表并将其分配给 y 轴,我们可以从数据中绘制多条线。 例如,让我们看看这三家公司在去年的表现如何: