Юпитер является эффективным инструментом для анализа данных, будь то классический ноутбук, лаборатория или ноутбуки в популярных текстовых редакторах, таких как код VS. Вы проводите анализ, но когда дело доходит до представления ваших результатов, большую часть времени вам нужно выходить из экосистемы. В настоящее время существует много инструментов, чтобы представить ваш анализ нетехническим людям, не показывая кодовые ячейки, включая вуаля, выявление слайдов и т. Д. Эти инструменты представляют собой статический HTML или слайды простых ячеек, поэтому у вас нет тонкого контроля зерна над содержанием. Столкнувшись со всеми такими трудностями, я решил использовать богатые возможности контента iPython для создания презентации без выхода из ноутбука. Результирующий пакет ipyslides находится в активной разработке и может практически использовать каждый вид контента из виджетов, аудио, видео, HTML и т. Д. Без более вступления давайте немного углубимся в код.
Наиболее предпочтительной средой является jupyterlab, поэтому после установки, ты можешь сделать
pip install ipyslides
У вас есть несколько способов создания слайдов, но существует ярлык, который заполняет код в ячейках с меньшими усилиями. Вы можете начать создавать презентацию, например,:
import ipyslides as isd isd.initilize()
Запуск над ячейкой будет толкать код в той же ячейке, вы получите много кода в ячейке, но я покажу несколько строк:
from ipyslides import load_magics, convert2slides, write_title from ipyslides.utils import write, plt2html, print_context, slide # Command below registers all the ipyslides magics that are used in this file load_magics() # Set this to True for Slides output convert2slides(False) #Set this to True for Slides output write_title("# Title Markdown")
После бега над ячейкой, среда ваших слайдов почти установлена. Вы можете начать строить слайды с обычным кодом Python с одной дополнительной линией в ячейке.
%%slide 1 write('# Slide Title') write('## Column 1',"## Column 2")
Оба %% Slide
и с стороной
Сохраните результаты в механизме захвата iPython. Есть другой способ, где вы можете добавить динамические слайды с помощью вспомогательной функции:
isd.insert_after(1, 1,2,3,func=lambda x: write(f'## Dynamic Slide ${x}^2 = {x**2}$'))
Это создаст три слайда после слайда 1. Теперь давайте создадим несколько слайдов из одной ячейки, используя Context Manager:
import matplotlib.pyplot as plt, numpy as np for i in range(5): with slide(i+5): x = np.linspace(0,i+1,50+10*i) _ = plt.plot(x,np.sin(x)) write(plt2html(),f'#### Slide {i+5} but I am {i+1} of 5 other slides created from single cell\n{isd.get_cell_code()}')
После того, как у вас есть слайды, вы можете запустить команду isd.build ()
который сообщит вам включить Convert2slides (true)
В первой ячейке и когда вы это сделаете, выполнение ячейки заполнит код или вы можете написать код самостоятельно, не используя isd.build
командование
# Only this cell should show output. For JupyterLab >=3, pip install sidecar for fullscreen access # You can also double click on output and select `Create New View for Output` that will let you enable fullscreen. # ------ Slides End Here -------- from ipyslides.core import LiveSlides ls = LiveSlides() ls.set_footer('Author: Abdul Saboor') ls.show()
Эта последняя ячейка будет генерировать слайды, все слайды должны быть над этой ячейкой. Теперь, если вы в Jupyterlab, вы можете использовать Создайте новый вид для вывода
меню формы или, если у вас есть коляска
Установленная презентация будет автоматически всплыть туда, откуда вы можете сделать его полноценным из левой панели.
У тебя написать
Команда написать Markdown, HTML и графики после использования plt2html
и PLOTLY2HTML
. Вы можете распространяться на другие библиотеки на графике, или вы можете просто использовать собственные команды, такие как plt.show
, Рис. Шоу
и т. д.
Вы можете увидеть понимающие примеры слайдов в Kaggle и Переплет Где встроен богатый контент, такой как видео на YouTube, таблицы, графики, виджеты.
Оригинал: “https://dev.to/massgh/create-dynamic-and-content-rich-presentations-in-jupyter-5916”