我一直在尝试使用pandas dataframe plot函数绘制一些时间序列图。我试图在图上的某些任意点添加标记以显示异常点。我使用的代码:
df1 = pd.DataFrame({'Entropy Values' : MeanValues}, index=DateRange)
df1.plot(linestyle = '-')
我有一个日期列表,我需要在其上添加标记。例如:
Dates = ['15:45:00', '15:50:00', '15:55:00', '16:00:00']
我查看了这个链接matplotlib: Set markers for individual points on a line。 DF.plot是否具有类似的功能?
我真的很感激帮助。谢谢!
答案 0 :(得分:1)
DataFrame.plot
将所有无法识别的关键字参数传递给matplotlib
绘图方法。要将标记放在图中的几个点上,可以使用markevery
参数。这是一个例子:
import pandas as pd
df = pd.DataFrame({'A': range(10), 'B': range(10)}).set_index('A')
df.plot(linestyle='-', markevery=[1, 5, 7, 8], marker='o', markerfacecolor='r')
在您的情况下,您必须执行类似
的操作df1.plot(linestyle='-', markevery=Dates, marker='o', markerfacecolor='r')