Сохранить график как изображение с помощью Matplotlib

Введение Matplotlib - одна из наиболее широко используемых библиотек визуализации данных в Python. Сюжеты и визуализации Matplotlib обычно делятся с другими, будь то в документах или в Интернете. В этой статье мы рассмотрим, как сохранить график / график в виде файла изображения с помощью Matplotlib. Создание графика Давайте сначала создадим простой график: import matplotlib.pyplot as plt import numpy as np x = np.arange (0, 10, 0.1) y = np.sin (x) plt.plot (x, y) plt. show () Здесь мы построили синусоидальную функцию

Вступление

Matplotlib - одна из наиболее широко используемых библиотек визуализации данных в Python. Сюжеты и визуализации Matplotlib обычно делятся с другими, будь то в документах или в Интернете.

В этой статье мы рассмотрим, как сохранить график / график в виде файла изображения с помощью Matplotlib .

Создание сюжета

Давайте сначала создадим простой сюжет:

 import matplotlib.pyplot as plt 
 import numpy as np 
 
 x = np.arange(0, 10, 0.1) 
 y = np.sin(x) 
 
 plt.plot(x, y) 
 plt.show() 

Здесь мы построили синусоидальную функцию, начиная с 0 и заканчивая 10 с шагом 0.1 . Выполнение этого кода дает:

синус визуализацияPython

Теперь давайте посмотрим, как мы можем сохранить эту фигуру как изображение.

Сохранить график как изображение в Matplotlib

В предыдущем примере мы сгенерировали график с помощью функции plot() , передав данные, которые мы хотели бы визуализировать.

Этот график создается, но не отображается нам, если мы не вызываем функцию show() Функция show() , как следует из названия, показывает пользователю сгенерированный график в окне.

После создания мы также можем сохранить этот рисунок / график как файл

  • используя savefig() :

    import matplotlib.pyplot as plt import numpy as np

    x = np.arange(0, 10, 0.1) y = np.sin(x)

    plt.plot(x, y) plt.savefig(‘saved_figure.png’)

Теперь, когда мы запускаем код, вместо всплывающего окна с saved_figure.png у нас есть файл (saved_figure.png) в каталоге нашего проекта.

Этот файл содержит точно такое же изображение, которое мы бы показывали в окне:

сохранить график вmatplotlib{.ezlazyload}

Стоит отметить, что savefig() не уникальна для экземпляра plt Вы также можете использовать его на объекте Figure

 import matplotlib.pyplot as plt 
 import numpy as np 
 
 fig = plt.figure() 
 
 x = np.arange(0, 10, 0.1) 
 y = np.sin(x) 
 
 plt.plot(x, y) 
 fig.savefig('saved_figure.png') 

Функция savefig() имеет обязательный аргумент filename Здесь мы указали имя файла и формат.

Кроме того, он принимает другие параметры, такие как dpi , transparent , bbox_inches , quality и т. Д.

Мы рассмотрим некоторые популярные варианты в следующих разделах.

Настройка разрешения изображения

Параметр DPI определяет количество точек (пикселей) на дюйм. По сути, это разрешение создаваемого изображения. Давайте протестируем несколько разных вариантов:

 import matplotlib.pyplot as plt 
 import numpy as np 
 
 fig = plt.figure() 
 
 x = np.arange(0, 10, 0.1) 
 y = np.sin(x) 
 
 plt.plot(x, y) 
 fig.savefig('saved_figure-50pi.png', dpi = 50) 
 fig.savefig('saved_figure-100dpi.png', dpi = 100) 
 fig.savefig('saved_figure-1000dpi.png', dpi = 1000) 

Это приводит к появлению трех новых файлов изображений на нашем локальном компьютере, каждый с разным DPI:

сохранить график в matplotlib сdpi{.ezlazyload}

Значение по умолчанию - 100 .

Сохраните прозрачное изображение с помощью Matplotlib

transparent можно использовать для создания графика с прозрачным фоном. Это полезно, если вы будете использовать графическое изображение в презентации, на бумаге или хотите представить его в пользовательских настройках дизайна:

 import matplotlib.pyplot as plt 
 import numpy as np 
 
 x = np.arange(0, 10, 0.1) 
 y = np.sin(x) 
 
 plt.plot(x, y) 
 plt.savefig('saved_figure.png', transparent=True) 

Если мы поместим это изображение на темный фон, это приведет к:

сохранить прозрачный график вmatplotlib{.ezlazyload}

Изменение цвета графика

Вы можете изменить цвет лица, используя аргумент facecolor Он принимает color и по умолчанию используется white .

Изменим его на red :

 import matplotlib.pyplot as plt 
 import numpy as np 
 
 x = np.arange(0, 10, 0.1) 
 y = np.sin(x) 
 
 plt.plot(x, y) 
 plt.savefig('saved_figure-colored.png', facecolor = 'red') 

Это приводит к:

изменить цвет сохраненного графикаmatplotlib{.ezlazyload}

Настройка поля границы изображения

bbox_inches принимает строку и определяет границу вокруг прямоугольника, который мы строим. Если мы хотим сделать его tight , то есть максимально обрезать рамку, мы можем установить для аргумента bbox_inches 'tight' :

 import matplotlib.pyplot as plt 
 import numpy as np 
 
 x = np.arange(0, 10, 0.1) 
 y = np.sin(x) 
 
 plt.plot(x, y) 
 plt.savefig('saved_figure-tight.png', bbox_inches = 'tight', facecolor='red') 

В результате получается плотно упакованная коробка. Это легче визуализировать, если для справки раскрасить лицо другим цветом:

установить рамку изображения с помощьюmatplotlib{.ezlazyload}

Заключение

В этом уроке мы рассмотрели несколько способов сохранить график в виде файла изображения с помощью Matplotlib.

Если вас интересует визуализация данных и вы не знаете, с чего начать, обязательно ознакомьтесь с нашим комплектом книг по визуализации данных в Python{.ebook-link} :

::: {style=“border: 1px solid #ebebeb;padding: 15px;"} {.ebook-link}

Визуализация данных в Python

::: {.row} ::: {.col-md-4 .col-xs-12} {.ezlazyload .img-responsive .center-block} :::

::: {.col-md-8 .col-xs-12 .my-auto} Ограниченная по времени скидка: 2 к 1, сэкономьте 50%!

✅ 30-дневная гарантия возврата денег без вопросов

✅ от начального до продвинутого

✅ Регулярно обновляется бесплатно (последнее обновление в апреле 2021 г.)

✅ Обновлено с бонусными ресурсами и руководствами ::: ::: :::

Визуализация данных в Python с помощью Matplotlib и Pandas - это книга, предназначенная для абсолютных новичков в работе с Pandas и Matplotlib с базовыми знаниями Python и позволяющая им создать прочную основу для расширенной работы с этими библиотеками - от простых графиков до анимированных трехмерных графиков с интерактивными кнопки.

Он служит подробным руководством, которое научит вас всему, что вам нужно знать о Pandas и Matplotlib, в том числе о том, как создавать типы графиков, которые не встроены в саму библиотеку.

Книга «Визуализация данных в Python» , книга для начинающих и средних разработчиков Python, проведет вас через простые манипуляции с данными с помощью Pandas, охватит основные библиотеки построения графиков, такие как Matplotlib и Seaborn, и покажет, как использовать преимущества декларативных и экспериментальных библиотек, таких как Altair. В частности, на протяжении 11 глав эта книга охватывает 9 библиотек Python: Pandas, Matplotlib, Seaborn, Bokeh, Altair, Plotly, GGPlot, GeoPandas и VisPy.

Он служит уникальным практическим руководством по визуализации данных в виде множества инструментов, которые вы можете использовать в своей карьере.

comments powered by Disqus