πŸ” 데이터 뢄석/03. Data Visualizaton

[데이터 μ‹œκ°ν™”] 1. MATPLOTLIB(2)

xod22 2022. 3. 1. 21:57
728x90

μ €λ²ˆ 데이터 μ‹œκ°ν™” ν¬μŠ€νŒ…μ— μ΄μ–΄μ„œ μ—¬λŸ¬ 방법을 μΆ”κ°€λ‘œ 더 곡뢀해보렀고 ν•©λ‹ˆλ‹€!

2022.02.24 - [데이터 뢄석/Data Visualizaton] - [데이터 μ‹œκ°ν™”] 1. MATPLOTLIB(1)

 

[데이터 μ‹œκ°ν™”] 1. MATPLOTLIB(1)

Data Visualization 데이터 μ‹œκ°ν™”κ°€ ν•„μš”ν•œ 이유 1) 정보λ₯Ό 더 μ‰½κ²Œ 전달 2) λ“£λŠ” μ‚¬λžŒμ΄ 더 μ‰½κ²Œ 이해 => λΉ λ₯Έ μ˜μ‚¬κ²°μ • μ‹œκ°ν™”λŠ” 빅데이터 μ‹œλŒ€μ— ν•„μˆ˜μ μ΄λ‹€! Matplotlib Matplotlib νŒ¨ν‚€μ§€λŠ” νŒŒμ΄μ¬μ—μ„œ

xod22.tistory.com

 

μ‹€μŠ΅

 

1. νŒ¨ν‚€μ§€ μž„ν¬νŠΈ

# import
import matplotlib as mpl
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d.axes3d import Axes3D
import numpy as np
import sympy

 

2. μˆ˜μ‹ ν‘œν˜„ν•˜κΈ°

# x,y 데이터 / y에 식 μž…λ ₯
x = np.linspace(0, 50, 500)
y = np.sin(x) * np.exp(-x/10)

# 넓이λ₯Ό 8, 높이λ₯Ό 2둜 μ§€μ •
fig, ax = plt.subplots(figsize=(8, 2))

ax.plot(x, y, lw=2)

# xμΆ•, yμΆ• labelμ§€μ •
ax.set_xlabel ("x", labelpad=5, fontsize=12,color="red")
ax.set_ylabel ("f(x)", labelpad=15, fontsize=12, color="green")

# titleμ§€μ •
ax.set_title("axis labels and title example", fontsize=16, color="blue")

 

3. μƒˆλ‘œμš΄ μ‹œκ°ν™” 방법

 

~3D Plots~

λ‹€μŒκ³Ό 같은 sinκ·Έλž˜ν”„λ₯Ό 차트둜 ν‘œν˜„ν•˜κ³  싢을 λ•Œ 3Dν”Œλžμ„ μ‚¬μš©ν•  수 μžˆλ‹€.

from mpl_toolkits import mplot3d
x = np.linspace(-6, 6, 30)
y = np.linspace(-6, 6, 30)
X, Y = np.meshgrid(x, y)
Z = np.sin(np.sqrt(X**2+Y**2))
fig = plt.figure()
ax = plt.axes(projection='3d')

fig = plt.figure()
ax = plt.axes(projection='3d')
ax.contour3D(X, Y, Z)

-> plotting ν•΄μ€€ κ²°κ³Ό!

 

fig = plt.figure()
ax = plt.axes(projection='3d')
ax.contour3D(X, Y, Z, 50) 
# 50-> 간격을 μ΄˜μ΄˜ν•˜κ²Œν•¨

 

 

~TreeMap~

인ꡬ데이터λ₯Ό κ°€μ§€κ³  TreeMap μ‹€μŠ΅μ„ μ§„ν–‰ν•΄λ³΄κ² μŠ΅λ‹ˆλ‹€!

 

-νŒ¨ν‚€μ§€ λ‹€μš΄

pip install plotly

 

-2002λ…„ κΈ°μ€€μ˜ 인ꡬ수λͺ…을 κΈ°μ€€μœΌλ‘œ 세계 각ꡭ의 νŠΈλ¦¬λ§΅μ„ κ·Έλ¦¬λŠ” 문제

import plotly.express as px
import numpy as np
df = px.data.gapminder().query("year == 2002")

 

-'continent' : λŒ€λ₯™ / values='pop' : 크기=인ꡬ(population) / color='lifeExp' : 색=κΈ°λŒ€μˆ˜λͺ…

fig = px.treemap(df, path=[px.Constant("world"), 'continent', 'country'], values='pop',color='lifeExp', 
color_continuous_scale='RdBu')
fig.show()

728x90