HOWTO · Seaborn

Seaborn 플롯의 역 로그 스케일

이 튜토리얼은 Python의 seaborn 플롯에서 로그 및 역 로그 값을 사용하는 방법을 보여줍니다.

이 페이지의 내용

Python은 로그 및 지수 값을 처리하기위한 다양한 기능을 잘 갖추고 있습니다. 이러한 값을 계산하기 위해 numpy 및 math 모듈에서 사용할 수있는log()exp()함수를 사용합니다.

예를 들면

print(np.log(50))
print(np.exp(3.912023005428146))

출력:

3.912023005428146
49.99999999999999

위의 두 가지 기능을 많이 변경하면 다른 염기 등으로 로그를 계산할 수 있습니다. 지수 값은 역 로그 또는 역 로그 값으로 간주됩니다.

그래프와 플롯에서도 이러한 값을 처리 할 수 ​​있습니다. matplotlib 모듈을 기반으로하는 seaborn 모듈은 시각화 목적으로 사용되며 다양한 유형의 그래프를 생성 할 수 있습니다. 다른 기능을 사용하여 요구 사항에 따라 최종 수치를 조정할 수 있습니다.

이 튜토리얼에서는 Python의 seaborn 플롯에서 로그 값을 반대로하는 방법을 배웁니다.

이 예에서는 로그 함수를 사용하여 필요한 값을 계산하고 seaborn 모듈의violinplot()함수를 사용하여 플로팅합니다.

아래 코드를 참조하십시오.

import seaborn as sns
import numpy as np

lst = [1, 5, 8, 9, 5, 2, 5, 6, 9]

pl = sns.violinplot(y=np.log(lst))

seaborn 로그 플롯

set_yticklabels()set_xticklabels()함수를 사용하여 두 축의 레이블 눈금 값을 사용자 정의 할 수 있습니다. 위의 함수와 함께 역 로그 함수를 사용하여 눈금 레이블 값을 설정합니다.

예를 들면

import seaborn as sns
import numpy as np

lst = [1, 5, 8, 9, 5, 2, 5, 6, 9]

pl = sns.violinplot(y=np.log(lst))
pl.set_yticklabels([f"{np.expm1(l):.2f}" for l in pl.get_yticks()])

seaborn 플롯의 역 로그 스케일

get_yticks()함수는 기본 레이블을 반환하고exp()함수를 사용하여 역 로그를 계산합니다. Python에서 문자열 형식화에 사용되는 fstrings를 사용하여 최종 결과를 소수 두 자리로만 형식화합니다.

이런 식으로 목록 요소의 로그 값을 계산하고 역 로그 함수를 사용하여 눈금 레이블에 원래 값을 언급하여 바이올린 플롯을 만들었습니다.

예제에서는 math 모듈이 아닌 numpy 모듈의 함수를 사용했습니다. numpy log()exp()함수가 목록 또는 배열의 필수 값을 직접 계산할 수도 있기 때문입니다.