Matplotlib의 매직 함수 인라인

Salman Mehmood 2024년2월15일
Matplotlib의 매직 함수 인라인

이 데모에서는 매직 함수가 무엇인지 배우고 Matplotlib에서 사용할 수 있는 다양한 매직 함수를 볼 것입니다. 그런 다음 인라인 기능에 대해 설명합니다.

Matplotlib에서 인라인 매직 함수 사용

대화형 Python은 매직 함수라고 하는 몇 가지 미리 정의된 함수를 제공하며 이러한 매직 함수는 명령줄 및 스타일 구문에서 호출 가능하도록 사용할 수 있습니다. 매직 함수에는 라인 지향셀 지향이라는 두 가지 유형의 매직 함수가 있습니다.

라인 지향은 라인 매직이라고도 하며, 이러한 함수는 인용문이나 괄호 없이 줄의 나머지 부분에서 인수가 뒤따르는 % 기호로 시작합니다. 대화형 Python에 있는 경우 "ipython" 세션이라고 말할 수도 있습니다. 이는 jupyter 노트북을 의미합니다.

다음은 함수를 호출하는 구문입니다.

%matplotlib [gui]

여기서 [gui]는 함수를 호출하여 활성화할 Matplotlib 백엔드의 이름입니다. 사용 가능한 Matplotlib 패키지 목록을 보려면 다음 명령을 사용해야 합니다.

명령:

%matplotlib -l

출력:

Available matplotlib backends: ['tk', 'gtk', 'gtk3', 'gtk4', 'wx', 'qt4', 'qt5', 'qt6', 'qt', 'osx', 'nbagg', 'notebook', 'agg', 'svg', 'pdf', 'ps', 'inline', 'ipympl', 'widget']

아래 명령은 이를 확인하는 또 다른 방법이며 위와 동일한 결과가 표시됩니다.

%matplotlib --list

이제 플롯과 그래프가 셀 바로 아래에 표시되는 인라인 플로팅을 활성화하는 매직 함수 %matplotlib inline에 대해 설명합니다. 색상 맵을 사용하여 플롯의 색상을 변경한다고 가정하면 이전 플롯에는 영향을 미치지 않습니다.

jupyter 노트북에서 이 인라인 함수를 사용하는 방법을 알아보겠습니다. 여기 예제가 있습니다. 프로그램을 실행하면 여기에서 플롯을 볼 수 있고 어떻게 보이는지 볼 수 있습니다.

암호:

from matplotlib import pyplot as plt

# %matplotlib inline

x1 = [1, 5, 8, 11, 14, 11]
y1 = [12, 11, 15, 1, 22, 15]
y2 = [10, 12, 15, 10, 20, 10]
y3 = [11, 9, 15, 10, 12, 14]

plt.figure(figsize=[9, 7])

plt.title("%matplotlib inline")
plt.plot(x1, y1, linewidth=2, label="sin()")
plt.plot(x1, y2, linewidth=2, label="cos()")
plt.plot(x1, y3, linewidth=2, label="tan()")

출력:

jupyter 노트북의 matplotlib 인라인 함수

현재 버전의 ipython 노트북과 jupyter 노트북을 사용하는 경우 인라인 기능을 사용할 필요가 없습니다. Matplotlib show() 함수를 호출하는지 여부에 관계없이 그래프 출력은 어떤 경우에도 표시됩니다.

암호:

from matplotlib import pyplot as plt

x1 = [1, 5, 8, 11, 14, 11]
y1 = [12, 11, 15, 1, 22, 15]
y2 = [10, 12, 15, 10, 20, 10]
y3 = [11, 9, 15, 10, 12, 14]

plt.figure(figsize=[9, 7])

plt.title("%matplotlib inline")
plt.plot(x1, y1, linewidth=2, label="sin()")
plt.plot(x1, y2, linewidth=2, label="cos()")
plt.plot(x1, y3, linewidth=2, label="tan()")

pycharm에서 이 Matplotlib 인라인을 사용하려고 하면 구문 오류가 표시되지만 Visual Studio에서 사용하려면 "jupyter note" 확장을 추가해야 합니다.

Salman Mehmood avatar Salman Mehmood avatar

Hello! I am Salman Bin Mehmood(Baum), a software developer and I help organizations, address complex problems. My expertise lies within back-end, data science and machine learning. I am a lifelong learner, currently working on metaverse, and enrolled in a course building an AI application with python. I love solving problems and developing bug-free software for people. I write content related to python and hot Technologies.

LinkedIn