https://www.jianshu.com/p/6905e310252b 參考
需要畫柱狀圖,日期刻度比較密集,自動出來的結果成了這樣
![](https://img.laitimes.com/img/9ZDMuAjOiMmIsIjOiQnIsICM38FdsYkRGZkRG9lcvx2bjxiNx8VZ6l2cs0TPn5ENZRUT0klaNBDOsJGcohVYsR2MMBjVtJWd0ckW65UbM5WOHJWa5kHT20ESjBjUIF2X0hXZ0xCMx81dvRWYoNHLrdEZwZ1Rh5WNXp1bwNjW1ZUba9VZwlHdssmch1mclRXY39CXldWYtlWPzNXZj9mcw1ycz9WL49zZuBnL3AjN0MDMzETM3IDOwkTMwIzLc52YucWbp5GZzNmLn9Gbi1yZtl2Lc9CX6MHc0RHaiojIsJye.png)
于是就在網上搜尋如何自己設定刻度
目前找到的方法是:
import matplotlib.dates as dates
- #擷取每月一日資料
- monthdays = dates.MonthLocator()
- #擷取每周一的日期資料
- mondays = dates.WeekdayLocator(dates.MONDAY)
- #擷取每日資料
- alldays = dates.DayLocator()
- #設定主刻度 即長刻度線
- ax.xaxis.set_major_locator(monthdays)
- #設定副刻度 即短刻度線
- ax.xaxis.set_minor_locator(alldays)
- monthFormatter = dates.DateFormatter( '%m-%Y') # 如:2-2015
- dayFormatter = dates.DateFormatter( '%d') # 如:12
- #設定主刻度格式
- ax.xaxis.set_major_formatter(monthFormatter)
- #自動調整xtick的間距
- fig.autofmt_xdate()
這些在曲線圖上有效,但是在柱狀圖上卻顯示不出來刻度了
看到網站上有這樣解答的
https://stackoverflow.com/questions/30133280/pandas-bar-plot-changes-date-format
裡面的解決方法并沒有找到有效的
https://www.jianshu.com/p/6905e310252b 參考