Jupyter Notebook输出Html,隐藏代码

本文介绍了如何在JupyterNotebook中隐藏代码,以便在导出HTML或PDF时仅显示结果和解释。提供了两种方法:一种是全局隐藏输入单元格,另一种适用于Markdown单元格。还介绍了导出HTML文件的几种选项,包括带目录和设置超时时间。
摘要由CSDN通过智能技术生成


将jupyter-notebook导出为一个报告或者presentation的形式,不需要显示代码过程,只需要显示结果以及用markdown做的解释说明.

1.导出文件时可隐藏代码

在自己编辑notebook时不起作用,对导出结果中所有代码起作用:导出html或者pdf中没有代码

from IPython.display import display
from IPython.display import HTML
import IPython.core.display as di
di.display_html('<script>jQuery(function() {if (jQuery("body.notebook_app").length == 0) { jQuery(".input_area").toggle(); jQuery(".prompt").toggle();}});</script>', raw=True)
CSS = """#notebook div.output_subarea {max-width:100%;}""" #changes output_subarea width to 100% (from 100% - 14ex)
HTML('<style>{}</style>'.format(CSS))

2.Jupyter Notebook输出Html,隐藏笔记本输入单元格代码

方法一:

执行,即可在该文档中使用“隐藏/显示”输入单元格功能。
缺陷:此方法不能很好的适用于Markdown单元格。

from IPython.display import display
from IPython.display import HTML
import IPython.core.display as di # Example: di.display_html('<h3>%s:</h3>' % str, raw=True)

# 这行代码的作用是:当文档作为HTML格式输出时,将会默认隐藏输入单元格。
di.display_html('<script>jQuery(function() {if (jQuery("body.notebook_app").length == 0) { jQuery(".input_area").toggle(); jQuery(".prompt").toggle();}});</script>', raw=True)

# 这行代码将会添加“Toggle code”按钮来切换“隐藏/显示”输入单元格。
di.display_html('''<button οnclick="jQuery('.input_area').toggle(); jQuery('.prompt').toggle();">Toggle code</button>''', raw=True)

方法二:

适用于Markdown单元格

from IPython.display import HTML
 
HTML('''<script>
code_show=true; 
function code_toggle() {
 if (code_show){
 $('div.input').hide();
 } else {
 $('div.input').show();
 }
 code_show = !code_show
} 
$( document ).ready(code_toggle);
</script>
<form action="javascript:code_toggle()"><input type="submit" value="点击隐藏或者显示代码"></form>''')

3.导出HTML文件

运行代码后,将会在同一文件夹下生成一个名为notebook.html的文件

a.执行notebook,将结果保存为 .html

jupyter nbconvert --to html notebook.ipynb

b.带目录且不显示源代码

jupyter nbconvert --to html_toc --no-input notebook.ipynb

备注:

  1. html_toc意味带目录(table of content),若要不显示目录,将该参数修改为html即可;
  2. --no-input 意为不显示源代码,若要显示源代码,将该参数删除即可;

c.执行notebook文件,设置超时时间

jupyter nbconvert --to html --ExecutePreprocessor.allow_errors=True  --ExecutePreprocessor.timeout=-1 --execute notebook.ipynb

官方文档:
https://pandas.pydata.org/pandas-docs/stable/user_guide/style.html

  • 7
    点赞
  • 14
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值