Экспорт одной ячейки iPython Jupyter Notebook

Я занимаюсь форматированием своих ноутбуков iPython, чтобы превратить их в журнал.

Использование конструкций display(HTML()) делает все приятным и относительно простым в организации.

Я хотел бы использовать выходные данные определенных ячеек в других средствах массовой информации, например, для презентаций. Я делаю это сейчас, снимая скриншот области, но затем все становится пикселями, и нет возможности уточнения.

Есть ли способ визуализировать вывод одной ячейки в каком-нибудь полезном формате?

Ответ 1

Там нет никакой возможности экспортировать один выход клеток в Jupyter, как сейчас, но то, что вы можете сделать, это преобразовать весь ноутбук в более удобный формат, а затем отсечь только те части, которые вам нужны. Это не оптимально, но все же лучше, чем ваш текущий обходной путь, по крайней мере, в отношении качества вывода.

Вы можете сделать это по-разному:

  1. ФайлЭкспорт блокнота как... → Ваш предпочитаемый формат файла
  2. Если вы хотите сделать это программно, вы можете использовать nbconvert из командной строки следующим образом:

    nbconvert --to (your preferred output format) yourNotebook.ipynb

Вы также можете сделать это из своей записной книжки, выполнив этот код в ячейке (для HTML в этом примере):

from nbconvert import HTMLExporter
import codecs
import nbformat

notebook_name = 'YOUR_NOTEBOOK_NAME.ipynb'
output_file_name = 'output.html'

exporter = HTMLExporter()
output_notebook = nbformat.read(notebook_name, as_version=4)

output, resources = exporter.from_notebook_node(output_notebook)
codecs.open(output_file_name, 'w', encoding='utf-8').write(output)

Большинство библиотек, тем не менее, позволяют экспортировать результаты вашей программы в любой желаемый выход (pandas, matplotlib, altair...), поэтому вам, вероятно, следует попытаться использовать их.