[파이썬] 공학 및 과학 데이터 시각화와 플로팅

데이터 시각화는 공학 및 과학 분야에서 매우 중요한 역할을 합니다. 시각화를 통해 데이터를 쉽게 이해하고 분석할 수 있으며, 결과를 더 효과적으로 전달할 수 있습니다. Python은 많은 데이터 시각화 라이브러리를 제공하며, matplotlib, seaborn, plotly, bokeh 등 다양한 도구를 활용하여 공학 및 과학 데이터를 플로팅할 수 있습니다.

matplotlib

matplotlib은 파이썬에서 가장 일반적으로 사용되는 데이터 시각화 라이브러리입니다. 간단하게 사용할 수 있으며, 다양한 종류의 그래프를 생성할 수 있습니다.

import matplotlib.pyplot as plt

# 데이터 생성
x = [1, 2, 3, 4, 5]
y = [10, 15, 7, 12, 9]

# 선 그래프
plt.plot(x, y, marker='o')
plt.title('Line Plot')
plt.xlabel('X-axis')
plt.ylabel('Y-axis')
plt.show()

# 산점도
plt.scatter(x, y, color='red', marker='o')
plt.title('Scatter Plot')
plt.xlabel('X-axis')
plt.ylabel('Y-axis')
plt.show()

seaborn

seaborn은 matplotlib을 기반으로 한 통계적 시각화 패키지로 더 깔끔하고 시각적으로 매력적인 그래프를 생성할 수 있습니다.

import seaborn as sns

# 데이터 생성
x = [1, 2, 3, 4, 5]
y = [10, 15, 7, 12, 9]

# 바 그래프
sns.barplot(x=x, y=y)
plt.title('Bar Plot')
plt.xlabel('X-axis')
plt.ylabel('Y-axis')
plt.show()

# 박스 그래프
sns.boxplot(x=x, y=y)
plt.title('Box Plot')
plt.xlabel('X-axis')
plt.ylabel('Y-axis')
plt.show()

plotly

plotly는 인터랙티브한 그래프를 생성할 수 있는 라이브러리입니다. 웹 기반으로 동작하며, 마우스 오버 등의 기능을 통해 데이터를 상세히 확인할 수 있습니다.

import plotly.express as px

# 데이터 생성
x = [1, 2, 3, 4, 5]
y = [10, 15, 7, 12, 9]

# 막대 그래프
fig = px.bar(x=x, y=y)
fig.update_layout(title='Bar Plot', xaxis_title='X-axis', yaxis_title='Y-axis')
fig.show()

# 3D 산점도
fig = px.scatter_3d(x=x, y=y, z=[2, 4, 6, 8, 10])
fig.update_layout(title='3D Scatter Plot', scene=dict(xaxis_title='X-axis', yaxis_title='Y-axis', zaxis_title='Z-axis'))
fig.show()

bokeh

bokeh는 대규모 데이터셋을 처리하고 상호작용하는 시각화를 제공하는 라이브러리입니다. 주피터 노트북과 웹 기반 인터페이스를 지원합니다.

from bokeh.plotting import figure, show

# 데이터 생성
x = [1, 2, 3, 4, 5]
y = [10, 15, 7, 12, 9]

# 선 그래프
p = figure(title='Line Plot', x_axis_label='X-axis', y_axis_label='Y-axis')
p.line(x, y, line_width=2)
show(p)

# 히스토그램
p = figure(title='Histogram', x_axis_label='Value', y_axis_label='Frequency')
p.quad(top=[5, 10, 8], bottom=[0, 5, 6], left=[1, 2, 3], right=[2, 3, 4], fill_color='red')
show(p)

데이터 시각화와 플로팅은 공학 및 과학 분야에서 중요한 도구입니다. Python의 다양한 라이브러리를 활용하여 데이터를 쉽게 시각화하고, 분석 결과를 직관적으로 전달할 수 있습니다. 위에서 소개한 matplotlib, seaborn, plotly, bokeh를 활용하여 데이터 시각화의 다양한 방법을 익혀보세요!