A A
[DL] Matplotlib ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์— ๋ฐํ•˜์—ฌ ์•Œ์•„๋ณด๊ธฐ

What is Matplotlib?

Matplotlib์€ ๋”ฅ๋Ÿฌ๋‹ ์‹คํ—˜์„ ํ• ๋•Œ ๊ทธ๋ž˜ํ”„ ๊ทธ๋ฆฌ๊ธฐ ๋ฐ ๋ฐ์ดํ„ฐ๋ฅผ ์‹œ๊ฐํ™” ํ•ด์ฃผ๋Š” ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์ž…๋‹ˆ๋‹ค.
  • Matplotlib์„ ์‚ฌ์šฉํ•˜๋ฉด ๊ทธ๋ž˜ํ”„ ๊ทธ๋ฆฌ๊ธฐ, ๋ฐ์ดํ„ฐ ์‹œ๊ฐํ™”๊ฐ€ ์‰ฌ์›Œ์ง€๊ณ , ์ฃผ๋กœ ๋ฐ์ดํ„ฐ ๋ถ„์„์„ ํ• ๋•Œ ์‚ฌ์šฉํ•ฉ๋‹ˆ๋‹ค.
  • ๋Œ€ํ‘œ์ ์œผ๋กœ๋Š” ์„ , ๋ง‰๋Œ€ ๊ทธ๋ž˜ํ”„, ์‚ฐ์ ๋„, ํžˆ์Šคํ† ๊ทธ๋žจ ๋“ฑ์„ ๋งŒ๋“ค์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Matplotlib์„ ์ด์šฉํ•˜์—ฌ ๊ทธ๋ž˜ํ”„ ๊ทธ๋ ค๋ณด๊ธฐ

๊ทธ๋ž˜ํ”„๋ฅผ ๊ทธ๋ฆด๋ ค๋ฉด Matplotlib ๋ผ์ด๋ธŒ๋Ÿฌ๋ฆฌ์˜ Pyplot ๋ชจ๋“ˆ์„ ์ด์šฉํ•ฉ๋‹ˆ๋‹ค. ํ•œ๋ฒˆ sin(์‚ฌ์ธ) ํ•จ์ˆ˜๋ฅผ ๊ทธ๋ฆฌ๋Š” ์˜ˆ๋ฅผ ํ•œ๋ฒˆ ์‚ดํŽด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.
import numpy as np
import matplotlib.pyplot as plt

# ๋ฐ์ดํ„ฐ ์ค€๋น„
x = np.arange(0, 6, 0.1) # 0๋ถ€ํ„ฐ 6๊นŒ์ง€ 0.1 ๊ฐ„๊ฒฉ์œผ๋กœ ์ƒ์„ฑ
y = np.sin(x)

# ๊ทธ๋ž˜ํ”„ ๊ทธ๋ฆฌ๊ธฐ
plt.plot(x, y)
plt.show()
  • ์œ„์˜ ์ฝ”๋“œ๋ฅผ ๋ณด๋ฉด Numpy์˜ arange Method๋ฅผ ์‚ฌ์šฉํ•˜์—ฌ ๋ฐ์ดํ„ฐ๋ฅผ ์ƒ์„ฑํ•˜์—ฌ ๋ณ€์ˆ˜ x์— ํ• ๋‹นํ–ˆ์Šต๋‹ˆ๋‹ค.
  • ๋ณ€์ˆ˜ x์˜ ๊ฐ ์›์†Œ์˜ Numpy์˜ sin(์‚ฌ์ธ) ํ•จ์ˆ˜์ธ np.sin()์„ ์ ์šฉํ•œ ๋’ค, ๋ณ€์ˆ˜ y์— ํ• ๋‹นํ•ฉ๋‹ˆ๋‹ค.
  • ๊ทธ๋ฆฌ๊ณ  ๋ณ€์ˆ˜ x,y๋ฅผ ์ธ์ˆ˜๋กœ plt.plot Method๋ฅผ ํ˜ธ์ถœํ•ด์„œ ๊ทธ๋ž˜ํ”„๋ฅผ ๊ทธ๋ฆฌ๊ณ , plt.show()๋ฅผ ํ˜ธ์ถœํ•ด ๊ทธ๋ž˜ํ”„๋ฅผ ํ™”๋ฉด์— ์ถœ๋ ฅํ•˜๊ณ  ๋๋‚ฉ๋‹ˆ๋‹ค.

Sin ํ•จ์ˆ˜ ๊ทธ๋ž˜ํ”„


Pyplot์˜ ๊ธฐ๋Šฅ

Cos(์ฝ”์‚ฌ์ธ)ํ•จ์ˆ˜๋„ ํ•œ๋ฒˆ ๊ทธ๋ ค๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค. ์ด๋ฒˆ์—๋Š” ๊ทธ๋ž˜ํ”„์˜ ์ œ๋ชฉ, ๊ฐ labelํ‘œ์‹œ ๋“ฑ pyplot์˜ ๋‹ค๋ฅธ ๊ธฐ๋Šฅ๋„ ์‚ฌ์šฉํ•ด ๋ณด๊ฒ ์Šต๋‹ˆ๋‹ค.
import numpy as np
import matplotlib.pyplot as plt

# ๋ฐ์ดํ„ฐ ์ค€๋น„
x = np.arange(0, 6, 0.1) # 0๋ถ€ํ„ฐ 6๊นŒ์ง€ 0.1 ๊ฐ„๊ฒฉ์œผ๋กœ ์ƒ์„ฑ
y1 = np.sin(x)
y2 = np.cos(x)

# ๊ทธ๋ž˜ํ”„ ๊ทธ๋ฆฌ๊ธฐ
plt.plot(x, y1, label="sin")
plt.plot(x, y2, linestyle="--", label="cos") #cos ํ•จ์ˆ˜๋Š” ์ ์„ ์œผ๋กœ ๊ทธ๋ฆฌ๊ธฐ
plt.xlabel("x")
plt.ylabel("y")
plt.title('sin & cos') # ์ œ๋ชฉ
plt.legend()
plt.show()

sin & cos ํ•จ์ˆ˜ ๊ทธ๋ž˜ํ”„


์ด๋ฏธ์ง€ ํ‘œ์‹œํ•˜๊ธฐ

pyplot์—๋Š” ์ด๋ฏธ์ง€๋ฅผ ํ‘œ์‹œํ•ด์ฃผ๋Š” Method์ธ imshow()๋ผ๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋ฏธ์ง€๋ฅผ ์ฝ์–ด๋“ค์ผ๋•Œ๋Š” matplotlib.image ๋ชจ๋“ˆ์˜ imread() Method๋ฅผ ์ด์šฉํ•ฉ๋‹ˆ๋‹ค.
import matplotlib.pyplot as plt
from matplotlib.image import imread

img = imread('') # ์—ฌ๊ธฐ์— ์ด๋ฏธ์ง€์˜ ์ ์ ˆํ•œ ๊ฒฝ๋กœ๋ฅผ ์„ค์ •ํ•˜์…”์•ผํ•ฉ๋‹ˆ๋‹ค.

plt.imshow(img)
plt.show()
  • ์œ„์˜ ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ•˜๋ฉด ์ฝ์€ ์ด๋ฏธ์ง€๊ฐ€ ํ‘œ์‹œ๋ฉ๋‹ˆ๋‹ค.
  • ์ฃผ์˜ํ•˜์…”์•ผ ํ• ์ ์€ ์‚ฌ์šฉ์ž์˜ ํ™˜๊ฒฝ์— ๋งž๊ฒŒ ํŒŒ์ผ ์ด๋ฆ„, ๊ฒฝ๋กœ๋ฅผ ์ ์ ˆํžˆ ์ˆ˜์ •ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.