Jupyter Lite выводит пустой файл, когда я использую plt.savefig() [закрыто]Python

Программы на Python
Ответить
Anonymous
 Jupyter Lite выводит пустой файл, когда я использую plt.savefig() [закрыто]

Сообщение Anonymous »

Я пишу код Python, который должен создавать график и экспортировать его в векторный PDF-файл. Я использую Jupyter Lite на сайте jupyter.org.
Я успешно создал график, но когда я пытаюсь экспортировать его с помощью plt.savefig(), я получаю только пустой PDF-документ.
Вот MWE, потому что мой фактический код довольно сложен:

Код: Выделить всё

import numpy as np;
import matplotlib.pyplot as plt;
geogrph=plt.axes(projection="3d");
thetaE=np.linspace(0,np.pi,501);
phiE=np.linspace(0,2*np.pi,501);
thetaE,phiE=np.meshgrid(thetaE,phiE);
xE=np.sin(thetaE)*np.cos(phiE);
yE=np.sin(thetaE)*np.sin(phiE);
zE=np.cos(thetaE);
geogrph.plot_surface(xE,yE,zE);
plt.savefig("geogrph.pdf");
(Я знаю, что нет необходимости добавлять точку с запятой в конце каждой строки кода в Python. Это привычка кодирования в Mathematica и C++, и это позволяет избежать вывода Jupyter случайной ерунды, такой как , если я использую легенду или другие подобные вещи. Поскольку это не причиняет вреда и имеет небольшой выгода, я решил это сделать.)
Как уже говорилось, приведенный выше код выводит пустой PDF-файл. Он отображает ожидаемый график во внешнем интерфейсе Jupyter (см. ниже), но по какой-то причине не может его сохранить. Я знаю, что plt.show() вызывает такое поведение и поэтому его следует размещать после plt.savefig(), но в этом случае я даже не использую plt.show(), поэтому не знаю, что происходит.
График:
Изображение

Я где-то читал, что это может произойти, когда включен встроенный %matplotlib, и это можно решить, переключившись на блокнот %matplotlib. Однако выполнение этой команды приводит к ошибке:

(...) ImportError: невозможно импортировать имя «alert» из «js» (неизвестное местоположение)"],"output_type":"error"}],"execution_count":236}]

Затем я где-то прочитал, что для работы коммутатора необходимо установить ipympl, поэтому я попробовал добавить pip install ipympl в начале ячейки. Однако я все еще получаю вышеупомянутую ошибку.
Я новичок в Python, если это не очевидно. Мой опыт в основном связан с Mathematica и MatLab, и я не привык к такого рода ошибкам, поэтому понятия не имею, как это отладить.
Заранее спасибо за любые сообщения. помогите.

Подробнее здесь: https://stackoverflow.com/questions/798 ... lt-savefig
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»