Оптимизация размера блокнота Jupyter и качества иллюстраций

Рейтинг: 1Ответов: 0Опубликовано: 15.08.2025

Ввиду ограничений предварительного просмотра GitHub хочется, с одной стороны, иметь сравнительно небольшие файлы записок .ipynb, а с другой стороны, хотелось бы иметь качество получше. И всё это с минимальными затратами.

Известные мне варианты настроек записки:

# %config InlineBackend.figure_formats = [ "retina" ]  # 2,8M
# %config InlineBackend.figure_formats = [ "png2x" ]  # Синоним "retina"? 2,8M
# %config InlineBackend.figure_formats = [ "svg" ]  # Сохраняет PNG внутри SVG, 880K
# Эти уже, бывает, нехорошо выглядят. 
# %config InlineBackend.figure_formats = [ "png" ]  # По умолчанию, 868K
%config InlineBackend.figure_formats = [ "jpeg" ]  # Режем для GitHub, 172K
%config InlineBackend.print_figure_kwargs = {'pil_kwargs': {'quality' : 90, \
                                                            'optimize': True}}  # Влияет

Как я понимаю, на настоящий момент, matplotlib не может внутрь SVG помещать JPEG или как-то иначе сжимать SVG, по крайней мере в теле записок (тип файла svgz в документации matplotlib упоминается, но как его использовать в matplotlib_inline не описано).

Как кажется, вариант jpeg удвоенного разрешения, а-ля png2x, был бы приемлем. Как бы это так сделать, что б ничего не делать?

Пример записки: https://github.com/Serge3leo/temp-cola/blob/main/ruSO/1615614-Загрузка-данных-записки/Загрузка-данных-записки.ipynb

Ответы

Ответов пока нет.