ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 혼자 공부하는 데이터분석 with 파이썬 05-2 선 그래프와 막대 그래프 그리기
    카테고리 없음 2023. 9. 30. 21:48

    연도별 발행 도서 개수 구하기

    value_counts() 메서드 

    : 첫번째 열이 인덱스이고 두번째 열이 값에 해당

    : 기본적으로 값을 기준으로 내림차순

    count_by_year = ns_book7['발행년도'].value_counts()

    sort_index() 메서드

    : 인덱스 기준으로 오름차순 정렬

    count_by_year = count_by_year.sort_index()
    count_by_year

     

    주제별 도서 개수 구하기

    value_counts() 함수

    count_bt_subject = ns_book7['주제분류번호'].value_counts()

    선 그래프 그리기

    : 맷플롯립의 plot() 함수는 선그래프

    plt.plot(count_by_year.index, count_by_year.values)
    plt.show()

     

    선 모양과 색상 바꾸기

     

    linestyle 매개변수 

    : 기본 실선

    color 매개변수

    : 16진수 컬러코드

    marker 매개변수

    plt.plot(count_by_year, marker='.', linestyle=':', color='red')

    plot 위의 코드 순서대로 작성

    plt.plot(count_by_year,'.:r')

    선 그래프 눈금 개수 조절 및 마커에 텍스트 표시하기

     

    xticks() 함수 

    : x축 눈금을 지정

    : range() 함수로 눈금 숫자 지정

     

    annotate()  함수

    그래프에 값 표시

    plt.xticks(range(1947, 2030, 10))
    for idx, val in count_by_year[::5].items():
        plt.annotate(val, (idx, val))
    plt.show()

    xytext 매개변수

    : 텍스트 위치 조절 

    ex) x축은 1만큼, y축은 10만큼 떨어지기

    for idx, val in count_by_year[::5].items():
        plt.annotate(val, (idx, val),xytext=(idx+1,val+10))
    plt.show()

     

    막대 그래프 그리기

    bar() 함수

    : x축의 값과 막대 높이에 해당하는 y값

    plt.bar(count_by_subject.index, count_by_subject.values)

    텍스트 정렬, 막대 조절 및 색상 바꾸기

     

    텍스트 위치 조절 

    : annotate() 함수의 ha 매개변수에 'center' 로 지정

    텍스트 크기 조절

    : fontsize() 매개변수

    텍스트 색상 조절

    : color 매개변수

     

    막대 두께 조절

    : bar() 함수 width 매개변수

    막대 색깔 조절

    : bar() 함수 color 매개변수

    plt.bar(count_by_subject.index, count_by_subject.values, width=0.7, color='blue')
    
    for idx, val in count_by_subject.items():
        plt.annotate(val, (idx, val), xytext=(0, 2), textcoords='offset points', 
                     fontsize=8, ha='center', color='green')
    plt.show()

     

     

    가로 막대 그래프 그리기

     

    barh() 함수

    : annotate() 함수에 텍스트 좌표 쓸 때도 x축 y축 값이 바뀐다. => (val, idx)

    막대 두께 조절

    : height 매개변수

    텍스트 정렬

    : va 매개변수(ha 매개변수 아님)

     

    plt.barh(count_by_subject.index, count_by_subject.values, height=0.7, color='blue')
    
    for idx, val in count_by_subject.items():
        plt.annotate(val, (val, idx), xytext=(2, 0), textcoords='offset points', 
                     fontsize=8, va='center', color='green')
    plt.show()

     

     

Designed by Tistory.