Блокнот IPython: рисование с помощью LaTeX?

Отображение строк LaTeX в блокноте IPython было дано ранее, но как, например, пометить ось графика строкой LaTeX при построении графика в блокноте IPython?


person user1988816    schedule 17.01.2013    source источник
comment
как ты установил текс? Возможно, это был BasicTex от MacTex?   -  person minrk    schedule 28.01.2013


Ответы (2)


В IPython он работает так же, как и в автономном скрипте. Этот пример взят из документации:

import matplotlib as mpl
import matplotlib.pyplot as plt
mpl.rc('text', usetex = True)
mpl.rc('font', family = 'serif')
plt.figure(1, figsize = (6, 4))
ax = plt.axes([0.1, 0.1, 0.8, 0.7])
t = np.arange(0.0, 1.0+0.01, 0.01)
s = cos(2*2*pi*t)+2
plt.plot(t, s)

plt.xlabel(r'\textbf{time (s)}')
plt.ylabel(r'\textit{voltage (mV)}', fontsize = 16)
plt.title(r"\TeX\ is Number $\displaystyle\sum_{n=1}^\infty\frac{-e^{i\pi}}{2^n}$!",
      fontsize = 16, color = 'r')
plt.grid(True)
plt.savefig('tex_demo')
plt.show()

введите здесь описание изображения

person unutbu    schedule 17.01.2013
comment
Перетаскивание приведенного выше примера кода в ячейку IPy Notebook возвращает ошибку с таким содержимым, как: RuntimeError: LaTeX не удалось обработать следующую строку:...! Ошибка LaTeX: файл `type1cm.sty' не найден. Я понимаю, что IPy Notebook обрабатывает LaTeX иначе, чем только IPython. - person user1988816; 18.01.2013
comment
@user1988816 user1988816 Какую ОС вы используете и как вы установили LaTeX? - person tacaswell; 18.01.2013
comment
@ user1988816: В графиках LaTeX обрабатывается matplotlib, а не IPython. Блокнот IPython имеет отдельные механизмы для отображения LaTeX, но они не используются при построении графика. - person Thomas K; 18.01.2013
comment
@user1988816 user1988816 Держу пари, вы установили BasicTex с MacTex. Это не совсем все пакеты, которые нужны matplotlib для использования tex (в основном несколько шрифтов). Вы можете установить полный MacTex, чтобы получить их, или просто добавить недостающие, что, я думаю, будет: tlmgr install dvipng helvetic palatino mathpazo type1cm - person minrk; 28.01.2013
comment
Я удалил MacTeX и переустановил полную версию 2012 года, но все равно получаю то же сообщение. @minrk, как вы устанавливаете недостающие пакеты, о которых вы упомянули? Я видел в других местах на форумах, что texlive-latex-extra от MacPorts имеет отсутствующие файлы, но я также не смог найти инструкции по установке для этого. Использование Mountain Lion и MacTex 2012. - person user1988816; 22.02.2013
comment
@user1988816 user1988816 команда, которую я вставил это, как вы их устанавливаете. tlmgr — менеджер пакетов texlive. - person minrk; 22.02.2013
comment
ноутбук обрабатывает латексное отображение с помощью mathjax, который уже включен в веб-интерфейс. нет необходимости в каком-либо латексном двигателе. ipthon qtconsole нуждается в латексном движке. - person MySchizoBuddy; 12.04.2013

Я столкнулся с проблемой, описанной в комментариях: ! LaTeX Error: File 'type1cm.sty' not found.

Проблема заключалась в том, что моя команда tex по умолчанию указывала не на мой последний дистрибутив MacTex, а скорее на старый дистрибутив tex, который я установил с помощью macports несколько лет назад и который не обновлялся с тех пор, как я переключился к использованию MacTex.

Я диагностировал это, набрав which tex в командной строке и получив /opt/local/bin/tex, который не является местом установки по умолчанию для MacTex.

Решение заключалось в том, что мне пришлось отредактировать переменную $PATH, чтобы правильная версия tex вызывалась из matplotlib.

Я добавил export PATH="/usr/local/texlive/2019/bin/x86_64-darwin:$PATH" в последнюю строку моего ~/.bash_profile.

Теперь, когда я пишу echo $PATH в командной строке, я получаю:

/usr/local/texlive/2019/bin/x86_64-darwin:blah:blah:blah...

Не забудьте после этого перезагрузить терминал и сервер Jupyter, чтобы изменения вступили в силу.

person spring    schedule 09.09.2019