출처: https://privatedevelopnote.tistory.com/81 [개인노트]
본문 바로가기

생명공학

로그 스케일

로그 스케일은 도표상에 표시해야하는 숫자의 범위가 클 때 사용하면 좋은 표기법이다. 보통 축의 간격이 밑을 10으로하는 지수승으로 일정할 때 로그 스케일이라 한다 (0, 1, 2, 3...이 아니라 1, 10, 100, 1000...)

Solarmap, from Wikipedia

왜 로그 스케일이라는 이름이 붙었을까? 로그 스케일에선 축의 간격이 10의 지수승으로 일정하기 때문에, 1을 기준으로 만약 축 한 칸을 이동하면 $10^{1}$을, 축 두 칸을 이동하면 $10^{2}$을 의미하게 된다. 따라서 이동한 크기가 그 위치의 지수를 의미하고, 지수는 로그로 구하기 때문에 로그 스케일이란 이름이 붙은 것 같다.

로그 스케일 plot의 분류

2D plot을 기준으로 만약 plot의 한 축만 로그 스케일이면 그 plot은 semi-log plot이라 하고, 양 축 모두 로그 스케일이면 log-log plot이라고 한다.

 

로그 스케일의 특징

축의 간격이 10의 지수승으로 일정하기 때문에 일반적인 linear한 축과 달리 사이 숫자간의 거리가 일정하지 않다.

A logarithmic scale from 0.1 to 100, from Wikipedia

로그 스케일 축에서 얼마만큼을 이동해야 2를 표현할 수 있을까를 생각해보자. 앞서 로그 스케일의 이름의 유래를 유추할 때 '1을 기준으로 이동한 크기' = 그 위치의 수를 10의 지수함수로 나타냈을 때의 지수라고 했다. 따라서 2를 표현하려면 1에서 $log_{10}{2}$만큼 이동해야한다. $log_{10}{2}$는 약 0.301이므로 약 1/3만큼 이동한 곳에 약$10^{0.301}$인 2가 위치한다. 4를 표현한다면, 4는 2의 제곱이므로 2를 표현하기 위해 이동한 거리의 2배만큼 이동하면 된다. 같은 논리로 8은 3배이다.

 

그럼 만약 어떤 점이 2와 3의 중앙에 위치한다면, 과연 그 점의 좌표는 2.5일까? 앞서 로그 스케일 축은 linear하지 않다고 했으니 아닐 것 같다. 이런한 임의의 점의 좌표는 어떻게 알 수 있을까? 1과 그 점보다 큰 $10^n$을 활용하면 구할 수 있다.

 

예를 들어 1과 10 사이에 임의의 점 x가 있다고 하자. 그 x의 로그 스케일 축 상 좌표는 1과 10을 이용해 구할 수 있다. 1부터 10까지 자로 잰 길이를 A라 해보자. 이 길이는 칸 수로 생각하면 10을 10의 지수함수로 나타냈을 때의 지수와 같으므로 1이지만, 자로 잰 길이는 측정 상황에 따라 다를 것이고, 어떤 값이든 1이라는 값에 대한 가중치와 같기 때문에 1을 대체해서 사용할 수 있다. 또, 1부터 x까지 자로 잰 길이를 B라 하자. 같은 논리로 B는 칸 수로 생각하면 $log_{10}{x}$가 될 것이지만, 자로 잰 길이를 대체값으로 사용할 수 있다.

 

이 때, C = B/A를 하면 $\frac{log_{10}{x}}{log_{10}{10}}$과 같고, C는 로그의 성질에 따라 $log_{10}{x}$가 된다. 또, 우리는 이미 자로 잰 A와 B 값을 알고 있기 때문에 C값이 무엇인지도 알 수 있고, C의 값은 비율이므로 $log_{10}{x}$의 값과 같을 것이다. 즉 C = B/A를 통해 임의의 점 x가 1을 기준으로 이동한 크기를 알 수 있고, 이는 그 위치의 수를 10의 지수함수로 나타냈을 때의 지수와 같으므로 그 위치의 수는 $10^{C}$가 된다.

 

예를 들어 임의의 점 x의 좌표가 2라 해보자. 우리는 이 좌표가 2임을 모르는 상황이고 이제 구하려 한다. 2보다 큰 $10^n$은 10이므로 1과 10을 활용할 것이다. 1부터 10까지 자로 잰 길이 A가 2가 나왔다 해보자. 1부터 x까지 자로 잰 길이 B는 0.301*2가 나올것이다. 왜냐하면 좌표가 2 = 1을 기준으로 0.301만큼 이동한 위치이고, A가 2만큼의 가중치를 가지기 때문이다. 따라서 C = B/A = $log_{10}{x}$ = 0.301 이다. 따라서 그 위치의 수는 약$10^{0.301}$인 2가 된다.

 

정리하자면, 임의의 점이 있을 때 1과 그 점보다 큰 $10^n$의 거리를 자로 잰 값을 A, 1과 그 점의 거리를 자로 잰 값을 B라 하고, C = B/A라 하면 임의의 점의 로그 스케일 축 상 좌표는 $10^{C}$와 같다.

 

로그 스케일의 또 하나의 특징은 축이 10의 지수승으로 표현되기 때문에 0과 음수는 표현할 수 없다는 점이다.

 

마지막으로, 로그 스케일의 또 다른 장점은 배수로 표현되기 때문에 증가량 비교가 용이하다는 것이다. 즉, 1에서 2로 증가해도 2배 증가한 것이고, 10에서 20으로 증가해도 2배 증가한 것이지만 linear scale에선 같은 증가량임을 파악하기 어렵다. 하지만 로그 스케일은 배수 표현이기 때문에 이러한 증가를 포착하기 쉽다.

 

[참고]

en.wikipedia.org/wiki/Logarithmic_scale

 

Logarithmic scale - Wikipedia

A logarithmic scale (or log scale) is a way of displaying numerical data over a very wide range of values in a compact way—typically the largest numbers in the data are hundreds or even thousands of times larger than the smallest numbers. Such a scale is

en.wikipedia.org

www.khanacademy.org/math/algebra-home/alg-exp-and-log/alg-logarithmic-scale/v/logarithmic-scale

 

Logarithmic scale (video) | Khan Academy

Sal discusses the differences between linear and logarithmic scale.

www.khanacademy.org