[데이터시각화]Seaborn

정제철·2023년 6월 8일
0

빅데이터

목록 보기
8/17
post-thumbnail

데이터시각화 : 1. Matplotlib
데이터시각화 : 2. Seaborn(1)
데이터시각화 : 3. Seaborn(2)


📢seaborn

  • 시본은 matplotlib를 기반으로 발전된 라이브러리인 원하는 그래프를 매우 쉽게 예쁘게 표현할 수 있도록 돕는 시각화 라이브러리다.
  • 시본을 사용하면 관계형, 카테고리, 분포, 회귀 분석, 멀티-플롯, 스타일, 색상 등 다양한 그래프 표현이 가능하다­.
  • 공식문서(https://seaborn.pydata.org/)를 참고해 시본을 사용한 기본적인 그래프 표현 방법을 다뤄보도록 한다.

seaborn을 알아보기위해 작업환경을 구성한다.

import pandas as pd
pd.plotting.register_matplotlib_converters()
import matplotlib.pyplot as plt
%matplotlib inline
import seaborn as sns

📌선 그래프

📍Plot the data(1)

❗데이터 불러오기

# 데이터 파일을 읽는다
fifa_filepath = "../input/fifa.csv"

# 파일을 fifa_data라는 변수로 읽어들입니다.
fifa_data = pd.read_csv(fifa_filepath, index_col="Date", parse_dates=True)
  • index_col="Date" : index_col의 값을 첫 번째 열의 이름인 "Date"로 설정
  • parse_dates=True : 이는 노트북이 각 행 레이블을 날짜로 이해하도록 한다.
fifa_data.head() # 확인

❗데이터를 그래프로 표현하기

# 가로 폭과 세로 높이를 설정
plt.figure(figsize=(16,6))

# 시간이 지남에 따라 FIFA 랭킹이 어떻게 변화하는지 보여주는 선 그래프
sns.lineplot(data=fifa_data)

📍plot the data(2)

❗데이터 불러오기

import pandas as pd
pd.plotting.register_matplotlib_converters()
import matplotlib.pyplot as plt
%matplotlib inline
import seaborn as sns
print("Setup Complete")

# Path of the file to read
spotify_filepath = "../input/spotify.csv"

# Read the file into a variable spotify_data
spotify_data = pd.read_csv(spotify_filepath, index_col="Date", parse_dates=True)

❗데이터를 그래프로 표현하기

# 각 곡의 일일 전 세계 스트림을 보여주는 선 그래프
sns.lineplot(data=spotify_data)

# 가로 폭과 세로 높이를 설정
plt.figure(figsize=(14,6))

# 그래프의 제목을 설정
plt.title("Daily Global Streams of Popular Songs in 2017-2018")

#  spotify_data라는 변수에 저장된 데이터를 이용하여 선 그래프를 생성
sns.lineplot(data=spotify_data)

❗데이터의 일부분만을 그래프로 표현하기

list(spotify_data.columns)

['Shape of You',
'Despacito',
'Something Just Like This',
'HUMBLE.',
'Unforgettable']

# 가로 폭과 세로 높이를 설정
plt.figure(figsize=(14,6))

# 그래프의 제목을 설정
plt.title("Daily Global Streams of Popular Songs in 2017-2018")

# 'Shape of You'의 일일 전체 스트림 수를 보여주는 선 그래프를 생성
sns.lineplot(data=spotify_data['Shape of You'], label="Shape of You")

# 'Despacito'의 일일 전체 스트림 수를 보여주는 선 그래프를 생성
sns.lineplot(data=spotify_data['Despacito'], label="Despacito")

# 가로 축에 라벨을 추가
plt.xlabel("Date")

📍plot the data(3)

❗데이터 불러오기

import pandas as pd
pd.plotting.register_matplotlib_converters()
import matplotlib.pyplot as plt
%matplotlib inline
import seaborn as sns

# Path of the file to read
museum_filepath = "../input/museum_visitors.csv"

museum_data = pd.read_csv(museum_filepath, index_col="Date", parse_dates=True)

❗데이터를 그래프로 표현하기

# 가로 폭과 세로 높이를 설정
plt.figure(figsize=(12,6))

# 시간에 따른 방물관 방문객 수를 보여주는 선 그래프 설정
sns.lineplot(data=museum_data)

# 제목 설정
plt.title("Monthly Visitors to Los Angeles City Museums")

❗데이터의 일부분만을 그래프로 표현하기

# 가로 폭과 세로 높이를 설정
plt.figure(figsize=(12,6))

# 제목 설정
plt.title("Monthly Visitors to Avila Adobe")

# 시간에 따른 Avila Adobe 방문객 수를 보여주는 선 그래프 설정
sns.lineplot(data=museum_data['Avila Adobe'])

# 가로 축에 라벨을 추가
plt.xlabel("Date")

📌바 그래프

📍bar the data

❗데이터를 막대바으로 표현하기

  • 각 플랫폼별로 레이싱 게임의 평균 점수를 보여주는 막대 그래프를 생성하세요. 각 플랫폼에 대해 하나의 막대를 가지고 있어야 한다.
# 그림의 가로 폭과 세로 높이를 설정
plt.figure(figsize=(8, 6))

# 그래프의 가로 축에 라벨을 추가
plt.xlabel("")

# 그래프의 제목을 설정
plt.title("Average Score for Racing Games, by Platform")

# 각 플랫폼별로 레이싱 게임의 평균 점수를 보여주는 막대 그래프를 생성
sns.barplot(x=ign_data['Racing'], y=ign_data.index)

📌히트맵

📍Hitmap the data(1)

❗데이터를 히트맵으로 표현하기

# 그림의 가로 폭과 세로 높이를 설정
plt.figure(figsize=(14,7))
​
# 그래프의 제목을 설정
plt.title("Average Arrival Delay for Each Airline, by Month")
​
# 가로 축에 라벨을 추가
plt.xlabel("Airline")

# flight_data 데이터프레임을 이용하여 열지도를 생성
# 각 항공사(열)와 월(행)에 따른 평균 도착 지연 값을 색상으로 표현
sns.heatmap(data=flight_data, annot=True)

📍Hitmap the data(2)

❗데이터를 히트맵으로 표현하기

# 그림의 가로 폭과 세로 높이를 설정
plt.figure(figsize=(10,10))

# 가로 축에 라벨을 추가
plt.xlabel("Genre")

# 그래프의 제목을 설정
plt.title("Average Game Score, by Platform and Genre")

# 데이터를 사용하여 장르와 플랫폼에 따른 평균 점수의 열지도를 생성
sns.heatmap(ign_data, annot=True)

profile
성공의 반대는 실패가 아닌 도전하지 않는 것이다.

0개의 댓글