Python中为什么用pyplot打印出来的图片日期是3个月一个间隔?而不是每个月

import csv
import matplotlib.pyplot as plt
from datetime import datetime

filename = ‘death_valley_2014.csv’ with open(filename) as f: reader = csv.reader(f) header_row = next(reader) highs,dates,lows = [],[],[] for item in reader: try: time = datetime.strptime(item[0],’%Y-%m-%d’) dates.append(time) high = item[1] low = item[3] except ValueError: print(time,“missing data”) else: highs.append(high) lows.append(low) fig = plt.figure(dpi=128,figsize = (18,10)) plt.plot(dates,highs,c=‘red’) plt.plot(dates,lows,c=‘blue’) plt.fill_between(dates,highs,lows,facecolor=“blue”,alpha=0.1) plt.show()

biao dates 这个 list 中是 1 月到 12 月,但是 x 轴只显示 1、3、5、7、9、11 怎么让他每个都显示?


Python中为什么用pyplot打印出来的图片日期是3个月一个间隔?而不是每个月

5 回复

plt.xticks(dates) ?


我无法理解你的问题

不行,下面的日期重叠在一起了 显示了 2 次

1 楼正解,你只需要调整一下参数就行

想一想反正都说到这儿了,就举个例子吧,

<br>locs = np.arange('2018-01-01', '2019-01-01', dtype='datetime64[M]')<br>xticks(locs, locs, rotation=45)<br>

回到顶部