8장 그래프(1)

8-1 파이썬으로 만들 수 있는 그래프 살펴보기

Python에는 2D, 3D, 맵, 네트워크, 모션 차트 및 대화형 그래프를 비롯한 다양한 그래프를 생성하기 위한 패키지가 있습니다.

seaborn을 사용하여 쉽게 그래프를 만들 수 있습니다.

# 그래프 해상도 설정
import matplotlib.pyplot as plt
plt.rcParams.update({'figure.dpi' : '100'})
%config InlineBackend.figure_format="retina"

8-2 산점도: 변수 간의 관계 표현

Scatter plot: x축과 y축에 데이터를 플롯한 그래프

산점도 만들기

import pandas as pd
mpg = pd.read_csv('mpg.csv')

import seaborn as sns
sns.scatterplot(data = mpg, x = 'displ', y = 'hwy')


축 범위 설정

sns.scatterplot(data = mpg, x ='displ', y = 'hwy').set(xlim = (3,6))


sns.scatterplot(data = mpg, x ='displ', y='hwy').set(xlim = (3,6), ylim = (10,30))


유형별 마커 색상 변경

sns.scatterplot(data = mpg, x = 'displ', y = 'hwy', hue="drv")


그래프를 활용하라

# 그래프 설정 바꾸기
import matplotlib.pyplot as plt
plt.rcParams.update({'figure.dpi' : '150'})             # 해상도, 기본값 72
plt.rcParams.update({'figure.figsize' : (8, 6)})        # 그림 크기, 기본값 (6, 4)
plt.rcParams.update({'font.size' : '15'})               # 글자 크기, 기본값 10
plt.rcParams.update({'font.family' : 'Malgun Gothic'})  # 폰트, 기본값 sans-serif

# 여러 요소 한 번에 설정
plt.rcParams.update({'figure.dpi'     : '150',  
                     'figure.figsize' : (8, 6),
                     'font.size'      : '15',
                     'font.family'    : 'Malgun Gothic'})
                     
# 모든 설정 되돌리기
plt.rcParams.update(plt.rcParamsDefault)            

# 설명 메시지 숨기기
sns.scatterplot(data = mpg, x = 'displ', y = 'hwy');

직접 해보기 – mpg 데이터 및 중서부 데이터로 분석 문제 해결

Q1 mpg 데이터에서 cty(도심 연비)와 hwy(고속도로 연비)의 관계를 알고 싶습니다.

x축에 cty, y축에 hwy가 있는 산점도를 만듭니다.

sns.scatterplot(data = mpg, x = 'cty', y = 'hwy')


Q2 미국의 지역별 인구 통계 정보가 포함된 midwest.csv를 사용하여 전체 인구와 아시아인 인구 간의 관계를 알아보려고 합니다.

x축에 poptotal(총 인구), y축에 popasian(아시아인 인구)이 있는 산점도를 만듭니다.

총 인구가 500,000명 이하이고 아시아인 인구가 10,000명 이하인 지역만 표시하도록 산점도를 설정합니다.

midwest = pd.read_csv('midwest.csv')

sns.scatterplot(data = midwest, x = 'poptotal', y = 'popasian').set(xlim = (0, 500000), ylim = (0, 10000))


※ 내용 This is the content learned and organized based on the contents of Python Data Analysis>.