我有一个时间序列,用于绘制5个不同的变量的热图。对于x轴,我希望每年有较大的滴答声,每半年有较小的滴答声。从MWE中可以看到,默认情况下,日期采用的是可怕的,非常精细的方式。
有关最低限度的工作示例:
import numpy as np
import pandas as pd
import seaborn as sns
import matplotlib.pyplot as plt
test = pd.DataFrame(
data=[np.random.random(5) for x in range(365*3+366)],
index=pd.date_range('2014-01-01','2017-12-31',freq = 'D')
)
fig, ax = plt.subplots(figsize=(20,10))
ax = sns.heatmap(test.T > 0.5,cmap="Blues")
plt.show()
我尝试通过添加
使用matplotlib.mdates.YearLocator
years = mdates.YearLocator()
ax.axes.xaxis.set_major_locator(years)
在plt.show()
之前,但这只是将整个x轴擦拭干净。
很抱歉,这个问题是否在其他地方得到了回答,因为我敢肯定它一定是某种格式,但我似乎找不到它。