首页 > 解决方案 > 如何重新创建熊猫 DataFrame、线条和条形图

问题描述

以前我设法创建了以下情节

在此处输入图像描述

import pandas as pd
import matplotlib.pyplot as plt

df_prog = pd.DataFrame({"Prognos tim": [2, 3, 3]})
df_prog.index = pd.date_range(start='2020-01-01 00', end='2020-01-01 02', freq='H')
df_prog.index = df_prog.index + pd.Timedelta(minutes=30)

现在我试图再次创建这个情节但没有成功。我的记忆力让我失望

我试过了

ax = df_prog.plot(kind='bar')
df_prog.plot(kind='line')

如在同一图表上将 Pandas DataFrame 绘制为 Bar 和 Line 中所述

但是根据首先选择哪个,条形或线,只显示一个,而不是在同一个图中。

标签: pythonpandasmatplotlib

解决方案


您需要将时间轴转换为字符串。然后你可以将它们绘制在一起。

import pandas as pd
import matplotlib.pyplot as plt

df_prog = pd.DataFrame({"Prognos tim": [2, 3, 3]})
df_prog.index = pd.date_range(start='2020-01-01 00', end='2020-01-01 02', freq='H')
df_prog.index = df_prog.index + pd.Timedelta(minutes=30)

_, ax = plt.subplots()
df_prog.index = df_prog.index.astype(str)
df_prog.plot(kind='line', linestyle='-', marker='o', color='r', ax=ax)
df_prog.plot(kind='bar', ax=ax)

plt.show()

在此处输入图像描述


推荐阅读