Python의 Matplotlib: 예제와 함께 다양한 플롯 설명

게시 됨: 2021-06-21

목차

매트플롯립이란?

Python에서 사용할 수 있는 여러 라이브러리 중에서 python의 matplotlib 는 배열의 2D 플롯을 시각화하는 데 도움이 되는 시각화 라이브러리 중 하나입니다. 데이터 시각화 라이브러리는 NumPy 배열을 기반으로 합니다. 다중 플랫폼 데이터 시각화 라이브러리가 John Hunter에 의해 소개된 것은 2002년이었습니다. 라이브러리는 MATLAB의 대안을 제공하는 데이터의 시각화 및 데이터의 그래픽 플로팅을 제공합니다. Matplotlib의 API, 즉 개발자가 GUI 애플리케이션에 플롯을 포함하는 데 사용하는 애플리케이션 프로그래밍 인터페이스.

막대, 선, 히스토그램, 산점도 등과 같은 여러 그래픽 플롯이 matplotlib에서 제공됩니다. matplotlib 플롯 이 제공하는 시각화를 통해 엄청난 양의 데이터에 시각적으로 액세스할 수 있습니다. 비주얼 데이터 플롯은 파이썬 matplotlib 스크립트의 구조적 특성으로 인해 몇 줄의 코드를 통해 생성할 수 있습니다.

matplotlib 스크립팅 레이어를 오버레이하는 데 두 가지 API가 사용됩니다.

  • Python API: Python 코드 개체의 계층 구조입니다.
  • OO(객체 지향) API: Matplotlib의 백엔드 계층에 대한 직접 액세스는 API에서 제공됩니다.

설치

matplotlib 라이브러리의 설치는 matplotlib 및 PyPI(Python Package Index)의 종속성을 바이너리 패키지로 다운로드하여 수행할 수 있습니다.

라이브러리 설치에 사용할 수 있는 명령은 다음과 같습니다.

파이썬 -m pip 설치 matplotlib

Windows, Linux 및 macOS와 같은 운영 체제에서 matplotlib 및 해당 종속성은 휠 패키지로 제공됩니다. 이러한 경우 실행할 명령은 다음과 같습니다.

파이썬 -mpip 설치 -U matplotlib

라이브러리는 로컬 시스템이 OS에 적합한 컴파일러를 필요로 하기 때문에 설치가 상당히 복잡한 컴파일되지 않은 소스 파일로도 사용할 수 있습니다. 또한 ActiveState 플랫폼을 사용하여 소스에서 matplotlib를 빌드하고 필요한 OS에 맞게 패키징할 수 있습니다.

가져오기

파이썬에서 matplotlib 가져오기는 명령을 통해 수행됩니다.

  • matplotlib에서 pyplot을 plt로 가져오기
  • matplotlib.pyplot을 plt로 가져오기

다양한 플롯 및 예

1. Matplotlib UI 메뉴

Matplotlib를 통해 플롯을 생성할 때 Matplotlib UI 메뉴가 생성됩니다. 플롯 확대 기능과 함께 플롯 사용자 정의 및 요소 토글은 Matplotlib UI에서 제공됩니다.

2. Matplotlib와 NumPy

NumPy 과학적 계산을 수행하기 위한 Python 패키지입니다. Matplotlib는 NumPy를 기반으로 구축되었으며 숫자 데이터 및 다차원 배열에 대해 NumPy에서 제공하는 기능을 사용합니다.

3. Matplotlib와 판다

Pandas는 matplotlib에서 데이터 조작 및 분석에 사용되는 파이썬 라이브러리입니다. matplotlib에 대한 필수 종속성은 아니지만 데이터 프레임을 제공합니다.

Matplotlib 플롯 을 사용하면 방대한 양의 데이터를 시각적으로 표현할 수 있습니다. 플롯을 사용하여 데이터에 존재하는 추세와 특정 패턴을 식별할 수 있으며 이는 상관 관계를 만드는 데 필수적입니다. Matplotlib 플롯 은 기본적으로 양적 정보에 대한 추론 방법을 제공합니다.

matplotlib 플롯의 일부 유형은 다음과 같습니다.

1. 라인 플롯:

두 점을 사용하여

  • Matplotlib Line Plot은 pyplot 가져오기를 통해 생성됩니다.
  • 다이어그램에서 점을 그리는 경우 기본적으로 한 점에서 다른 점으로 선을 그리는 plot() 함수가 사용됩니다.
  • 선을 그리기 위한 점을 지정하는 두 개의 매개변수가 고려됩니다.
  • X축 포인트는 Parameter 1에 배열로 저장됩니다.
  • Y축 포인트는 Parameter 2에 배열로 저장됩니다.
  • 예: 선이 점 (2, 6)에서 (10, 15)까지 그려져야 하는 경우 두 개의 배열, 즉 [2, 10] 및 [6, 15]를 전달해야 합니다.

예: 선의 플로팅과 생성된 플롯을 보여주는 코드

원천

2. 다중 포인트 사용

  • 두 개의 점이 플로팅에 사용되는 것과 마찬가지로 python에서 matplotlib를 사용하여 여러 점을 플로팅할 수 있습니다 .
  • 여러 점을 표시하려면 두 축에서 점의 수가 같아야 합니다.
  • 입력:

원천

3. x축 포인트가 없는 선 포인트

  • X축 포인트를 지정하지 않으면 Y축 포인트를 기준으로 X축의 기본값이 사용됩니다.
  • 입력: 이 코드는 선을 그리기 위한 위의 코드와 동일하게 유지되지만 하나의 배열만 입력으로 사용합니다. 즉, Y축에 대한 배열입니다. X축이 기본값으로 사용됩니다.

ypoints = np.array([10, 8, 12, 20, 3, 9])

  • 플롯 생성:

플롯의 시각적 효과를 높일 수 있는 다양한 옵션이 matplotlib에 있습니다.

1. 마커

  • 다이어그램에서 포인트의 시각적 효과를 향상시키기 위해 marker 라는 키워드를 사용하여 지정된 마커를 사용할 수 있습니다 .
  • 마커는 별, 원, 점, 픽셀, X 등이 될 수 있습니다.
  • 예: plt.plot(ypoints, marker = 'o')는 점을 그리는 데 사용할 수 있습니다.
  • 마커의 다른 목록은 다음에서 가져온 아래 스니펫에 표시됩니다.

원천

  • 마커는 색상(140가지 지원 색상), 크기, 점선, 실선, 점선과 같이 사용할 수 있는 선의 종류에 따라 변경할 수 있습니다.
  • markeredge ( mec ) markerfacecolor ( mfc ) 명령은 전체 마커의 색상을 지정하는 데 사용됩니다.
  • 마커의 가장자리만 색칠하거나 전체 마커를 색칠하는 옵션을 제공합니다.
  • Markersize 또는 짧은 ms 는 마커의 크기를 설정하는 데 사용됩니다.

구문: plt.plot(ypoints, marker = 'o', ms = 30)

2. Matplotlib 라인

  • 플롯된 선의 스타일은 ls , : 또는 로 표시되는 선 스타일, 점선 또는 대시 옵션을 사용하여 적절하게 변경할 수 있습니다 .

구문: plt.plot(ypoints, ls = ':')

  • 선의 색상은 color 키워드로 변경 하거나 c 를 사용하여 더 짧은 형태 로 변경할 수 있습니다 . matplotlib는 선의 색상 모양을 변경하기 위해 140가지 지원되는 색상을 제공합니다.
  • 선 너비는 linewidth 또는 lw 인수로 변경할 수 있습니다 . 부동 소수점 수입니다.
  • plt.plot() 함수 를 사용하여 동일한 그래프에 여러 선을 그릴 수 있습니다 .
  • grid() 함수는 플롯에 그리드 선을 추가하는 데 사용됩니다. 축 매개변수를 추가하여 그리드 선이 필요한 축을 지정할 수 있습니다.

구문: plt.grid(축 = 'x')

  • 그리드의 속성은 색상, 선의 스타일 및 인수, 색상, 선 스타일 및 숫자를 통해 적절하게 변경할 수 있습니다.

구문: plt.grid(색상 = '녹색', 선스타일 = '-', 선폭 = 0.5)

3. Matplotlib 레이블 및 제목

  • xlabel() ylabel() 함수는 각 asex에 레이블을 지정하는 데 사용됩니다.
  • title() 함수는 플롯의 제목을 설정하는 데 사용됩니다.
  • 플롯의 글꼴 ​​속성은 fontdict 매개변수로 변경할 수 있습니다.
  • loc 매개변수를 사용하여 제목 위치를 ​​지정할 수 있습니다.

subplots() 함수 를 사용하여 하나의 Figure에 여러 개의 플롯을 그릴 수 있습니다 .

4. Matplotlib 산점도

  • scatter() 함수 pyplot과 함께 사용하여 산점도를 그릴 수 있습니다.
  • 길이가 같은 두 개의 어레이가 필요합니다. 즉, 각 축에 대해 하나의 어레이가 필요합니다.
  • 예시:

원천

플롯 생성

  • 색깔 또는 c 인수를 사용하여 산점도의 점에 색을 지정합니다.
  • 컬러맵을 사용하여 산점도에 필요한 색상을 지정할 수 있습니다. 컬러 의 각 색상 에는 특정 값이 있습니다. cmap nd 인수를 통해 포함된 다음 컬러맵의 이름을 할당할 수 있습니다. 몇 가지 in=built 컬러맵을 matplotlib에서 사용할 수 있습니다.

구문: plt.scatter(x, y, c=색상, cmap='비리디스')

Viridis는 matplotlib에서 사용할 수 있는 내장 컬러맵입니다.

  • 의 크기와 투명도는 s alpha 인수 를 통해 변경할 수 있습니다 .
  • 컬러맵은 다양한 크기의 점과 결합할 수 있습니다.

5. Matplotlib 막대 다이어그램

  • bar() 함수는 막대 다이어그램을 그리는 데 사용됩니다 . 막대의 레이아웃에 대한 인수는 bar() 함수에 언급되어 있습니다. 수직 막대 다이어그램을 그립니다.

  • 가로 막대 다이어그램을 그리기 위해 barh() 함수가 사용됩니다.
  • 입력:

  • 플롯 생성:

원천

  • color 인수는 bar() 및 barh() 함수와 함께 사용 하여 막대 색상 설정합니다.

구문: plt.bar(x, y, 색상 = "녹색").

  • width 인수는 bar() 및 barh() 함수와 함께 사용 하여 막대 너비 설정합니다.

구문: plt.bar(x, y, 너비 = 0.2).

  • bar() barh() 함수가 차지하는 또 다른 인수 는 막대 높이 를 설정하는 데 사용되는 높이입니다.

6. Matplotlib 파이 플롯

  • 파이 차트는 matplotlib 라이브러리의 pie() 함수를 통해 생성됩니다.
  • 예: 입력:

  • 플롯 생성:

원천

  • 각 웨지는 각 웨지에 대한 레이블이 있는 배열인 매개변수 레이블로 레이블을 지정할 수 있습니다.

구문: mylabels = [ "cars" , "bikes" , "cycles" , "buses" ]

  • 원형 차트의 기본 시작 각도는 시작 각도 매개변수로 변경할 수 있는 X축입니다. 각도는 도 단위로 정의되며 기본 각도는 0입니다.
  • 분해 매개변수를 사용하면 필요한 쐐기가 눈에 띄게 표시될 수 있습니다. 그것은 눈에 띄는 쐐기의 값과 나머지 값을 0으로 유지하는 배열을 통해 지정됩니다.

구문: myexplode = [0.2, 0, 0, 0]

  • shadows 매개변수를 true로 설정하면 원형 차트에 대한 그림자가 생성됩니다.
  • 색상 매개변수는 배열을 통해 각 쐐기의 색상을 지정하는 데 사용됩니다.

구문: mylabels = [ "cars" , "bikes" , "cycles" , "buses" ]

mycolors = [ "검정", "핫핑크", "파랑", 녹색""]

  • legend() 함수는 각 쐐기에 설명을 추가하는 데 사용됩니다.

7. 히스토그램

  • 히스토그램은 빈도 분포를 그리는 데 사용됩니다.
  • hist() 함수는 히스토그램을 생성하기 위해 숫자 배열을 사용하는 히스토그램을 생성하는 데 사용됩니다.
  • 예: 입력: 위의 라인은 막대 다이어그램을 그리는 데 사용되는 라인과 동일합니다.

x = np.random.normal(90, 100, 200)

인쇄(x)

  • 플롯 생성:

결론

이 기사에서 논의한 바와 같이 파이썬의 matplotlib 는 다양한 스타일의 데이터 플로팅에 사용할 수 있습니다. 사용자가 원하는 대로 레이블을 지정하고 크기를 조정하고 색상을 지정할 수 있도록 플롯을 향상시키기 위해 다양한 옵션을 사용할 수 있습니다. 따라서 파이썬과 파이썬의 라이브러리는 현대의 데이터 분석과 처리에 상당히 도움이 됩니다.

데이터 과학 분야에 대한 Python 프로그래밍 교육은 upGrad 에서 제공하는 데이터 과학의 Executive PG Program 과정에서 제공됩니다. 업계 전문가 밑에서 교육을 받고 데이터 과학이 제공하는 다양한 기회를 탐색하려는 경우 해당 과정에 등록할 수 있습니다. 이 과정은 IIIT-Bangalore에서 제공하며 21세에서 45세 사이의 중급 전문가 입문자를 위해 특별히 고안되었습니다. 성별에 관계없이 이 범주에 속하고 최고의 데이터 과학자가 되는 꿈을 꾸고 있다면 이 벤처에 참여하십시오. 모든 지원 선박에 대해 저희 팀이 귀하를 도울 준비가 되어 있습니다.

Pandas 모듈의 장점은 무엇입니까?

Pandas는 다양한 사용 사례가 있는 가장 중요하고 유용한 Python 모듈 중 하나입니다. 다음은 Pandas 모듈의 장점 중 일부입니다.
1. Pandas는 편리한 데이터 필터링 및 하위 집합을 허용합니다.
2. 사용자가 핵심 목표에 더 집중할 수 있도록 코드가 깨끗하고 이해하기 쉽습니다.
3. NumPy로 작성되었기 때문에 NumPy의 유용한 기능 중 일부를 상속합니다.

Matplotlib 라이브러리는 어떤 용도로 사용됩니까?

1. Matplotlib 라이브러리는 히스토그램, 선 및 막대 도표, 산점도 및 막대 그래프를 포함한 다양한 유형의 도표를 포함할 수 있는 수많은 유용한 API를 제공합니다.
2. 이 강력한 라이브러리를 사용하면 배열에 저장된 데이터를 사용하여 2D 플롯을 생성할 수 있습니다. 간단한 코드 구조를 통해 몇 줄의 간단한 코드를 추가하는 것만으로 모든 유형의 플롯을 포함할 수 있습니다.
3. MATLAB 및 Pyplot의 강력한 대안이 되는 객체 지향 인터페이스가 있습니다. 사용자 정의가 가능하지만 고급 기능을 사용하려면 약간의 경험이 필요합니다.
4. 애플리케이션에 더 간단한 플롯을 포함해야 하는 경우 MATLAB 스타일의 Python 인터페이스로 이동해야 합니다. 그러나 복잡한 플롯이 있는 경우 OOP 인터페이스가 훨씬 더 나은 옵션이 될 것입니다.