python - 在同一图中绘制具有不同 x 轴的线

标签 python dataframe matplotlib

我有两个数据帧 df 和 df2。他们将日期作为索引,将股价作为列。 日期 df 是 1/12/18-现在 df2 的日期现在是 +1 天,现在是 +2 天,现在是 +3 天 我想将它们绘制在同一张图表中。我还希望 x asix 的间隔为 10 天。这是我的尝试

import matplotlib.pyplot as plt   
import numpy as np
import matplotlib.dates as mdates

ax1 = plt.subplots(111)
ax2 = plt.subplots(112)
plt.xticks(rotation=70)

y1=df
y2=df2
X2=pd.to_datetime(df2.index)
x=pd.to_datetime(df.index)
ax1.plot(x, y1, 'g-')
ax2.plot(x2, y2, 'b-')

ax1.xaxis.set_major_locator(mdates.DayLocator(interval=10))
ax1.xaxis.set_major_formatter(mdates.DateFormatter('%d-%m-%Y'))

但是获取 key 错误消息为

---> 17     ax1.plot(x, y1, 'g-')
     18     ax2.plot(x2, y2, 'b-')

属性错误:“元组”对象没有属性“绘图”

最佳答案

子图的参数是您要创建的子图的数量。因此给一个,这似乎是你需要的。如果您想将它们绘制在同一个图表中,请使用相同的轴。

fig,ax1 = plt.subplots(1)

y1=df
y2=df2
X2=pd.to_datetime(df2.index)
x=pd.to_datetime(df.index)
ax1.plot(x, y1, 'g-')
ax1.plot(x2, y2, 'b-')

关于python - 在同一图中绘制具有不同 x 轴的线,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53878875/

相关文章:

python - 在单轴上绘制值和标签(一维散点图)

python - 我如何构造这个 while 循环,以便它检查两个条件并在必要时终止它

python - 为什么在 Django View 中使用 Popen 会挂起?

python - 如何将条件应用于 pandas iloc

python - 将长数据帧转换为宽数据帧

python - 绘制多维特征的散点图

Python 列表基本操作

python - 使用 Python 在 NetCDF 文件上提取具有精确坐标的点

r - 堆叠三列组以及多个样本的均值和置信区间

python - 如何向 Seaborn Heatmap 添加标题和轴标签?