我用的是ipython Jupyter笔记本。假设我定义了一个函数,它在屏幕上占据了很大的空间。有办法让细胞崩溃吗?
我希望函数保持执行和可调用,但我想隐藏/折叠单元格,以便更好地可视化笔记本。我该怎么做呢?
我用的是ipython Jupyter笔记本。假设我定义了一个函数,它在屏幕上占据了很大的空间。有办法让细胞崩溃吗?
我希望函数保持执行和可调用,但我想隐藏/折叠单元格,以便更好地可视化笔记本。我该怎么做呢?
当前回答
我也遇到过类似的问题,@Energya指出的“nbextensions”工作得非常好,毫不费力。笔记本扩展及其配置器的安装说明非常简单(我尝试在Windows上使用anaconda)。
也就是说,我想补充的是,以下扩展应该是感兴趣的。
隐藏输入| 这个扩展允许在笔记本中隐藏一个单独的码息。这可以通过点击工具栏按钮来实现: 可折叠的标题|允许笔记本有可折叠的部分,由标题分开 代码折叠|这已经提到,但我添加它的完整性
其他回答
您可以创建一个单元格,并将以下代码放在其中:
%%html
<style>
div.input {
display:none;
}
</style>
运行此单元格将隐藏所有输入单元格。要显示它们,可以使用菜单清除所有输出。
否则,你可以尝试笔记本扩展如下:
https://github.com/ipython-contrib/IPython-notebook-extensions/wiki/Home_3x
在~/中创建custom.js文件。Jupyter /custom/包含以下内容:
$("<style type='text/css'> .cell.code_cell.collapse { max-height:30px; overflow:hidden;} </style>").appendTo("head");
$('.prompt.input_prompt').on('click', function(event) {
console.log("CLICKED", arguments)
var c = $(event.target.closest('.cell.code_cell'))
if(c.hasClass('collapse')) {
c.removeClass('collapse');
} else {
c.addClass('collapse');
}
});
保存完成后,重新启动服务器并刷新笔记本。您可以通过单击输入标签(In[])来折叠任何单元格。
正如其他人所提到的,您可以通过nbextensions来实现这一点。我想简单地解释一下我所做的事情,既快捷又简单:
启用可折叠标题: 在您的终端中,首先输入以下命令启用/安装Jupyter Notebook Extensions:
pip install jupyter_contrib_nbextensions
然后,输入:
jupyter contrib nbextension install
重新打开Jupyter Notebook。进入“编辑”选项卡,选择“nbextensions config”。 取消标题“可配置的nbextensions”下的复选框,然后选择“可折叠标题”。
更新:
更新的jupyter-lab是一个更现代和功能丰富的界面,默认支持单元格折叠。请看下面@intsco的回答
更新2
由于jupyter-lab现在也支持扩展,您可以使用collapsible_heading扩展扩展内置的单元格折叠功能。
最初的回答:
jupyter contrib nbextensions Python包包含一个代码折叠扩展,可以在笔记本中启用。点击链接(Github)获取文档。
使用命令行安装:
pip install jupyter_contrib_nbextensions
jupyter contrib nbextension install --user
为了便于管理它们,我还推荐jupyter nbextensions配置器包。这在Notebook界面中提供了一个额外的选项卡,在那里您可以轻松地(解除)激活所有已安装的扩展。
安装:
pip install jupyter_nbextensions_configurator
jupyter nbextensions_configurator enable --user
JupyterLab支持细胞折叠。单击左侧的蓝色单元格条将折叠单元格。