Гистограмма не отображается в pdf при построении
Я пытаюсь отобразить в файле PDF временной ряд и гистограмму для каждой из переменных в моем фрейме данных. Каждое действие работает отдельно, но при построении их обоих на одной странице гистограмма не отображается. Есть идеи, что я делаю не так? Вот мой код:
with PdfPages('test.pdf') as pdf:
for i in range(df.shape[1]):
fig = plt.figure()
#time series
plt.subplot(2, 1, 1)
ax1 = df.iloc[:,i].plot(color='blue', grid=True, label='lab')
plt.title(df.columns.values[i])
#histograms
plt.subplot(2, 1, 2)
hist=df.hist(df.columns.values[i])
plt.plot()
pdf.savefig(fig)
plt.close()
1 ответ
Я не совсем уверен, смогу ли я действительно воспроизвести вашу ошибку - однако, есть некоторые вещи, которые я бы оптимизировал в вашем коде, возможно, вы можете подумать об этом на следующем примере:
with PdfPages('test.pdf') as pdf:
for c in df:
fig, axs = plt.subplots(2)
#time series
fig.suptitle(c)
df[c].plot(color='blue', grid=True, label='lab', ax=axs[0])
#histogram
hist=df.hist(c, ax=axs[1])
pdf.savefig(fig)
#plt.close()
Основные советы:
- Нет необходимости перебирать значения столбцов данных
- использование
plt.subplots()
для нескольких участков в одной фигуре - я удалил
plt.plot()
- это ничего не делает