Mathjax의 시그마 중첩 렌더링 오류

Mathjax의 시그마 중첩 렌더링 오류

Mathjax는 웹 상에서 LaTex를 표현하는 지원하는 자바스크립트 라이브러리 입니다. 일반적으로 웹 페이지에서 LaTex를 표현하는 용도로 많이 사용되는 자바스크립트 라이브러리를 입니다.

Mathjax 문제점

Mathjax은 거의 모든 LaTex 테그를 잘 표현하지만, \sum 테그를 중첩해서 사용하면 출력을 하지 못하는 문제가 있습니다.

한 개의 \sum 테그는 문제 없이 렌더링을 잘 수행합니다. 다음 코드는 아래와 같이 렌더링 됩니다.

$$
\bar x = \underset{x}\arg \min \sum_{i=1}^{n} \left( x - x_i \right)
$$

$$ \bar x = \underset{x}\arg \min \sum_{i=1}^{n} \left( x - x_i \right) $$

그러나 LaText 표기법에 \sum이 중첩되면(아래 첨자가 추가된 중복) 다음과 같이 렌더링을 실폐합니다.

$$
SE = \sum_{j=1}^{\infty} \sum_{k=1}^{\infty} x_{jk}
$$

$$ SE = \sum{j=1}^{\infty} \sum{k=1}^{\infty} x_{jk} $$

이슈 및 해결 팁

이 문제는 Mathjax에 이슈로 등록되어 있습니다.

시그마가 중복될 때 두 번째 시그마 다음에 아래첨자 “_“가 이테릭체인지 \sum의 아래 첨자인지 명확하지 않아 발생하는 문제입니다.

이 이슈는 버그가 아니며, 시그마를 사용할 때 ‘_‘가 이테릭체가 아닌 \sum의 아래 첨자임을 명확하게 표시하기 위해서 \_ 형태를 사용할 것을 권고하고 있습니다.

이 방식을 사용할 경우 위에서 렌더링 오류가 발생했던 LaTex 코드가 정상적으로 출력되는 것을 확인할 수 있습니다.

$$
SE = \sum\_{j=1}^{\infty} \sum\_{k=1}^{\infty} x_{jk}
$$

$$ SE = \sum_{j=1}^{\infty} \sum_{k=1}^{\infty} x_{jk} $$

김태완 avatar
작성자: 김태완
1999년 부터 Java, Framework, Middleware, SOA, DB Replication, Cache, CEP, NoSQL, Big Data, Cloud를 키워드로 살아왔습니다. 현재는 빅데이터와 Machine Learning을 중점에 두고 있습니다.
E-mail: taewanme@gmail.com