Я хотел бы создать (суб) график с двумя строками и двумя столбцами, где график в нижней строке занимает обе оси.
Поскольку я использую сюжет из pandas datetime (я думаю), я не смог использовать это решение.
fig, axes = plt.subplots(nrows=2, ncols=2)
df1.set_index('Date').plot(ax=axes[0,0])
df2.set_index('Date').plot(ax=axes[0,1])
df3.set_index('Date').plot(ax=axes ??? )
Как мне нужно назначить оси (если это вообще возможно), чтобы получить что-то вроде этого:
Вы можете сделать это, например:
df = pd.DataFrame( {'date':['2010-01-01','2010-01-02','2010-01-03'],'a1':[5,4,3],'a2':[6,2,9]})
df['date'] = pd.to_datetime(df['date'])
import matplotlib.pyplot as plt
fig = plt.figure()
ax1 = plt.subplot(221)
ax2 = plt.subplot(222)
ax3 = plt.subplot(212)
df.plot(x="date", y='a1',ax=ax1)
df.plot(x="date", y='a2',ax=ax2)
df.plot(x="date", y=['a1','a2'], ax=ax3)
plt.tight_layout()
plt.show()
Только для полноты я отправляю код-фрагмент, который возник из-за помощи stackoverflow. Время datetime двух показаний датчика не синхронизировано, поэтому я не мог бы строить график, как было предложено.
fig = plt.figure()
ax1 = plt.subplot(221)
ax2 = plt.subplot(222)
ax3 = plt.subplot(212)
df1.plot(x='Date', y='series1',ax=ax1)
df2.plot(x='Date', y='series2',ax=ax2)
df1.plot(x='Date', y='series1',ax=ax3)
df2.plot(x='Date', y='series2',ax=ax3)
plt.tight_layout()
plt.show()
plot_date(df3.index, df3[0], '-')
. Если бы вы дали минимальный воспроизводимый пример , я бы показал это в ответе.