I’m interested if I can render SymPy.jl-s output with Weave just like in jupyter notebooks? I know I can weave into tex and process further, but would be easier (at least for me) if the output could directly captured in html as well.
(For an MWE) in a notebook the following renders a nice fraction.
using SymPy
Sym(1//2)
Meanwhile with Weave it’s rendered as in the repl (as expected).
julia> using SymPy
julia> Sym(1//2)
1/2
I surely don’t know how jupyter/IJulia works, I just had this idea that if it’s possible to do in jupyter, it’s may be possible to do it with Weave as well. Sorry if I didn’t word my question right.
2 Likes
I just stumbled on a similar problem. Sym(1//2)
works fine for me, i.e. compiled to \frac{1}/{2} but greek symbols are not converted to the latex format. I do not have a solution yet, but some thoughts:
With a jupyter notebook, it works nively due to a smart show
function in
JuliaPy/SymPy.jl/src/types.jl
print(sympy.pretty(x)) # gives a nice ascii line rendered by the MathJax
The latex version of the command seems to ignore greek variables leaving them as they are:
print(sympy.latex(α, mode="equation*"))
# outputs \begin{equation*}α\end{equation*}, not \alpha
Latex cannot compile them.
Any ideas on how to fix it?
1 Like
kind of a bug
using SymPy
@vars α
[α α] # 1)
[α; α] # 2)
(α, α) # 3)
The weave2pdf
would produce:
# 1) does not compile
\[\left[ \begin{array}{rr}α&α\end{array}\right]\]
# 2) does not compile
\[ \left[ \begin{array}{r}α\\α\end{array} \right] \]
# 3) compiles
\begin{lstlisting}
((*@\ensuremath{\alpha}@*), (*@\ensuremath{\alpha}@*))
\end{lstlisting}
1 Like