종속성 #
런타임 의존성 #
필수 의존성 #
pip
또는 와 같은 패키지 관리자를 통해 설치하는 conda
경우 필수 종속성이 자동으로 설치됩니다. 이 목록은 주로 참조용입니다.
선택적 종속성 #
다음 패키지 및 도구는 필수는 아니지만 Matplotlib의 기능을 확장합니다.
백엔드 #
Matplotlib 그림은 다양한 사용자 인터페이스로 렌더링할 수 있습니다. 백엔드란 무엇입니까?를 참조하십시오 . 선택적 Matplotlib 백엔드 및 백엔드가 제공하는 기능에 대한 자세한 내용을 확인하십시오.
Tk (>= 8.4, != 8.6.0 또는 8.6.1): Tk 기반 백엔드용. Tk는 대부분의 표준 Python 설치의 일부이지만 Python 자체의 일부가 아니므로 드물게 존재하지 않을 수 있습니다.
PyGObject 및 pycairo (>= 1.14.0): GTK 기반 백엔드용. pip를 사용하는 경우(conda 또는 시스템 패키지 관리자 제외) PyGObject는 소스에서 빌드해야 합니다. pygobject 설명서 를 참조하십시오 .
wxPython (>= 4): wx 기반 백엔드용. Linux에서 pip를 사용하는 경우(conda 또는 시스템 패키지 관리자 제외) wxPython 휠은 https://wxpython.org/pages/downloads/ 에서 수동으로 다운로드해야 합니다 .
토네이도 (>= 5): WebAgg 백엔드용.
ipykernel : nbagg 백엔드용.
macOS(>= 10.12): macosx 백엔드용.
애니메이션 #
ffmpeg : 동영상 저장용.
ImageMagick : 애니메이션 GIF 저장용.
글꼴 처리 및 렌더링 #
LaTeX ( cm-super 및 underscore 포함) 및 GhostScript(>= 9.0) : LaTeX로 텍스트 렌더링용.
fontconfig (>= 2.7): Linux에서 시스템 글꼴 감지용.
C 라이브러리 #
Matplotlib는 다음 라이브러리의 자체 사본을 가져옵니다.
Agg
: Anti-Grain Geometry C++ 렌더링 엔진ttconv
: TrueType 글꼴 유틸리티
또한 Matplotlib는 다음에 의존합니다.
기본적으로 Matplotlib는 FreeType(FreeType 버전마다 문자를 다르게 래스터화하기 때문에 테스트 스위트를 실행하는 데 필요함) 및 Qhull의 자체 복사본을 다운로드하고 빌드합니다. 예외적으로 Matplotlib는 AIX에서 시스템 버전의 FreeType을 기본으로 사용합니다.
Matplotlib이 시스템에 이미 설치된 FreeType 또는 Qhull의 복사본을 사용하도록 강제하려면 mplsetup.cfg
다음 내용으로 파일을 만듭니다.
[libs]
system_freetype = true
system_qhull = true
실행하기 전에 .python -m pip install .
이 경우 FreeType 및 Qhull 라이브러리와 헤더를 설치해야 합니다. 이는 FreeType과 같은 패키지 관리자를 사용하여 달성할 수 있습니다.
# Pick ONE of the following:
sudo apt install libfreetype6-dev # Debian/Ubuntu
sudo dnf install freetype-devel # Fedora
brew install freetype # macOS with Homebrew
conda install freetype # conda, any OS
(Qhull에 맞게 조정).
Linux 및 macOS에서는 FreeType을 찾기 위한 도우미 도구인 pkg-config 를 설치하는 것이 좋습니다 .
# Pick ONE of the following:
sudo apt install pkg-config # Debian/Ubuntu
sudo dnf install pkgconf # Fedora
brew install pkg-config # macOS with Homebrew
conda install pkg-config # conda
# Or point the PKG_CONFIG environment variable to the path to pkg-config:
export PKG_CONFIG=...
pkg-config를 사용하지 않는 경우(특히 Windows에서) 포함 경로(라이브러리 헤더에 대한) 및 링크 경로(라이브러리에 대한)가 표준 위치에 있지 않은 경우 명시적으로 설정해야 할 수 있습니다. 이는 Linux 및 OSX에서 표준 환경 변수를 사용하여 수행할 수 있습니다.
export CFLAGS='-I/directory/containing/ft2build.h'
export LDFLAGS='-L/directory/containing/libfreetype.so'
Windows에서:
set CL=/IC:\directory\containing\ft2build.h
set LINK=/LIBPATH:C:\directory\containing\freetype.lib
이 경로를 사용하지만 설정을 변경하기 위해 재설정하고 다시 빌드해야 하는 경우 다시 빌드하기 전에 아티팩트를 지워야 합니다.
git clean -xfd
최소 pip / manylinux 지원(linux) #
Matplotlib는 휠 을 인식하는 최소 버전의 pip가 있는 많은 Linux 휠을 게시합니다.
파이썬 3.8:
manylinx2010
/핍 >= 19.0파이썬 3.9 이상:
manylinx2014
/핍 >= 19.3
모든 경우에 필요한 버전의 pip는 CPython 소스에 내장되어 있습니다.
Matplotlib 구축을 위한 종속성 #
종속성 설정 #
인증서(>= 2020.06.20) . 빌드 중 freetype 및 QHull 소스를 다운로드하는 동안 사용됩니다. 이것은 런타임 종속성이 아닙니다.
setuptools_scm (>= 7).
mpl.__version__
현재 git 커밋을 기반으로 보고를 업데이트하는 데 사용됩니다 . 또한 편집 가능한 설치에 대한 런타임 종속성입니다.넘파이 (>= 1.19). 또한 런타임 종속성입니다.
C++ 컴파일러 #
Matplotlib에는 C++11을 지원하는 C++ 컴파일러가 필요합니다.
gcc 4.8.1 이상
클랭 3.3 이상
Visual Studio 2015 (일명 VS 14.0) 이상
Matplotlib 테스트를 위한 종속성 #
이 섹션에는 테스트 를 실행하는 데 필요한 추가 소프트웨어가 나열되어 있습니다.
필수의:
파이테스트 (>= 3.6)
선택 과목:
기본 라이브러리에 대한 모든 선택적 종속성 외에도 테스트를 위해 다음이 설치된 경우 사용됩니다.
Ghostscript (>= 9.0, PDF 파일 렌더링용)
Inkscape (SVG 파일 렌더링용)
Pandas와의 호환성을 테스트하는 데 사용되는 pandas
pgf 및 pdf 백엔드에 대한 일부 테스트에 사용되는 pikepdf
대화식 백엔드 테스트에 사용되는 psutil
커버리지 정보를 수집하기 위한 pytest-cov (>= 2.3.1)
테스트가 중단 된 경우 런타임을 제한하는 pytest-timeout
테스트를 병렬로 실행하는 pytest-xdist
창 팝업 없이 테스트를 실행하는 pytest-xvfb (Linux)
pytz int를 테스트하는 데 사용되는 pytz
스핑크스 확장을 테스트하는 데 사용되는 스핑크스
글꼴 대체 및 비서양 글꼴 테스트를 위한 WenQuanYi Zen Hei 및 Noto Sans CJK 글꼴
xarray 와의 호환성을 테스트하는 데 사용되는 xarray
이러한 종속성이 발견되지 않으면 의존하는 테스트는 pytest에서 건너뜁니다.
메모
Windows에 Inkscape를 설치할 때 모든 사용자 또는 현재 사용자에 대해 "시스템 경로에 Inkscape 추가"를 선택해야 합니다. 그렇지 않으면 테스트에서 찾을 수 없습니다.
Matplotlib의 문서 작성을 위한 종속성 #
파이썬 패키지 #
문서 를 빌드하는 데 필요한 추가 Python 패키지
는 에 나열되어 있으며 다음을
doc-requirements.txt
사용하여 설치할 수 있습니다.
pip install -r requirements/doc/doc-requirements.txt
의 내용 doc-requirements.txt
도 아래와 같습니다.
# Requirements for building docs # # You will first need a matching Matplotlib installation # e.g (from the Matplotlib root directory) # pip install -e . # # Install the documentation requirements with: # pip install -r requirements/doc/doc-requirements.txt # sphinx>=3.0.0 colorspacious ipython ipywidgets numpydoc>=1.0 packaging>=20 pydata-sphinx-theme>=0.9.0 mpl-sphinx-theme~=3.6.0 sphinxcontrib-svg2pdfconverter>=1.1.0 sphinx-gallery>=0.10 sphinx-copybutton sphinx-design
추가 외부 의존성 #
필수의:
최소한으로 작동하는 LaTeX 배포판
다음 LaTeX 패키지(OS가 TeXLive를 번들로 제공하는 경우 설치 프로그램의 "완전한" 버전(예: "texlive-full" 또는 "texlive-all")에 종종 이러한 패키지가 자동으로 포함됨):
선택 사항이지만 권장 사항:
글꼴 "Humor Sans"(일명 "XKCD" 글꼴) 또는 무료 대안 Comic Neue
글꼴 "Times New Roman"
메모
설명서는 LaTeX 및 Graphviz 없이는 작성되지 않습니다. 이들은 Python 패키지가 아니므로 별도로 설치해야 합니다. 문서는 Inkscape 및 optipng 없이 빌드할 수 있지만 빌드 프로세스에서 다양한 경고가 발생합니다. 빌드 프로세스에서 글꼴이 누락되었다는 경고가 표시되면 LaTeX 배포판이 cm-super를 번들로 제공하는지 확인하거나 별도로 설치하십시오.