导出单个iPython Jupyter Notebook单元格输出

问题描述 投票:11回答:1

我正在玩我的iPython笔记本格式化,以使它们更多地成为日志。

使用display(HTML())构造使一切都很好,相对容易组织。

我想在其他媒体中使用某些单元格的输出,例如演示文稿。我现在这样做的方法是截取该区域的截图,但随后一切都变成像素,并且没有可能的细化。

有没有办法以某种有用的格式呈现单个单元格的输出?

ipython-notebook jupyter-notebook
1个回答
0
投票

没有办法在Jupyter,as of now中导出单个单元格输出,但您可以做的是将整个笔记本转换为更有用的格式,然后仅修剪您需要的部分。这不是最佳选择,但它仍然优于您当前的解决方法,至少在输出质量方面。

您可以通过不同方式执行此操作:

  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 ......),因此您可能应该尝试使用它们。

© www.soinside.com 2019 - 2024. All rights reserved.