2017-02-22 153 views
0

這裏日期是我的代碼:堆積面積圖和在matplotlib

import datetime as dt 
import matplotlib.pyplot as plt 
import matplotlib.dates as mdates 
dates = ['2014-12-15','2015-11-07','2016-01-10'] 
x = [dt.datetime.strptime(d,'%Y-%m-%d').date() for d in dates] 
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%m/%d/%Y')) 
plt.gca().xaxis.set_major_locator(mdates.DayLocator()) 
plt.stackplot(x,[1,2,3],[7,8,3]) 
plt.gcf().autofmt_xdate() 
plt.show() 

它產生以下情節:

ugly plot

如何解決它只有3個日期?我跟着下面的例子:SO example

回答

3

你只需要設置xticks使用下面的命令:

plt.xticks(x) 

您顯示數字之前就加入這一行。 DayLocator默認顯示每一天。就你而言,你有太多的時間來展示。您可以刪除第7行,設置Daylocator,並將上面的行替換爲將日期設置爲日期的行。這是結果: enter image description here