데이터 시각화

HJ·2024년 5월 13일

DATALITERACY_TIL

목록 보기
3/3
post-thumbnail

1. 데이터 시각화(matplotlib)

데이터 시각화를 어떤 목적으로 해야할까?

= 해양 오염의 주범은 빨대다?

NO

데이터 분석 결과, 전세계 바다 쓰레기의 0.03%가 플라스틱(빨대)로 인한 것이고,
가장 많이 문제가 되는 것은 46%를 차지하는 어망(어업도구)이다.

그렇다면, 이 사실을 바탕으로 어떤 의사결정을 할 수 있나?

  • 효율/효과 측면 > 어업활동에서 발생하는 해양쓰레기 줄이는 방안을 모색해야한다고 분석결과 전달
  • 종이빨대를 만드는 예산을 어업활동에서 쓰레기가 발생하지 않도록 개선시키는 것에 활용하는 것 제안

= 즉, 어디에 집중하고, 어떤 전략을 수립해야할지 방향을 제시하는 역할을 데이터를 통해 전달하는 것이 데이터 분석의 역할이며, 분석된 결과에 따라 다양한 의사 결정이 이루어 질 수 있다.


양의 상관관계라고 무조건 a와 b의 인과성을 가지지 않는다.

분석 목적에 따라 다양한 그래프를 활용하여 시각화할 수 있다.

데이터 시각화는 이러한 의사결정을 도와준다.

  • 분석 결과를 인식시키고 설득시킬 때 매우 중요한 요소가 된다.
  • 기대효과에 대해 시각화된 자료와 함께 분석결과를 전달할 수 있다면, 큰 설득력을 가진다.

2. Matplotlib 이란?

  • 파이썬에서 시각화를 위한 라이브러리 중 하나이다.
  • 다양한 종류의 그래프를 생성하기 위한 도구 제공
  • 2D 그래픽 생성 시 주로 사용
  • 선 그래프, 막대 그래프, 히스토그램, 산점도, 파이 차트 등
  • 그래프를 색상, 스타일, 레이블, 축 범위 등 조절하여 자유롭게 시각화 가능

이렇게 활용할 수 있다.

df.plot(x='A', y='B')
plt.show

= x축은 A 값으로, y축은 B 값으로 설정해서 그래프를 보여줘

df.plot(x='A', y='B', color='green', linestyle='--', marker='o')
plt.show

= 그래프 선의 색은 초록, 점선형태, 마커는 원형으로 해줘

df.plot(x='A', y='B', color='red', linestyle='--', marker='o', label='Data Series')
plt.show
ax = df.plot(x='A', y='B', color='red', linestyle='--', marker='o')
ax.legend(['Data Series'])
plt.show

= 그래프 선의 색은 빨강, 점선, 원형마커에 'Data Series'라고 레이블을 설정해줘.

ax = df.plot(x='A', y='B', color='red', linestyle='--', marker='o')
ax.legend(['Data Series'])
ax.set_xlabel('X-axis')
ax.set_ylabel('Y-label')
ax.set_title('Title')
plt.show

= x축의 이름을 'X-axis', y축의 이름을 'Y-axis', 그래프 제목을 'Title'로 설정해줘

❗그래프에 텍스트를 추가하고 싶다면❗

ax.text(3, 3, 'Some Text', fontsize=12)

= x축의 3, y축의 3의 위치에 'Some Text'라는 문구를 글자크기 12로 삽입해줘

  • 위치 변동 가능하다.
  • 여러 문구 삽입도 가능하다.

❗그래프의 크기를 변경하고 싶다면❗

1) plt.figure(figsize=(x축길이, y축길이)

2) 위의 방법으로 크기 변경이 불가할 경우가 있다. 그럴땐!

fig, ax = plt.subplots(figsize=(18,6))
ax = df.plot(x='A', y='B', color='red', linestyle='--', marker='o', ax=ax)


subplots로 사이즈를 변경시켜 주는 것과, ax=ax라고 같은 plot임을 명명해주는 것이 뽀인떠.

Python에는 다양한 시각화 라이브러리가 있다. 잘 활용하여 설득력있는 데이터 분석 결과를 전달하도록 하자!

matplotlib 빠르게 읽으면 맥플러리같아서 스낵랩이 먹고싶어졌다🤤🌯

profile
First time, Last time, Every time.

0개의 댓글