在ipython笔记本中,我希望能够在表达式的latex / mathjax输出中为乘法运算符使用符号(\ times或\ cdot)。这可能吗?
sympy.latex()
有一个选项mul_symbol
,但我看不到如何使用它来更改输出单元格中的乳胶。
答案 0 :(得分:2)
请尝试以下代码:
from IPython.display import display, Math
from sympy import *
x1 = var('x_1')
x2 = var('x_2')
display(Math(latex(x1*x2,mul_symbol='dot')))
您可以将dot
更改为times
或ldot
。
这使得IPython使用所需的符号渲染乳胶。
如果您不希望最后一行弄乱所有代码,只需定义一个函数:
def Latex(expr):
return display(Math(latex(expr,mul_symbol='dot')))
现在你可以使用:
Latex(x1*x2)
答案 1 :(得分:2)
init_printing()
有一个参数latex_printer
,因此您可以执行类似
init_printing(latex_printer=lambda *args, **kwargs: latex(*args, mul_symbol='dot', **kwargs))
答案 2 :(得分:0)
我有一个函数,我保留在库中以创建Latex打印机:
<?php
$con = mysqli_connect('127.0.0.1', 'root', '', 'textbookdb');
if (mysqli_connect_errno()) {
printf("Connect failed: %s\n", mysqli_connect_error());
exit();
}
$fn = $_POST['fn'];
$ln = $_POST['ln'];
$email = $_POST['email'];
$state = $_POST['state'];
$school = $_POST['city'];
$pass1 = $_POST['pass1'];
$pass2 = $_POST['pass2'];
if($pass1 != $pass2){
echo("passwords don't match");
}
echo($fn);echo(" ");echo($ln);echo(" ");echo($email);echo(" ");echo($state);echo(" ");echo($school);echo(" ");echo($pass1);echo(" ");
$query = "INSERT INTO user VALUES ('id', '$fn', `$ln`, `$email`, '$pass1' `$state`, `$school`, `userStamp`, `emailActivation`)";
echo "<pre>Debug: $query</pre>\m";
$result = mysqli_query($con, $query);
if ( false==$result ) {
printf("error: %s\n", mysqli_error($con));
}
else {
echo 'done.';
}
?>
然后在我的笔记本中我使用:
def makeLatexPrinter(**localsets):
def mylatex(expr,**settings):
settings.update(localsets)
return latex(expr,**settings)
return mylatex
如果init_printing(use_latex=True,latex_printer=makeLatexPrinter(mul_symbol='dot'))
通过自己传递像init_printing()
这样的关键字参数,那将更加清晰。