Question

I am using ipython notebook to write latex equations with the following modules

from IPython.display import display, Math, Latex

a simple example code might look like:

display(Math('a = \\frac{1}{2}'))
display(Math('b = \\frac{1}{3}'))
display(Math('c = \\frac{1}{4}'))

Which would output:

a = 1/2
b = 1/3
c = 1/4

in a pretty print format. Is there a way that I can somehow align this in columns like:

a = 1/2      b = 1/3      c = 1/4

? I know that the markup allows HTML usage, but this markup is entered into the input for a code-based cell. Any help/advice is greatly appreciated!!

Was it helpful?

Solution

I'm not sure how familiar you are with LaTeX, but the notebook does allow you to use things like \begin{align}, allowing you to organize things into columns by separating them with & symbols. For example, this works if you enter it into a Markdown cell:

$$
\begin{align}
a = \frac{1}{2} && b = \frac{1}{3} && c = \frac{1}{4} \\
a && b && c
\end{align}
$$

This also works using display(Math()), e.g.:

display(Math(
r"""
\begin{align}
a = \frac{1}{2} && b = \frac{1}{3} && c = \frac{1}{4} \\
a && b && c \\
1 && 2 && 3
\end{align}
"""))

Giving you this output:

enter image description here

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top