2017-02-09 2 views
0

음모, 나는 x 축에 날짜를 플롯하고자합니다.matplotlib의 x 축에 날짜를 그리기

import arrow as ar 
date_plt = '2016-04-01' 
_frst_day = '2016-01-01' 
_last_day = '2016-12-31' 
[ar.get(date_plt) + timedelta(days=x) for x in range((ar.get(_last_day) - ar.get(_frst_day)).days + 1)] 

여전히 음모에 라인과 포인트를 그릴 수있는 반면 (그림 참조) I는 x 축에 날짜를 그릴 수있는 방법

enter image description here

+0

date_plt은 무엇인가 : 당신은 (예를 들어 하루에 150)과 마찬가지로, 날짜 x 축에 직접 해결할 수, 플롯 또는 데이터에 주석을? – eyllanesc

+0

감사합니다 @eyllanesc, 업데이트 된 질문 – user308827

답변

1
: 나는 날짜의 목록을 가지고

나는 (가짜 플롯을 생성하는 몇 가지 코드로) 당신이 원하는 생각 :

labels=[ar.get(date_plt) + timedelta(days=x) for x in range((ar.get(_last_day)-ar.get(_frst_day)).days + 1)] 
x=np.arange(366) 
y=x*10 
plt.plot([l.datetime for l in labels],y) #convert arrow in datetime 

주 그 날짜 객체가 플롯이이 인 타이틀 matp에 의해 처리됩니다 이런 식으로 일을 (예를 들어, x, y에 플롯팅하고 틱을 대체하는 것보다는) 확대/축소 및 간격 조절과 같은 lotlib을 사용합니다.

plt.plot(labels[150].datetime,y[150],'o') 
plt.annotate('day 150',(labels[150].datetime,y[150])) 
관련 문제