▶데이터 시각화의 목적
1. 데이터 내의 숨겨진 패턴을 발견하고, 이해하는 데 도움을 준다.
2. 복잡한 데이터를 이해하고 결정을 내리는 데 도움을 준다.
3. 데이터 분석 결과를 다른 사람들과 공유하거나 설명할 때
유용하다.
▶ 데이터 시각화 라이브러리 (Matplotlib)
● 파이썬에서 시각화를 위한 라이브러리 중 하나, 다양한 종류의
그래프를 생성하기 위한 도구를 제공
- 2d 그래픽을 생성하는 데 주로 사용
- 선 그래프, 막대 그래프, 히스토그램, 산점도, 파이 차트 등
다양한 시각화 방식을 지원
- 그래프를 색상, 스타일, 레이블, 축 범위 등을 조절하여 원하는
형태로 시각화 할 수 있다.
● matplotlib.pyplot에서 plot()를 활용하는 방법
- 예를 들어 선그래프를 그리기 위해서는 plot()메서드를
호출하고 x 와 y 인수에 각각 x축과 y축에 해당하는 열을
지정.
- plot() 메서드를 호출할 때 다양한 스타일 옵션을 사용해서
그래프의 스타일을 설정, color, linestyle, marker 등의 파라미터를
사용하여 선의 색상, 스타일, 마커를 변경할 수 있다.
예시코드)
import matplotlib.pyplot as plt
# 데이터 생성
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
# 그래프 그리기
plt.plot(x, y, color='green', linestyle='--', marker='o', label='Data Series')
# 추가 설정
plt.xlabel('X-axis Label')
plt.ylabel('Y-axis Label')
plt.title('Title of the Plot')
plt.legend()
plt.text(3, 8, 'Some Text', fontsize=12) # 특정 좌표에 텍스트 추가
# 그래프 출력
plt.show()
● 한 꺼번에 설정하기
- plot() 함수 자체에는 범례, 제목, 텍스트를 직접적으로 입력하는
기능은 내장되어 있지 않다.
import matplotlib.pyplot as plt
# 데이터 생성
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
# 그래프 그리기
plt.plot(x, y, color='green', linestyle='--', marker='o', label='Data Series')
# 추가 설정
plt.xlabel('X-axis Label')
plt.ylabel('Y-axis Label')
plt.title('Title of the Plot')
plt.legend()
plt.text(3, 8, 'Some Text', fontsize=12) # 특정 좌표에 텍스트 추가
# 그래프 출력
plt.show()
● 그래프 사이즈 조정 - plt.figure()
- figsize 는 그래프의 가로와 세로 크기를 인치 단위로 설정
import matplotlib.pyplot as plt
# Figure 객체 생성 및 사이즈 설정
plt.figure(figsize=(8, 6)) # 가로 8인치, 세로 6인치
# 데이터 생성
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
# 그래프 그리기
plt.plot(x, y)
# 그래프 출력
plt.show()
▶차트
● line plot(선 그래프)
- 연속적인 데이터의 추이를 보여줄 때 사용
- 시간에 따른 데이터의 변화, 추세를 보여줄 때 효과적
예시 코드)
import pandas as pd
import seaborn as sns
# 'flights' seaborn 내장 예제 데이터
import matplotlib.pyplot as plt
import seaborn as sns
data = sns.load_dataset('flights')
data.head()
data_grouped = data[['year', 'passengers']].groupby('year').sum().reset_index()
data_grouped
plt.plot(data_grouped['year'], data_grouped['passengers'])
plt.xlabel('year')
plt.ylabel('passengers')
plt.show()
● Bar plot(막대 그래프)
- 범주형 데이터 간의 비교를 나타날 때 주로 사용
- 카테고리 별로 값의 크기나 빈도를 시각적으로 비교할 때 유용
예시코드)
# 데이터프레임 생성
data = {'도시': ['서울', '부산', '대구', '인천'],
'인구': [990, 350, 250, 290]}
df = pd.DataFrame(data)
# 막대 그래프 작성
plt.bar(df['도시'], df['인구'])
plt.xlabel('도시')
plt.ylabel('인구')
plt.title('막대 그래프 예시')
plt.show()
● Histogram(히스토그램)
- 연속형 데이터의 분포를 보여줄 때 사용
- 데이터의 빈도나 분포, 패턴을 이해하고자 할 때 유용
예시코드)
import matplotlib.pyplot as plt
import numpy as np
# 데이터 생성 (랜덤 데이터)
data = np.random.randn(1000)
# 히스토그램 그리기
plt.hist(data, bins=30)
plt.xlabel('Value')
plt.ylabel('Frequency')
plt.title('Histogram')
plt.show()
* 히스토그램은 막대가 붙어있는 형태(빈도)
* 히스토그램은 x축은 데이터 값의 범위, y축은 해당 범위에서
빈도를 나타냄
●Pie Chart
- 범주형 데이터의 상대적 비율을 시각화하는데 사용
- 전체에 대한 각 범주의 비율을 보여줄 때 유용,
주로 비율을 비교하는데 사용
예시코드)
import matplotlib.pyplot as plt
sizes = [30,20,25,15,10]
labels = ['A','B','C','D','E']
plt.pie(sizes,labels=labels)
plt.title('Pie Chart')
plt.show()
'데이터분석 study > 데이터 전처리&시각화' 카테고리의 다른 글
TIL_24.07.23_데이터 시각화 2 (0) | 2024.07.23 |
---|---|
TIL_24.07.19_데이터 전처리3 (0) | 2024.07.19 |
TIL_24.07.18_데이터 전처리 2 (0) | 2024.07.18 |
TIL_24.07.17_데이터 전처리 1 (0) | 2024.07.17 |