Matplotlib 플롯 시계열

Suraj Joshi 2024년2월15일
  1. 텍스트를datetime.datetime 형식으로 변환하여 Matplotlib에 시계열 데이터 플로팅
  2. matplotlib.pyplot.plot_date()메서드를 사용하여 Matplotlib에 시계열 데이터 플로팅
Matplotlib 플롯 시계열

Python에서 시계열 데이터를 플로팅하려면 다음을 사용하여 텍스트 형식의 날짜를 datetime.datetime 형식으로 변환 할 수 있습니다. datetime.strptime() 함수. matplotlib.pyplot.plot_date() 함수를 사용할 수도 있습니다.

텍스트를datetime.datetime 형식으로 변환하여 Matplotlib에 시계열 데이터 플로팅

from datetime import datetime
import matplotlib.pyplot as plt

dates = [
    "2020-may-20",
    "2020-may-21",
    "2020-may-22",
    "2020-may-23",
    "2020-may-24",
    "2020-may-25",
    "2020-may-26",
]
x = [datetime.strptime(date, "%Y-%b-%d").date() for date in dates]
y = [20, 30, 35, 18, 24, 28, 26]

plt.plot(x, y, marker="o")
plt.gcf().set_size_inches(9, 7)
plt.show()

출력:

텍스트를 datetime 형식으로 변환하여 Matplotlib에서 시계열 데이터 플로팅

먼저strptime()메서드를 사용하여 텍스트의 날짜를datetime 형식으로 변환하여dates 목록에 주어진 시계열 데이터의 플롯을 생성합니다. date()메소드를datetime 객체에 사용하면datetime 객체의 시간 부분을 무시합니다. 그런 다음plot()메서드를 사용하여datetime 형식으로 데이터를 플로팅합니다.

matplotlib.pyplot.plot_date()메서드를 사용하여 Matplotlib에 시계열 데이터 플로팅

날짜가datetime 형식이면matplotlib.pyplot.plot_date()메서드를 사용하여 데이터에서 시계열 플롯을 생성 할 수 있습니다.

from datetime import datetime
import matplotlib.pyplot as plt

dates = [
    "2020-may-20",
    "2020-may-21",
    "2020-may-22",
    "2020-may-23",
    "2020-may-24",
    "2020-may-25",
    "2020-may-26",
]
x = [datetime.strptime(date, "%Y-%b-%d").date() for date in dates]
y = [20, 30, 35, 18, 24, 28, 26]

plt.plot_date(x, y)
plt.gcf().set_size_inches(8, 6)
plt.tight_layout()
plt.show()

출력:

plot_date 메서드를 사용하여 Matplotlib에서 시계열 데이터 플로팅

시계열 데이터의 산점도를 생성합니다. 선 플롯을 만들려면plot_date()메서드의 인수로linestyle = 'solid'를 사용합니다.

from datetime import datetime
import matplotlib.pyplot as plt

dates = [
    "2020-may-20",
    "2020-may-21",
    "2020-may-22",
    "2020-may-23",
    "2020-may-24",
    "2020-may-25",
    "2020-may-26",
]
x = [datetime.strptime(date, "%Y-%b-%d").date() for date in dates]
y = [20, 30, 35, 18, 24, 28, 26]

plt.plot_date(x, y, linestyle="solid")
plt.gcf().set_size_inches(8, 6)
plt.tight_layout()
plt.show()

출력:

plot_date 메서드를 사용하는 Matplotlib의 시계열 데이터 선 플롯

matplotlib.pyplot.plot_date()메서드를 사용하여 시계열 데이터의 선 플롯을 생성합니다.

작가: Suraj Joshi
Suraj Joshi avatar Suraj Joshi avatar

Suraj Joshi is a backend software engineer at Matrice.ai.

LinkedIn