在Python中的绘图上绘制特定标记

时间:2020-11-10 17:49:59

标签: python pandas plot markers

我有一个图,它在x轴时间和y轴上具有百分比值。该图是根据数据帧输出绘制的。由于我需要检查许多绘图,因此最好插入一些其他颜色的指针。 例如,每个图都从08:00开始时间线,并在20:00时间结束。我将在12:00需要一个红色标记。

我尝试了以下操作:

graph_df是一个df,包含两列:一列带时间,一列带百分比数据。

df = graph_df.loc[graph_df['time'] == "12:00"]
graph_df.plot(x="time", y="percentage", linewidth=1, kind='line')
plt.plot(df['time'], df['percentage'], 'o-', color='red')
plt.show()
plt.savefig(graph_name)

如果我正在使用此部分代码,则可以在12:00时以正确的百分比获得标记,但始终在时间轴的开头。在我的情况下,红点标记为08:00,但关联了正确的百分比。
知道为什么标记不正确吗?

谢谢。

1 个答案:

答案 0 :(得分:1)

将字符串转换为日期时间对象应该可以。 用第一行代替

graph_df["time"] = pd.to_datetime(graph_df["time"]).dt.time
df = graph_df[graph_df["time"].apply(lambda time: time.strftime("%H:%M"))=='12:00']

应该做的事

相关问题