Коллапс ячейки в ноутбуке jupyter
Я использую ipython Jupyter notebook. Скажем, я определил функцию, которая занимает много места на моем экране. Есть ли способ свернуть ячейку?
Я хочу, чтобы функция оставалась выполненной и вызываемой, но я хочу скрыть/свернуть ячейку, чтобы лучше визуализировать ноутбук. Как я могу это сделать?
Ответы
Ответ 1
jupyter contrib nbextensions
Пакет Python содержит расширение для сгибания кода, которое можно включить в ноутбуке. Следуйте ссылке (Github) для документации.
Чтобы установить с помощью командной строки:
pip install jupyter_contrib_nbextensions
jupyter contrib nbextension install --user
Чтобы облегчить жизнь в управлении ими, я также рекомендую пакет jupyter nbextensions configurator
. Это обеспечивает дополнительную вкладку в интерфейсе вашего ноутбука, где вы можете легко (de) активировать все установленные расширения.
Установка:
pip install jupyter_nbextensions_configurator
jupyter nbextensions_configurator enable --user
Ответ 2
Вы можете создать ячейку и вставить в нее следующий код:
%%html
<style>
div.input {
display:none;
}
</style>
Запуск этой ячейки скроет все входные ячейки. Чтобы показать их, вы можете использовать меню для очистки всех выходов.
В противном случае вы можете попробовать расширения для ноутбуков, как показано ниже:
https://github.com/ipython-contrib/IPython-notebook-extensions/wiki/Home_3x
Ответ 3
JupyterLab поддерживает разрушение клеток. Нажав на синюю ячейку слева, вы свернете ячейку. ![enter image description here]()
Ответ 4
У меня была похожая проблема, и "nbextensions", указанные @Energya, работали очень хорошо и без усилий. Инструкции по установке просты (я пробовал с anaconda на Windows) для расширений ноутбука и их конфигуратора.
Тем не менее, я хотел бы добавить, что следующие расширения должны представлять интерес.
-
Скрыть вход | Это расширение позволяет скрыть отдельную кодовую ячейку в блокноте. Это можно сделать, нажав на кнопку панели инструментов: ![Hide Input]()
-
Складные заголовки | Позволяет записной книжке иметь разделы, разделенные заголовками ![Collapsible Headings]()
-
Кодфолдинг | Это было упомянуто, но я добавляю это для полноты ![Codefolding]()
Ответ 5
Создайте файл 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 []).
Ответ 6
Расширение hide_code позволяет скрывать отдельные ячейки и/или подсказки рядом с ними. Установить как
pip3 install hide_code
Посетите https://github.com/kirbs-/hide_code/ для получения дополнительной информации об этом расширении.
Ответ 7
Во-первых, следуйте инструкциям Energya:
pip install jupyter_contrib_nbextensions
jupyter contrib nbextension install --user
pip install jupyter_nbextensions_configurator
jupyter nbextensions_configurator enable --user
Второй ключ:. После открытия ноутбука юпитера перейдите на вкладку Nbextension. Теперь Поиск "colla" из инструмента поиска, предоставляемого Nbextension (не веб-браузером), вы найдете что-то под названием "Складные заголовки"
Это то, что вы хотите!
Ответ 8
Там также улучшенная версия предложения Pan Yan. Он добавляет кнопку, которая показывает ячейки кода обратно:
%%html
<style id=hide>div.input{display:none;}</style>
<button type="button"
onclick="var myStyle = document.getElementById('hide').sheet;myStyle.insertRule('div.input{display:inherit !important;}', 0);">
Show inputs</button>
Или python:
# Run me to hide code cells
from IPython.core.display import display, HTML
display(HTML(r"""<style id=hide>div.input{display:none;}</style><button type="button"onclick="var myStyle = document.getElementById('hide').sheet;myStyle.insertRule('div.input{display:inherit !important;}', 0);">Show inputs</button>"""))
Ответ 9
Вам не нужно ничего делать, кроме как включить расширения:
http://localhost:8888/nbextensions?nbextension=collapsible_headings
http://localhost:8888/nbextensions?nbextension=codefolding/main
![enter image description here]()
Скорее всего, вы найдете все свои расширения здесь:
http://localhost:8888/nbextensions
![enter image description here]()