Рендеринг Sympy Math Notebook IPython

Я только начал использовать IPython Notebook и был очарован его мощью. Для начала я использовал несколько примеров, доступных в сети. Я следовал этому руководству: http://nbviewer.ipython.org/url/finiterank.com/cuadernos/suavesylocas.ipynb, но вывод математических данных не отображается должным образом. Ниже мой код и вывод:

In [30]:

%load_ext sympyprinting
%pylab inline

from __future__ import division
import sympy as sym
from sympy import *

init_printing()

x,y,z=symbols("x y z")
k,m,n=symbols("k m n", integer=True)

The sympyprinting extension is already loaded. To reload it, use:
  %reload_ext sympyprinting

Welcome to pylab, a matplotlib-based Python environment [backend: module://IPython.kernel.zmq.pylab.backend_inline].
For more information, type 'help(pylab)'.

In [31]:

t = sin(2*pi*x*(k**2))/ (4*(pi**2)*(k**5)) + (x**2) / (2*k)
t
Out[31]:
  2      ⎛     2  ⎞
 x    sin⎝2⋅π⋅k ⋅x⎠
─── + ─────────────
2⋅k         2  5   
         4⋅π ⋅k   

Я также пробовал другие примеры, и они также не отображаются должным образом. Где я ошибаюсь?


person DotPi    schedule 22.04.2013    source источник
comment
Кажется, что способов столько же, сколько версий*пользователей. Есть также Правильный Путь(ТМ), о котором я тоже хотел бы узнать.   -  person Krastanov    schedule 23.04.2013
comment
Что произойдет, если вы удалите строки init_printing и/или pylab?   -  person asmeurer    schedule 23.04.2013
comment
@asmeurer: Без изменений. Все тот же вывод   -  person DotPi    schedule 23.04.2013
comment
Это работает, если вы используете %load_ext sympy.interactive.ipythonprinting? Вам нужен SymPy 0.7.2.   -  person asmeurer    schedule 23.04.2013
comment
@asmeurer: у меня Sympy 0.7.2, но он говорит: Объект sympy.interactive.ipythonprinting не найден.   -  person DotPi    schedule 23.04.2013
comment
Какую версию IPython вы используете?   -  person asmeurer    schedule 24.04.2013
comment
Версия IPython: 1.0.dev9051 Сборка: 660   -  person DotPi    schedule 24.04.2013


Ответы (3)


У меня такая же проблема. Пытаться

from sympy.interactive import printing
printing.init_printing(use_latex=True)

вместо

%load_ext sympyprinting

Я использую симпи 0.7.2

person Antony    schedule 29.08.2013
comment
Прекрасно работает с sympy 1.0 и IPython 5.4.1. Благодарю вас! - person scrutari; 20.07.2017

Недавно у меня была такая же проблема, и я использую Linux Crunchbang, который, я думаю, является производным от Redhat. Первоначально я установил sympy, используя

pip install sympy

Однако это привело к описанной выше проблеме. Затем я зашел на веб-страницу sympy и клонировал репозиторий git в папку. Затем его можно установить (один раз в локальную папку) с помощью

python setup.py install

После этого все заработало нормально, поэтому я думаю, что это как-то связано с используемой версией. Для справки, команды, которые я использовал для инициализации печати в python, были

import sympy
sympy.init_printing()
person Mark Hubenthal    schedule 14.01.2015

Импорт:

from sympy import *
init_printing()

Пример:

x = symbols('x')
a = Integral(cos(x)*exp(x), x)
Eq(a, a.doit())

Выход:

Eq(Integral(exp(x)*cos(x), x), exp(x)*sin(x)/2 + exp(x)*cos(x)/2)

person Yas    schedule 05.06.2016