Экспорт и сохранение графиков в Matplotlib позволяют сохранять визуализации для дальнейшего использования или в отчетах и презентациях. Можно сохранять графики Matplotlib в виде файлов изображений (например, PNG, JPEG) или в виде интерактивных HTML-файлов, используя функцию savefig() и другие параметры настройки.
Matplotlib поддерживает различные форматы файлов изображений, такие как PNG, JPEG, PDF, SVG и другие. При сохранении графика/диаграммы у файла указывается соответствующее расширение. Например, для сохранения виде файла PNG, используется расширение файла ".png".
Для сохранения графика Matplotlib в файл применяется функция savefig():
Figure.savefig(fname, *, transparent=None, **kwargs)
Через первый параметр передается путь к фалу или файло-подобный объект Python.
Параметр transparent позволяет управлять прозрачностью. Если значение равно True, к объектам Axes будет применяться прозрачность.
Кроме того, ряд необязательных параметрв savefig предоставляет несколько дополнительных возможностей для настройки. Основные из них:
dpi: задает разрешение (точек на дюйм) сохраняемого изображения
bbox_inches: управляет ограничивающей рамкой, используемой для сохранения графика. Значение "tight" гарантирует сохранение всего графика без обрезки.
format: формат файла, например, "png", "pdf", "svg" и т.д.
Например, сохранение фигуры в файл "output.png"
import matplotlib.pyplot as plt
days = ["31.01", "03.02", "04.02", "05.02", "06.02", "07.02"]
rates = [75.73, 77.02, 76.98, 76.91, 76.55, 77.05]
plt.plot(days, rates, "ob-")
plt.grid(True)
# сохраняем в файл "output.png"
plt.savefig("output.png", format="png")
print("График сохранен в файл output.png")
Сохранение графиков Matplotlib в виде интерактивных HTML-файлов достигается путем преобразования графиков Matplotlib в графики Plotly и последующего сохранения их в интерактивном формате. Поэтому сначала необходимо установить библиотеку Plotly:
pip install plotly
В качестве демонстрации определим следующий код:
import matplotlib.pyplot as plt
import plotly.graph_objects as go
days = ["31.01", "03.02", "04.02", "05.02", "06.02", "07.02"]
rates = [75.73, 77.02, 76.98, 76.91, 76.55, 77.05]
plt.plot(days, rates, "ob-")
plt.grid(True)
# преобразуем график Matplotlib в фигуру Plotly
fig = go.Figure()
fig.add_trace(go.Scatter(x=days, y=rates, mode="lines", name="Курс доллара"))
# Сохраняем интерактивный график в виде файла HTML
fig.write_html("usd.html")
# отображаем график
fig.show()
Рассмотрим основные моменты, связанные с использованием библиотеки Plotly. Прежде всего мы импортируем соответствующую функциональность
import plotly.graph_objects as go
После создания графика средствами Matplotlib его надо преобразовать в фигуру Plotly:
fig = go.Figure() fig.add_trace(go.Scatter(x=days, y=rates, mode="lines", name="Курс доллара"))
Затем сохраняем в виде интерактивного файла HTML в файл "usd.html":
fig.write_html("usd.html")
Если необходимо тут же отобразить интерактивный график, можно использовать следующий код:
fig.show()
В этом случае фактически будет запущен примитивный веб-сервер, а затем браузер, который отобразит сохраненную html-страницу
Сохраненную html-страницу можно найти в текущем рабочем каталоге и открыть в веб-браузере.