Большинство современных сред разработки имеют очень много инструментов для улучшения визуальной составляющей. Начиная от цвета фона заканчивая изменением цвета текста определённого шаблона. Сегодня я хочу рассказать, как подогнать под себя интерфейс Jupyter Notebook, используя jupyter-themes
.
Подпишись на группу Вконтакте и Телеграм-канал. Там еще больше полезного контента для программистов.
А на YouTube-канале ты найдешь обучающие видео по программированию. Подписывайся!
Установка
Начнём с установки пакета, используя pip
или conda
.
Для пакетного мененджера pip команда выглядит следующим образом:
>>> pip install jupyterthemes
В ситуации с conda
всё выглядит несколько труднее, потому оставлю ссылку с несколькими вариантами установки этого пакета на официальном сайте Conda.
Командная строка
Всего существует 9 тем, список которых я сохраню в список Python (далее нам это пригодится).
In[1]: #Памятка themes = ['onedork', 'oceans16', 'chesterish', 'monokai', 'gruvboxd', 'gruvboxl', 'grade3', 'solarizedl', 'solarizedd']
Этот же список можно получить, выполнив команду в терминале:
>>> jt -l
Чтобы установить тему, воспользуемся командой:
>>> jt -t <theme>
Я не буду приводить все команды, которые меняют визуальную составляющую. Последняя команда, которой я часто пользуюсь — изменение отступов к краям экрана:
>>> jt -m 100
Изменение стиля графиков matplotlib
Также, с помощью модуля Python jupyterthemes
мы можем изменять стиль графиков, построенных с помощью matplotlib
.
Приведу пример для сравнения. Построим график сигмоиды и опишем функцию построения графика:
In[2]: import matplotlib.pyplot as plt import numpy as np from jupyterthemes import jtplot
In[3]: x = np.linspace(-5, 5, 1000) y = 1 / (1 + np.exp(-x)) #sigmoid
In[4]: def plot(x, y): plt.clf() plt.figure(figsize=(14, 7)) plt.plot(x, y, color='red', label=r'$\frac{1}{1 + e^x}$') plt.legend(loc='best', fontsize=30) plt.grid(True)
In[5]: plot(x, y) Out[5]:

Теперь воспользуемся подмодулем jtplot
:
In[6]: jtplot.style('onedork') plot(x, y) Out[6]:

Скриншоты со всеми темами
Чтобы вы смогли быстро сориентироваться, какая тема вам наиболее подходит, я заскриншотил начальный фрагмент документа, который приклепляется к этой статье, каждый раз меняя тему. Используя тот же язык Python, я быстренько вывел их всех на экран:
In[7]: import os from PIL import Image fig, axes = plt.subplots(9, 1, figsize=(30, 60)) axes = axes.flat i = 0 for theme in themes: file = os.path.join('themes', f'{theme}.png') axes[i].imshow(Image.open(file)) axes[i].set_title(theme, fontsize=25) axes[i].axis('off') i += 1
Теперь посмотрим, как же выглядит каждая тема, которую нам предлагает к использованию jupyter-themes
.








Заключение
В этой статье я продемонстрировал, как можно улучшить визуальную составляющую Jupyter Notebook. Конечно же, я продемонтрировал далеко не всё. Репозиторий проекта jupyter-themes
находится по ссылочке.
Также рекомендую прочитать статью «Градиентный спуск на пальцах».
А также подписывайтесь на группу ВКонтакте, Telegram и YouTube-канал. Там еще больше полезного и интересного для программистов.