관리 메뉴

애독자's 공부방

[혼공분석] 6주차 _ 혼자 공부하는 데이터 분석 with 파이썬 본문

데이터분석/혼공학습단 13기

[혼공분석] 6주차 _ 혼자 공부하는 데이터 분석 with 파이썬

애독자 2025. 2. 18. 06:37
728x90

혼공단 - 혼공분석, 혼자 공부하는 데이터 분석 with 파이썬

 

 

■ 시작에 앞서..

2주차 우수혼공족 선정과 3주차 50% 완주 기념으로 받은 기프티콘을 모아 크레이프 케이크로 맛있게 바꾸어 먹었습니다. 족장님 덕분에 달콤한 간식을 즐기면서 더 열심히 학습할 수 있었습니다. 감사합니다.

 

 

 

■ 공부한 내용

# 진도 기본 숙제(필수) 추가 숙제(선택)
6주차
(2/17 ~ 2/23)
Chapter 06 p. 344의 손코딩(맷플롯립의 컬러맵으로 산점도 그리기)을 코랩에서 그래프 출력하고 화면 캡처하기 p. 356 ~ 359의 스택 영역 그래프를 그리는 과정을 정리하기

 

 

 

□ Chapter 06 | 복잡한 데이터 표현하기
▷ 06-1 | 객체지향 API로 그래프 꾸미기

 1. 핵심 포인트 요약

  - 객체지향 API: 맷플롯립에서 이는 명시적으로 피겨 객체와 서브플롯 객체를 만들고 이 객체의 메서드를 사용하여 맷플롯립 그래프를 그리는 방법 (피겨 객체의 설정을 바꾸거나 서브플롯을 추가하는 경우에 사용)

   . pyplot 방식: 객체지형 API와 다른 방법으로 matplotlib.pyplot에 있는 함수를 사용하는 방법 (간단한 경우에 사용)
  - 컬러맵(color map): 맷플롯립에서 그래프를 그리는 데 사용하기 위해 사전에 정의한 색상 리스트.

   . viridis 컬러맵: 기본 컬러맵으로 진녹색에서 노란색으로 변화

   . jet 컬러맵: 낮은 값일수록 짙은 파란색이고, 높은 값으로 갈수록 점차 노란색으로 바뀌었다가 붉은색으로 변화
  - 컬러 막대(color bar): 데이터 포인트에 적용된 색상의 범위를 보여주는 막대. 보통 그래프의 오른쪽에 나란히 놓이며 색깔이 의미하는 실제 값을 참조하는데 사용

 

 2. 책에 나온 함수와 메서드

함수/메서드 기능 사용
matplotlib.pyplot.rc() rcParams 객체의 값을 설정 matplotlib.pyplot.rc(group)
  . 매개변수: 설명
  . group: 설정 그룹을 입력. 예를 들어 'figure.figsize'의 경우 'figure'가 그룹  → 각각의 설정 항목을 키워드 매개변수로 지정. 예를 들어 'figure.figsize'의 경우 rc('figure'.'figsize'=(8, 6))처럼 지정 가능
Figure.colorbar() 그래프에 컬러 막대를 추가 Figure.colorbar(mappable, ax)
  . mappable: 컬러 막대가 설명하려고 하는 그래프 객체. plt.colorbar()로 호출할 때는 생략 가능
. ax: 컬러 막대가 추가될 Axes 객체를 지정

 

 

 06-2 | 맷플롯립의 고급 기능 배우기
 1. 핵심 포인트 요약

  - 범례(legend): 그래프에 그려진 데이터의 이름과 색상을 요약한 표
  - 스택 영역 그래프(stacked area graph): 여러개의 선 그래프를 Y축 방향으로 쌓은 그래프로, 선 아래로 채워진 영역 형태로 표현

   . 피벗 테이블(pivot table): 테이블 형태의 데이터를 평균, 합 등의 방식으로 집계하여 만든 요약표
  - 스택 막대 그래프(stacked bar graph): 여러개의 막대 그래프를 Y축 방향으로 쌓은 그래프로, 막대 위에 막대가 누적되듯이 표현
  - 원 그래프(pie chart): 데이터의 비율을 부채꼴 모양으로 나타낸 그래프. 단, 그래프에 비율이 표시되어 있지 않으면 크기를 비교하기 어려우므로 autopct 매개변수를 사용하여 명확하게 비율을 표시하는 것을 권장

 

 2. 책에 나온 함수와 메서드

함수/메서드 기능 사용
Axes.legend() 그래프에 범례를 추가 Axes.legend(loc)
  . 매개변수: 설명
  . loc: 범례의 위치를 지정. (기본값: 'best'로 그래프와 가장 겹치지 않는 위치를 선택 / 'upper left', 'upper right', 'lower left', 'lower right'는 왼쪽 위부터 시계 방향으로 네 모서리에 해당 / 'upper center', 'lower center', 'center right'는 중앙에서 위아래 좌우 방향을 의미 / 'center'는 그래프의 가운데 / 'right'는 'center right'와 동일)
Axes.set_xlim() x축의 출력 범위를 지정 Axes.set_xlim(xmin, xmax)
  . xmin: 그래프에 나타낼 최솟값을 지정
. xmax: 그래프에 나타낼 최댓값을 지정
Axes.set_ylim() y축의 출력 범위를 지정 Axes.set_ylim(ymin, ymax)
  . ymin: 그래프에 나타낼 최솟값을 지정
. ymax: 그래프에 나타낼 최댓값을 지정
DataFrame.pivot_table() 피벗 테이블 기능을 제공 DataFrame.pivot_table(index, columns, values, aggfunc)
  . index: 피벗 테이블의 인덱스로 그룹 지을 행을 지정
. columns: 피벗 테이블의 열로 그룹 지을 열을 지정
. values: 집계 대상이 되는 열을 지정
. aggfunc: 집계 함수를 지정. (기본값: numpy.mean으로 평균을 계산)
Axes.stackplot() 스텍 영역의 그래프를 그리기 Axes.stackplot(x, y, labels)
  . x: x축의 값으로 크기가 (N, )인 배열을 지정
. y: y축의 값으로 크기가 (M, N)인 배열을 지정
. labels: 범례를 지정. 일반적으로 (M, ) 크기의 리스트
DataFrame.plot.area() 스택 영역 그래프를 그리기 DataFrame.plot.area(x, y, ax, title, xlim, ylim)
  . x: x축 좌표를 위한 열을 지정. 지정하지 않으면 인덱스를 사용
. y: 그래프로 그릴 열을 지정. 지정하지 않으면 모든 열을 사용
. ax: 맷플롯립의 Axes 객체를 지정
. title: 그래프의 제목을 지정
. xlim: x축의 출력 범위를 지정
. ylim: y축의 출력 범위를 지정
DataFrame.plot.bar() 막대 그래프를 그리기 DataFrame.plot.bar(x, y, stacked, ax, title, width)
  . x: x축 좌표를 위한 열을 지정. 지정하지 않으면 인덱스를 사용
. y: 그래프로 그릴 열을 지정. 지정하지 않으면 모든 열을 사용
. stacked: True로 지정하면 스택 막대 그래프를 그림 (기본값: False)
. ax: 맷플롯립의 Axes 객체를 지정
. title: 그래프의 제목을 지정
. width: 막대의 두께를 지정
DataFrame.cumsum() 행이나 열 방향으로 누적 합을 계산 DataFrame.cumsum(axis)
  . axis: 누적 방향을 지정 (기본값: 0은 행을 따라 누적 / 1은 열을 따라 누적)
Axes.pie() 원 그래프(파이 차트)를 그리기 Axes.pie(x, labels, explode, startangle, autopct)
  . x: 원 그래프로 나타낼 1차원 배열
. labels: 범례를 지정. 일반적으로 x와 같은 길이의 리스트
. explode: x와 같은 길이의 배열로 부채꼴 조각을 중심에서 떨어뜨릴 간격을 원의 반지름에 대한 비율로 지정
. startangle: 3시 방향부터 반시계 방향으로 원 그래프를 그리기 시작할 각도를 지정 (기본값: 0)
. autopct: 부채꼴 안에 비율 값을 표시하기 위한 호출 가능한 함수 또는 % 연산자에 적용할 수 있는 포맷 문자열을 지정. 예를 들어 '%.2"을 전달하면 소수점 두 자리 실수로 퍼센트 값을 표시

 

 

 

■ 기본 숙제

  - p. 344의 손코딩(맷플롯립의 컬러맵으로 산점도 그리기)을 코랩에서 그래프 출력하고 화면 캡처하기

 

 

■ 추가 숙제(선택)

  - p. 356 ~ 359의 스택 영역 그래프를 그리는 과정을 정리하기

 

 

728x90