LatexPrinter
'u alt sınıflara ayırabilir ve kendi _print_Derivative
'nuzu tanımlayabilirsiniz. Mevcut uygulama Here.
Belki
>>> MyLatexPrinter().doprint(f(x, y).diff(x, y))
'f_{x y}'
>>> MyLatexPrinter().doprint(Derivative(x, x))
'\\frac{d}{d x} x'
gibi çalışır
from sympy import Symbol
from sympy.printing.latex import LatexPrinter
from sympy.core.function import UndefinedFunction
class MyLatexPrinter(LatexPrinter):
def _print_Derivative(self, expr):
# Only print the shortened way for functions of symbols
function, *vars = expr.args
if not isinstance(type(function), UndefinedFunction) or not all(isinstance(i, Symbol) for i in vars):
return super()._print_Derivative(expr)
return r'%s_{%s}' % (self._print(Symbol(function.func.__name__)), ' '.join([self._print(i) for i in vars]))
gibi bir şey Jupyter dizüstü kullanmak için, kullanmak
init_printing(latex_printer=MyLatexPrinter().doprint)
bunun gibi görünebilir, ancak kontrol etmez Burada seçenekler: http://docs.sympy.org/latest/modules/printing.html#sympy.printing.latex.latex – csl