我有一个在x轴上有日期的图,在y轴上有一些任意数字。 我希望每隔一个星期六有一个x-tick。到目前为止,这可以使用以下代码正常工作:
weeks = matplotlib.dates.WeekdayLocator(byweekday=5, interval=2)
ax.xaxis.set_major_locator(weeks)
我现在已经在今年7月4日,即7月18日,等等... 但是我希望在7月11日,7月25日有蜱虫......
如何给它一个星期的偏移?
提前感谢!
答案 0 :(得分:-1)
所以这可能是作弊,因为我使用pandas
,但我认为它有效。
import pandas as pd
#get all Saturdays in the range
all_sats = pd.date_range(start='20150101', end='20150630', freq='W-Sat')
#get every other Saturday in the range
eo_sats = pd.date_range(start='20150101', end='20150630', freq='2W-Sat')
#get properly offset list of Saturdays using a set difference
final_sats = all_sats.difference(eo_sats)
现在,您可以将final_sats
提供给ax.set_xticks
comme ca:
ax.set_xticks(final_sats)