반응형
x 축에 날짜 그래프를 그리고 y 축에 값을 그리려고합니다. x 축의 범위를 적절하게 얻을 수 없다는 점을 제외하면 잘 작동합니다. x 축 범위는 내 날짜가 오늘 임에도 불구하고 항상 2012 년 1 월부터 2016 년 1 월까지입니다. xlim이 첫 번째이자 마지막 날짜 여야한다고 지정하고 있습니다.
관련이 있다면 python-django를 위해 이것을 작성하고 있습니다.
import datetime
import matplotlib.pyplot as plt
x = [datetime.date(2014, 1, 29), datetime.date(2014, 1, 29), datetime.date(2014, 1, 29)]
y = [2, 4, 1]
fig, ax = plt.subplots()
ax.plot_date(x, y)
ax.set_xlim([x[0], x[-1]])
canvas = FigureCanvas(plt.figure(1))
response = HttpResponse(content_type='image/png')
canvas.print_png(response)
return response
다음은 출력입니다.
해결 방법
OP에서 실제 데이터를 확인하면 모든 값이 동일한 날짜 / 시간에 있습니다. 따라서 matplotlib는 x 축을 자동으로 축소합니다. datetime
객체를 사용하여 x 축 제한을 수동으로 설정할 수 있습니다.
matplotlib v1.3.1에서 다음과 같이하면 :
import datetime
import matplotlib.pyplot as plt
x = [datetime.date(2014, 1, 29)] * 3
y = [2, 4, 1]
fig, ax = plt.subplots()
ax.plot_date(x, y, markerfacecolor='CornflowerBlue', markeredgecolor='white')
fig.autofmt_xdate()
ax.set_xlim([datetime.date(2014, 1, 26), datetime.date(2014, 2, 1)])
ax.set_ylim([0, 5])
나는 얻다:
축 제한은 내가 지정한 날짜와 일치합니다.
참조 페이지 https://stackoverflow.com/questions/21423158
반응형
'파이썬' 카테고리의 다른 글
파이썬 timedelta를 부동 소수점으로 변환 (0) | 2020.12.24 |
---|---|
파이썬 Python을 사용하여 MS Office 매크로를 프로그래밍 하시겠습니까? (0) | 2020.12.24 |
파이썬 Pandas : 다단계 열 이름 (0) | 2020.12.24 |
파이썬 matplotlib에서만 테두리가있는 사각형 그리기 (0) | 2020.12.24 |
파이썬 Matlab의 'hold on'에 해당하는 Python (0) | 2020.12.24 |
댓글