2013-04-22 5 views
14

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

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 

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

+0

Там Кажется, что существует так же много способов, как версии * пользователей. Существует также правильный путь (TM), который я также хотел бы узнать. – Krastanov

+0

Что произойдет, если вы удалите строки 'init_printing' и/или' pylab'? – asmeurer

+0

@asmeurer: Без изменений. Все тот же вывод – DotPi

ответ

17

У меня была та же проблема. Попробуйте

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

вместо

%load_ext sympyprinting 

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

+0

Также работает для меня w/ipython 2.3 и sympy 0.7.6 –

+0

Работает как шарм с sympy 1.0 и IPython 5.4.1. Спасибо! – scrutari

2

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

pip install sympy 

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

python setup.py install 

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

import sympy 
sympy.init_printing() 
2

Импорт:

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)

Смежные вопросы