2017-12-11 4 views
0

나는 각각 15 진수 (1513003977처럼) 이후의 시간을 표현하는 np 배열 또는 int를가집니다. 날짜로 플롯하고 싶습니다. x에서 날짜를 사용할 수 있다는 것을 알았습니다. datetime.datetime 형식 에 대해 전체 배열을 datetime으로 변환 할 수 있습니까?파이썬 : np 배열 os 초를 datetime으로 변환합니다.

datetime.datetime 개체의 목록 인 plt.plot(dates,values)을 호출 할 수 있습니다. 플롯에는 '%Y-%m-%d'과 같은 형식의 xticks가 포함되며 확대 할 때시, 분, 초를 나타내는 아이콘으로 자동 변경됩니다.

+0

'import datetime; datetime.datetime.fromtimestamp (1513003977)' – ImportanceOfBeingErnest

+0

@ImportanceOfBeingErnest이 질문은 약간 다릅니다. 단일 값이 아니라 수위가 적은 배열에있는 에포크 타임 스탬프를 처리합니다. – lxop

+0

@lxop 물론 다른 질문으로 이것을 duplicate로 표시 하시겠습니까? – ImportanceOfBeingErnest

답변

1

당신이 타임 스탬프 dates의 NumPy와 배열을 가정 할 때, 두 가지 일을 다음

ticks = dates.astype('datetime64[s]').tolist() 
plt.plot(ticks, values) 

을 수행 할 수 있습니다 먼저는 NumPy와의 날짜 형식으로 정수 타임 스탬프를 재 해석합니다 ([s]는 단위가 초되도록 지정). datetime64라는 배열에 때

그런 다음 array.tolist()는하기 matplotlib은 당신이 원하는대로 플로팅에 사용할 수있는 datetime.datetime 객체의 목록을 반환합니다.