打印iPython笔记本(.ipynb
)的最佳方法是什么,该笔记本包含大量数字/图表,照片和带有水平滚动条的代码?我已经尝试将它们转换为HTML,幻灯片,PDF等,但都没有产生合适的输出。例如,幻灯片具有超大字体/缩放,使得一个页面中不超过5行文本。我尝试过GitPrint,但这只适用于markdown(md
)文件。我尝试将ipynb
转换为tex
并使用pdflatex
转换为PDF,但是存在很多错误,我一直遇到问号提示({{1} })。当我通过它们输入时,输出不包含照片。那么这里最好的方法是什么?我不关心扩展,只是看起来很好(如?
)在纸上。
答案 0 :(得分:1)
您可以使用nbconvert
将ipynb文件转换为HTML,问题是:如何打印HTML文件?与打印ipynb文件相比,打印HTML文件会容易得多。
命令是这样的:
jupyter nbconvert --to html filename.ipynb
答案 1 :(得分:0)
我认为我发现了一个不错的解决方案,因为我遇到了同样的问题。对于Jupyter笔记本(.pdf格式)的美观打印输出,以供学习和学习使用(作为演讲幻灯片),我建议使用Web浏览器进行打印(Chrome:Print = Ctrl + P)
结果:一种美观的文档,其中包含嵌入Jupyter笔记本中的所有代码和图片。
tl:dr 避免在Jupyter笔记本选项内进行任何转换;直接从网络浏览器中打印。
答案 2 :(得分:0)
最简单灵活的方法是使用CSS。 例如,将以下代码放入单元格中并运行。我将删除所有代码块和输出块。通过这种方式,您可以控制所需的内容。
%%html
<style>
div.input {
display: none;
padding: 0;
}
div.output_prompt {
display: none;
padding: 0;
}
div.text_cell_render {
padding: 1pt;
}
div#notebook p,
div#notebook,
div#notebook li,
p {
font-size: 11pt;
line-height: 135%;
margin: 0;
}
.rendered_html h1,
.rendered_html h1:first-child {
font-size: 16pt;
margin: 7pt 0;
}
.rendered_html h2,
.rendered_html h2:first-child {
font-size: 14pt;
margin: 6pt 0;
}
.rendered_html h3,
.rendered_html h3:first-child {
font-size: 13pt;
margin: 6pt 0;
}
div.output_subarea {
padding: 0;
}
</syle>