如何在Matplotlib中绘制两个Pandas时间序列的相同图,并在该图中添加图例和次级Y轴?

如何在Matplotlib中绘制两个Pandas时间序列的相同图,并在该图中添加图例和次级Y轴?

概述

Matplotlib是一种绘图库,支持多种图表类型,包括线图、散点图、柱状图等。 在本文中,我们将展示如何使用Matplotlib来绘制两个Pandas时间序列的相同图像,并向图像添加图例和次级Y轴。

步骤

首先,我们需要导入所需的库:

import pandas as pd
import matplotlib.pyplot as plt

接下来,我们将创建两个Pandas时间序列,并将它们放在同一个图中。 我们可以使用以下代码创建这些时间序列:

# 创建时间序列数据
df1 = pd.DataFrame([1, 2, 3, 4, 5], index=pd.date_range(start='2021-01-01', periods=5, freq='D'))
df2 = pd.DataFrame([5, 4, 3, 2, 1], index=pd.date_range(start='2021-01-01', periods=5, freq='D'))

# 绘制两个时间序列的折线图
plt.plot(df1,'r',label='df1')
plt.plot(df2,'g',label='df2')

我们使用pd.DataFrame创建了两个时间序列,df1df2,并分别在1月1日至1月5日、2月1日至2月5日的时间范围内设置了它们的数据。D表示按天计算时间间隔。

我们使用plt.plot函数在同一图中绘制了这两个数据框。 plt.plot函数以以下方式工作:第一个参数是我们要绘制的数据,第二个参数是线条的颜色和样式,第三个参数是图例标签。

现在,我们可以添加图例和次级Y轴。 我们可以使用以下代码:

# 添加图例和次级Y轴
plt.legend(loc='upper left')
plt.twinx()

# 显示图像
plt.show()

plt.legend函数在左上角添加了图例。

‘plt.twinx’函数允许我们在同一图上绘制次级Y轴。

完整代码块如下:

import pandas as pd
import matplotlib.pyplot as plt


# 创建时间序列数据
df1 = pd.DataFrame([1, 2, 3, 4, 5], index=pd.date_range(start='2021-01-01', periods=5, freq='D'))
df2 = pd.DataFrame([5, 4, 3, 2, 1], index=pd.date_range(start='2021-01-01', periods=5, freq='D'))

# 绘制两个时间序列的折线图
plt.plot(df1,'r',label='df1')
plt.plot(df2,'g',label='df2')


# 添加图例和次级Y轴
plt.legend(loc='upper left')
plt.twinx()

# 显示图像
plt.show()

结论

在Matplotlib中绘制两个Pandas时间序列的相同图是简单而直接的。 通过一些简单的代码,我们可以实现这个目标并向图像添加图例和次级Y轴。有了这些技巧,我们可以轻松地可视化我们的数据并从中获得更多的洞见。

Camera课程

Python教程

Java教程

Web教程

数据库教程

图形图像教程

办公软件教程

Linux教程

计算机教程

大数据教程

开发工具教程