JavaRush /Курси /Python SELF UA /Експорт графіків для звітів та інтеграція в документацію

Експорт графіків для звітів та інтеграція в документацію

Python SELF UA
Рівень 42 , Лекція 4
Відкрита

1. Експорт інтерактивних графіків з Plotly

Вітаю всіх любителів візуалізації та художників графіків з тим, що ви дійшли до нашої останньої лекції з візуалізації даних. Сьогодні ми завершимо нашу подорож зі створення гарних та інформативних графіків і навчимось їх правильно експортувати й інтегрувати в документи. Якщо раніше ви сумнівалися, як вразити свого керівника не лише ретельно перевіреною аналітикою, а й тим, що ваші графіки можна вставити не лише в PowerPoint, але й на HTML-сторінку, то це ваш щасливий день!

Основні формати експорту в Plotly

Plotly підтримує кілька форматів експорту:

  • HTML — для створення інтерактивних графіків, які можна відкрити у браузері.
  • PNG, JPG, PDF, SVG — для створення статичних зображень високої якості.
  • JSON — для зберігання графіків у вигляді JSON-структур, що є корисним для передачі даних між системами.

Способи експорту

Почнемо з нашої зірки — Plotly. Ця бібліотека славиться своєю інтерактивністю та можливістю створення динамічних графіків. Але як поділитися ними зі світом, не передаючи всім ноутбук з встановленим Python під пахвою?

Plotly дозволяє експортувати графіки у форматі HTML. Це означає, що ви можете просто надіслати HTML-файл, і ваші колеги або клієнти зможуть взаємодіяти з графіком прямо у своєму браузері. Експорт здійснюється за допомогою методу plotly.io.write_html. Наприклад:

Python

import plotly.express as px
import plotly.io as pio

# Створюємо простий інтерактивний графік
df = px.data.iris()  # Датасет irises
fig = px.scatter(df, x="sepal_width", y="sepal_length", color="species")

# Експорт графіка в HTML
pio.write_html(fig, file='grafik.html', auto_open=True)

Параметр auto_open=True відкриває файл у браузері одразу після збереження - дуже зручно, якщо вам не терпиться показати свою роботу колегам або ви хочете переконатися, що все збережено правильно.

Експорт в інші формати

Для Plotly також доступний експорт у форматі зображень, таких як PNG, JPEG та SVG. Для цього використовується метод plotly.io.write_image. Тут нам знадобиться додаткова бібліотека kaleido, яка забезпечує рендеринг у форматі зображень:

Bash
pip install -U kaleido

Тепер експортуємо графік:

Python

# Експорт графіка в PNG
pio.write_image(fig, file='grafik.png')

# Експорт графіка в JPG
pio.write_image(fig, file='grafik.jpg', width=800, height=400, scale=2)

2. Включення графіків у звіти

Експортовані графіки можуть стати невід'ємною частиною ваших аналітичних звітів. Наприклад, експортований HTML-графік легко вставити у звіт, який ви плануєте представити на вебінарі або завантажити на корпоративний портал.

Вставка графіків у документи Word та PDF

Для інтеграції графіків у документи Microsoft Word або PDF достатньо зберегти графічне зображення у форматі PNG або JPG і потім вставити його як зображення. Файл можна просто перетягнути у документ або використовувати вбудовані функції Word і PDF-редакторів для вставки зображень.

Python

fig.write_image("sales_chart.pdf")

PDF зручно використовувати для друку і поширення графіків з високою якістю. При експорті графіків Plotly у формат PDF через kaleido потрібно просто вказати формат файлу.

Включення інтерактивних графіків у веб-документи

Інтерактивні графіки Plotly у форматі HTML можна вбудовувати у веб-сторінки. Це особливо корисно для онлайн-звітів та веб-документації. Для вбудови графіка можна або використовувати посилання на HTML-файл, або вставляти HTML-код безпосередньо у веб-сторінку.

Для включення інтерактивних графіків можна використовувати iframe на HTML-сторінці:

HTML

<iframe src="grafik.html" width="800" height="600"></iframe>

Таким чином, графік буде вбудований у вашу сторінку і буде доступний для взаємодії.

Експорт графіка у JSON

Формат JSON підходить для зберігання графіків у вигляді даних, які можна передавати між системами або зберігати для подальшого редагування. JSON-файл можна потім імпортувати назад у Plotly і відобразити.

Python

# Збереження графіка у JSON
fig.write_json("sales_chart.json")

Вибір форматів і параметрів для різних типів звітів

  • Для друку і публікацій: Використовуйте формат PNG або PDF з високою роздільною здатністю (dpi=300), щоб зображення залишалися чіткими та якісними.
  • Для веб-документів і презентацій: Формати PNG і SVG чудово підходять для веб-документів. SVG зручний для масштабованої графіки і не втрачає якості при збільшенні.
  • Для інтерактивних звітів: Зберігайте інтерактивні графіки Plotly у форматі HTML і вбудовуйте їх у веб-сторінки чи онлайн-документи.

3. Приклад

Тепер, щоб закріпити знання, давайте створимо інтерактивний графік, експортуємо його і інтегруємо у простий HTML-документ.

Створення графіка:

Python

import plotly.express as px
import plotly.io as pio

df = px.data.tips()
fig = px.bar(df, x='day', y='total_bill', color='sex', barmode='group')
pio.write_html(fig, file='tips_graph.html', auto_open=True)

Створення HTML-документа з графіком:

Збережемо наступний код як index.html:

HTML

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Звіт по чайових</title>
</head>
<body>
    <h1>Аналіз чайових по днях тижня</h1>
    <p>Нижче представлений інтерактивний графік, що показує сумарні чайові залежно від дня тижня та статі.</p>
    <iframe src="tips_graph.html" width="900" height="500" frameBorder="0"></iframe>
</body>
</html>

Перегляд документа:

Відкрийте index.html у браузері і насолоджуйтесь результатом! Ви щойно створили звіт, який можна надіслати вашим колегам або опублікувати в інтернеті.

Інтерактивні графіки — це не лише гарно, але й корисно для глибокого аналізу даних і презентації результатів. З їхньою допомогою ваші звіти стануть значно більш вражаючими і функціональними.

На завершення нашого вивчення Plotly і Matplotlib, хочеться зазначити, що правильна презентація інформації — це майже мистецтво. Використовуйте отримані знання, щоб ваші дані виглядали неперевершено і містили максимум користі. Удачі у створенні ваших власних шедеврів візуалізації!

Коментарі
ЩОБ ПОДИВИТИСЯ ВСІ КОМЕНТАРІ АБО ЗАЛИШИТИ КОМЕНТАР,
ПЕРЕЙДІТЬ В ПОВНУ ВЕРСІЮ