본문 바로가기
공부 목록/IT & 프로그래밍

plt.plot()에서 마커와 라인 속성 지정으로 그래프 형태 변경하기

by 독학박사 2023. 8. 11.

목차


     파이썬에서 데이터를 가시화하기 위해 자주 사용하는 함수로 plt.plot()이 있습니다. 어떠한 옵션도 주지 않으면 단순하게 직선만을 표기해 주는 plt.plot() 함수 내에 데이터를 표시할 수 있는 마커와 선의 종류를 및 색상을 바꿀 수 있는 설정이 있습니다. 이번 글에서는 그래프 형태 변경을 위한 plt.plot 함수의 포맷 문자열에 대해 정리해 보려고 합니다.

     

     

    그래프의 라인과 마커 설정
    그래프의 라인과 마커 설정

     

     

    1. plt.plot() 함수의 기본 사용

     x, y 좌표에 총 5개의 데이터가 있다고 가정합니다. plt.plot 함수를 이용하여 데이터를 가시화하는 코드는 다음과 같습니다.

     

    import matplotlib.pyplot as plt
    
    x = [1, 2, 3, 4, 5]
    y = [2, 3, 5, 6, 8]
    
    plt.plot(x, y)
    plt.xlabel('X-Axis')
    plt.ylabel('Y-Axis')
    
    plt.xlim(0, 6)
    plt.ylim(0, 10)
    
    plt.grid()
    
    plt.show()

     

     데이터가 5개이고 가시화를 할 경우에 5개의 점으로 나올 것으로 생각하지만 실상은 실전으로 표기됩니다. 선은 데이터를 이어 주는 것으로 실제의 값이 아닙니다. 이렇게 가시화를 하게 되면 마치 선의 영역까지 데이터인 것으로 착각하는 경우가 많습니다. 이런 데이터의 경우 선은 점선으로 데이터는 마커를 이용하여 점이나 'X'와 같이 표기해 주는 것이 데이터 확인에 도움이 됩니다.

     

    옵션없이 plt.plot을 사용한 결과
    옵션없이 plt.plot을 사용한 결과

     

     

     

    2. 마커와 선의 형태 지정

     마커와 선의 형태를 지정하는 방법으로 문자열을 사용합니다. plt.plot() 함수 내에 marker, linestyle 등의 인수를 이용하여 마커와 선의 형태를 바꾸는 방법이 있지만 문자열만으로도 색상까지 바꿀 수가 있습니다.

     

    plt.plot(x, y, 'bo--')

     

     처음 코드에서 plt.plot() 함수에 'bo--'를 추가해 줬습니다. 'b'는 blue를 의미하며 파란색 지정을 의미합니다. 'o'는 동그란 점의 마커를 생성합니다. '--'는 데이터가 아닌 연결선은 점선으로 한다는 뜻입니다. 이렇게 데이터를 가시화해야 실제 데이터를 확인하는데 도움이 됩니다. 포맷에 대한 문자열을 작성할 때는 일반적으로 '색상 마커 선 형태' 순으로 작성을 하지만 순서를 뒤바꿔도 괜찮습니다.

     

    색상, 마커, 선 형태 지정
    색상, 마커, 선 형태 지정

     

     몇몇 사람들의 데이터 가시화 코드를 보면 데이터 가시화를 점으로만 하기 위해 scatter 함수를 사용하곤 합니다. 하지만, plt.plot()의 포맷 문자열에 선의 옵션을 빼면 점만 있는 그래프가 그려지니 참고하시기 바랍니다. 아래 그래프는 포맷 문자열에 '--'를 뺀 'bo'만 넣은 결과입니다.

     

    'bo'만 넣은 결과
    'bo'만 넣은 결과

     

     

    3. 색상과 라인 스타일 종류

     파이썬에서는 색상코드를 이용하여 다양한 색을 표현할 수 있습니다. 하지만 너무 많은 색상의 사용은 오히려 데이터를 확인하는데 혼란을 줄 수 있습니다. 이번 절에서는 기본색상과 라인 스타일 종류에 대해 정리해 보려고 합니다.

     

     색상을 표기하는 문자열은 아래의 표와 같습니다. 각 문자열이 나타내는 색상을 같이 정리하였으니 참고하여 사용하세요

     

    색상을 나타내는 문자열과 색깔
    색상을 나타내는 문자열과 색깔

     

     선의 속성을 변경하는 문자열을 아래의 표와 같이 정리해 봤습니다. 위의 색상과 함께 문자열을 작성하여 선과 색상을 지정할 수 있습니다.

     

    선의 형태를 나타내는 문자열과 설명
    선의 형태를 나타내는 문자열과 설명

     

    4. 마커의 종류

     마커는 데이터 값의 위치를 표기하는 것으로 데이터가 여러 개일 경우 서로 다른 마커를 사용하여 데이터를 구분하는 데 사용해야 합니다. 마커의 종류가 많아서 다 나타내기는 어려울 수 있으나 아래 정리한 종류만으로도 충분하게 사용할 수 있을 거라 생각합니다. '0'~'11'까지의 문자열은 라인과 삼각형의 형태를 나타내는 마커를 의미합니다.

     

    마커 설정을 위한 문자열
    마커 설정을 위한 문자열

     

    5. 마치며

     데이터를 가시화하는 데 있어 데이터 점의 형태와 선 그리고 색상을 분석에 도움이 되는 설정입니다. 지금까지 정리한 내용을 잘 활용하시면 데이터 분석을 위한 가시화에 유용하게 사용하실 수 있을 겁니다. 선 종류 지정 방법에 대해서는 별도의 글이 있으니 참고하시면 도움이 될 겁니다.

     

     

    함께 읽어보면 도움이 되는 글

     

     

    https://lifelong-education-dr-kim.tistory.com/entry/Python-Matplotlib-plot-선-종류-지정-방법

     

    Python Matplotlib plot() - 선 종류 지정 방법

    데이터를 가시화하는 그래프를 그리다 보면 여러 데이터들을 구분해야 하는 경우가 생깁니다. 이럴 경우에는 그래프별 색상을 다르게 표시하게 됩니다. 어떤 경우에는 색상이 아니라 선의 형태

    lifelong-education-dr-kim.tistory.com