[zerobase_데이터 취업스쿨_스터디노트] 14.데이터시각화_matplotlib_실습(기초)2탄

김소희·2023년 11월 30일
0

study_note

목록 보기
14/50

데이터 시각화 matplotlib 라이브러리 기초 2탄!

저번 시간에 이어서 이번에는 그래프 커스터마이징을 해보는 시간을 가져볼 예정이다.

예제1. 그래프 커스터마이징

1. 0부터 5까지 0.5 단위의 데이터를 하나 넘파이 어레인지 메서드를 통해 만들어준다.

t = np.arange(0,5, 0.5)
t
array([0. , 0.5, 1. , 1.5, 2. , 2.5, 3. , 3.5, 4. , 4.5])

2. pyplot 모듈을 활용해서 그래프를 그려준다.

import matplotlib.pyplot as plt 

plt.figure(figsize=(10,6))
plt.plot(t, t, "r--")
plt.plot(t, t**2, "bs")
plt.plot(t, t**3 ,"g^")
plt.show()

결과를 확인해보면

2~4번째 줄을 잘 보면 "r--" ,"bs", "g^" 이라는 표시가 있는데, 이것은 각 색깔과 모양을
나타내준다. r-- 은 red색의 점섬의 --형태로 해달라는 의미이다.
외울 필요는 없다고한다. 그렇지만 자주 사용하는 것들은 외워두어도 좋을 것 같다.

(아니..외워지겠지......)

하나만 더 그려보자!

plt.figure(figsize=(10,6))
plt.plot(
    t,
    y,
    color="red",
    linestyle="dashed",
    marker="o",
    markerfacecolor="blue",
    markersize=15,
    
    
)
plt.xlim([-0.5, 6.5]) # x축데이터
plt.ylim([0.5, 9.5]) # y축데이터
plt.show()

이렇게 다양하게 사용할 수 있다.
이것도 함수에 담아서 사용하면 더 간편하다.

def drawGraph():
    plt.figure(figsize=(10,6))
    plt.plot(
        t,
        y,
        color="red",
        linestyle="dashed",
        marker="o",
        markerfacecolor="blue",
        markersize=15,
        
        
    )
    plt.xlim([-0.5, 6.5]) # x축데이터
    plt.ylim([0.5, 9.5]) # y축데이터
    plt.show()
    
    drawGraph()

예제2. scatter plot 활용

t = np.array(range(0,10))
y = np.array([9,8,7,9,8,3,2,4,3,4])

마찬가지로 데이터를 하나 만들어주고,

plt.figure(figsize=(10,6))
plt.scatter(t, y)
plt.show()

이번에는 plt.plot 이 아닌 scatter 플롯으로 생성이 가능하다.

scatter plot 은 선이 아닌 점 하나씩 찍혀있는 그래프를 그려준다.

원하는 모양의 그래프를 커스터마이징을 할 수 있다는 것을 기억하자.

마찬가지로 함수에 넣어서 사용하는 버릇을 함께 들여보자.

def drawGraph():
    plt.figure(figsize=(10,6))
    plt.scatter(t, y)
    plt.show()
    
drawGraph()

가로축을 조금 늘려서

def drawGraph():
    plt.figure(figsize=(20,6))
    plt.scatter(t, y)
    plt.show()
    
drawGraph()

이렇게 조금 더 넓게도 볼 수가 있다.

그럼 이번에도 커스텀을 진행해 보겠다.

colormap = t

def drawGraph():
    plt.figure(figsize=(20,6))
    plt.scatter(t, y , s=50, c=colormap, marker=">")
    plt.colorbar()
    plt.scatter(t, y)
    plt.show()
    
drawGraph()

업로드중..

예제4: pandas 에서 plot 그리기

  • matplotlib 기능을 가져와서 사용
data_result.head()

이전에 사용했던 데이터를 다시 불러와 줍니다.

업로드중..

data_result["인구수"].plot(kind='bar', figsize=(5,5))

위에 그래프 에서 인구수에 대한 부분만 보고 싶다면 위에처럼 bar 형식으로 한 번 해보면

업로드중..

이렇게 bar 형식의 그래프를 확인 할 수 있다.

만약 글씨가 잘 보이지 않는다고 하면 barh 로 변경해주면 가로로 볼 수가 있다.

data_result["인구수"].plot(kind='barh', figsize=(5,5))

업로드중..

여기까지 matplotlib 기초활용 단계를 예제로 풀어보았는데,
아무래도 matplotlib 도 공식홈페이지에서 사용방법을 훑어보는게 가장 좋다.

https://matplotlib.org/

다음 시간에는 기대되는 CCTV 데이터로 그래프를 표현해 보는 시간이다.
보안회사에서 일하면서 가장 많이 보는 데이터가 CCTV 영상/이미지 데이터이다.
그런데 이번에는 벌써 이미지데이터는 아닐 것 같은데 CCTV 메타데이터 일 것 같긴 하다.
어떤 데이터들이 준비되어 있을지 기대가 된다.

profile
AI 개발자로 가는 길 두렵지 않아요

0개의 댓글