[Python] matplotlib colormap, colorbar 사용 방법
·
프로그래밍 Programming/파이썬 Python
Matplotlib의 버전에 따라서 colormap과 colorbar 사용법이 조금씩 다른데 여기서는 3.9를 기준으로 설명한다.   colormap을 불러들이는 함수는 어떤 코드를 보느냐에 따라서 약간씩 달라질 수 있다.그러나 기본적으로는 colormap을 가져오고 [0,1] 사이의 값을 지정해서 color에 해당하는 RGBA 값(사이즈 4 벡터)을 가져올 수 있다는 점에서 같다.  1) Colormap colormap 지정은 코드를 어떤 걸 쓰느냐에 따라 다르지만 방법은 다양하다. 다음과 같이 map을 가져올 경우cmap = matplotlib.colormaps.get_cmap("viridis")cmap( np.lispace(0.0, 1.0, 20) ) # extract 20 colors from c..
[에러기록] moviewriter ffmpeg unavailable; using pillow instead.
·
프로그래밍 Programming/파이썬 Python
matplotlib에서 animation 클래스를 쓰면 발생하는 오류이다. 이는 ffmpeg라는 코덱을 설치하지 않았기 때문에 mp4를 만들지 못해서 발생한다. 따라서 ffmpeg를 설치하면 된다. 또한 가상환경 상에서도 ffmpeg를 파이썬과 호환되는 라이브러리를 설치할 수도 있다. 1. ffmpeg 설치 윈도우 설치법과 우분투 설치법이 다른데, 나는 우분투에서만 설치했다. 만든 이 사이트 : https://www.gyan.dev/ffmpeg/builds/#release-builds Builds - CODEX FFMPEG @ gyan.dev FFmpeg is a widely-used cross-platform multimedia framework which can process almost all co..
[python] Visual studio code에서 다운받은 패키지 사용하기(경로 설정 등)
·
프로그래밍 Programming/파이썬 Python
맨날 까먹어서 쓰는 글 다른 사람이 배포해놓은 라이브러리를 다운받아서 사용하면 그 안에 많은 모듈이 있다. 0. 라이브러리 vs 모듈 vs 패키지 내가 사용하기 위해 만든 다양한 함수,변수,클래스 등을 묶어서 .py로 만들면 모듈이라고 하고 이들을 묶어서 __init__.py와 함께 만들어서 폴더에 넣으면 패키지 (init.py이 없으면 패키지로 인식이 안되는 문제가 있다.) 패키지와 모듈들을 묶어서 하나로 만들면 라이브러리라고 한다. numpy나 pandas 같은 것들이 파이썬 패키지이고 그 안에 다양한 모듈들이 있다. 이를 모아서 더 큰 라이브러리를 만들 수 있다. 예를 들면 Matplotlib, PyTorch 등. 이것보다 더 큰 개념을 framework라고 하는데 이는 보통 개발자들이 사용하는 툴..
[matplotlib] matplotlib에서 latex 사용 오류
·
프로그래밍 Programming/파이썬 Python
앞으로는 환경을 좀 써놔야겠다. # Ubuntu 22.04 1. 문제 상황 기본적으로 matplotlib의 label 이나 legend에 수식을 삽입하기 위해 설정을 다음과 같이 해놓는다. plt.rcParams['text.usetex'] = True 이렇게 했을 때 failed to process string with tex because latex could not be found 이 오류를 만나게 되었다. texlive나 MiKTeX와 같은 LaTeX 배포판을 설치하지 않아서 발생하는 문제이다. 2. texlive 설치 textlive를 설치하는 방법은 texlive 공식 사이트 또는 KTUG 사이트에서 확인할 수 있는데 나는 공식 사이트 문서를 선호하는 편이다. 위에서 나온 대로 cd /tmp #..
[matplotlib] 그래프 색상/마커 다르게 그리기
·
프로그래밍 Programming/파이썬 Python
그래프를 여러개 그리는데 색깔이 설정에서 계속 동일하게 반복된다. (아래 그림 참고) 나의 경우에는 색상을 classic으로 설정해서 클래식 색상의 7가지가 반복되게 되어있다. 이게 마음에 안 들어서 살펴보다가 최신 matplotlib 버전부터는 axes.set_prop_cycle을 이용하면 색상도 편하게 다르게 할 수 있고 마커도 일정 패턴을 반복하도록 할 수 있음을 알게 되었다. 아래는 그 예시 코드로 Spectral cmap에서 내가 원하는 그래프 개수만큼을 간격을 추출해서 그래프를 그리기 전에 미리 cycler를 정의해놓으면 편하게 색상을 지정할 수 있다. import matplotlib.pyplot as plt ax = plt.subplot(111) num_lines = 30 colors = [..
[Python] MCMC Sampling library
·
프로그래밍 Programming/파이썬 Python
MCMC sampling을 위한 라이브러리 marathon : c++ 라이브러리 c++ 라이브러리는 고려하지 않았으므로 패스 Pyro : Pyro is a universal probabilistic programming language (PPL) written in Python and supported by PyTorch on the backend. Pyro enables flexible and expressive deep probabilistic modeling, unifying the best of modern deep learning and Bayesian modeling. It was designed with these key principles Universal: Pyro can represen..
[Jupyter notebook] 내가 설정한 주피터 노트북 테마
·
프로그래밍 Programming/파이썬 Python
Jupyter notebook에서 테마를 설정하였다. 기본적으로 jupyter notebook theme라는 유명한 개발자 분의 툴을 쓰면 되는데 사용할 때는 터미널에서 다음과 같은 명령을 해주어야 한다. 나는 기본으로 있는 fira code를 사용하였다. jt -f firacode -fs 14 -altp -tf firacode -tfs 14 -nf firacode -nfs 14 -cellw 90% -T -N -ofs 12 -cursc r
[JAX] JAX 설치 및 GPU 사용하기
·
프로그래밍 Programming/파이썬 Python
1. JAX 설치 JAX를 설치하는 방법에 대해서는 installment guide에 잘 나와있다.다음 링크로 가면 jax 설치법에 대한 문서를 볼 수 있다. 필자는 GPU를 쓰고 싶었기 때문에 다음을 설치했다. conda를 보통 사용하기 때문에 이렇게 했다. conda install jax cuda-nvcc -c conda-forge -c nvidia 이렇게 설치하고 나서 문제가 발생하였다. 2. JAX에서 GPU 사용하기다음과 같은 warning code를 만났다. WARNING - No GPU/TPU found, falling back to CPU. (Set TF_CPP_MIN_LOG_LEVEL=0 and rerun for more info.)  우분투에서 가상환경을 만들고 여기서 JAX를 설치했는..
[Matplotlib] legend 그림 바깥에 배치/원하는 위치에 배치
·
프로그래밍 Programming/파이썬 Python
Matplotlib에서 그림을 그릴 때 legend를 바깥에 배치하고 싶을 수 있다. 이 경우에는 legend의 bbox_to_anchor를 이용하면 된다. matplotlib 공식 문서를 보면 다음과 같이 나와있다. 설명 자체는 간단하다. 4개 원소 튜플로 넣으면 legend의 x,y,너비,높이까지 지정할 수 있다. 2개 원소 튜플로 넣으면 x,y 위치를 지정할 수 있다. 다음과 같은 그림이 있다고 하자. import numpy as np import matplotlib.pyplot as plt x = np.array(range(10)) y1 = x * x y2 = x plt.plot(x,y1,label='quadratic function') plt.plot(x,y2, label='linear func..
[Matplotlib] Matplotlib 폰트 스타일 바꾸기
·
프로그래밍 Programming/파이썬 Python
Matplotlib에서 figure에 사용되는 font를 보면 Dejavu sans라는 폰트라는데 위와 같은 폰트를 말한다. 실제 그림을 그리면 x, y축이 다음과 같은 폰트로 나온다. (아래 코드에서 mpl.rcParams는 default 옵션인데 자세한 내용은 matplotlib의 디폴트 속성 글을 보면 나와있다.) import numpy as np import matplotlib.pyplot as plt import matplotlib as mpl mpl.rcParams['legend.fontsize'] = 16 mpl.rcParams['figure.titlesize'] = 18 mpl.rcParams['axes.titlesize'] = 18 mpl.rcParams['lines.linewidth']..