带有日期时间对象的seaborn绘图

时间:2020-10-06 12:11:01

标签: python pandas seaborn

enter image description here

我不知道为什么每次我用seaborn绘图时,总是显示所有日期对象,如下所示。
我已经检查过我的“ join_date”是一个对象,而不是datetime。
有谁知道这是什么问题,我该如何解决?

1 个答案:

答案 0 :(得分:1)

一种解决方案是,您可以在使用to_period方法进行绘图之前修改datetime object。这是一个示例:

import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt

#generating some test data
days = pd.date_range('1/1/2000', periods=8, freq='D')
d2 = dict({'price': [10, 11, 9, 13, 14, 18, 17, 19]})
df = pd.DataFrame(d2,index=days)
print(df)

#making join_date a datetime object
#df['join_date'] = pd.to_datetime(df['join_date'])

#setting join_date as index of the dataframe
#df.set_index(['join_date'],inplace=True)

#reducing the datetime object assuming the datetime is index and it is in pandas datetime format
df.index = df.index.to_period("D") 

#plotting the heatmap
sns.heatmap(data=df)
plt.tight_layout()
plt.show()

原始出局

enter image description here

使用to_period 后的最终支出:

enter image description here