1. Eksport interaktywnych wykresów z Plotly
Gratuluję wszystkim miłośnikom wizualizacji i artystom wykresów za dotarcie do naszego ostatniego wykładu z wizualizacji danych. Dzisiaj zakończymy naszą podróż przez tworzenie pięknych i informacyjnych wykresów i nauczymy się je poprawnie eksportować oraz integrować do dokumentów. Jeśli kiedyś zastanawiałeś się, jak zaimponować swojemu szefowi nie tylko precyzyjną analizą, ale również tym, że twoje wykresy można wstawić nie tylko do PowerPointa, ale również do strony HTML, to jest twój szczęśliwy dzień!
Główne formaty eksportu w Plotly
Plotly obsługuje kilka formatów eksportu:
- HTML — do tworzenia interaktywnych wykresów, które można otworzyć w przeglądarce.
- PNG, JPG, PDF, SVG — do tworzenia statycznych obrazów wysokiej jakości.
- JSON — do przechowywania wykresów jako struktury JSON, co jest przydatne do przesyłania danych między systemami.
Metody eksportu
Zaczynamy od naszej gwiazdy — Plotly. Ta biblioteka znana jest z interaktywności i możliwości tworzenia dynamicznych wykresów. Ale jak podzielić się nimi ze światem, nie zabierając całego laptopa z zainstalowanym Pythonem?
Plotly umożliwia eksportowanie wykresów do HTML. To oznacza, że wystarczy wysłać plik HTML, aby twoi koledzy lub klienci mogli wchodzić w interakcję z wykresem bezpośrednio w swoich przeglądarkach. Eksport odbywa się za pomocą metody plotly.io.write_html. Na przykład:
import plotly.express as px
import plotly.io as pio
# Tworzymy prosty interaktywny wykres
df = px.data.iris() # Dataset "irises"
fig = px.scatter(df, x="sepal_width", y="sepal_length", color="species")
# Eksport wykresu do HTML
pio.write_html(fig, file='grafik.html', auto_open=True)
Parametr auto_open=True otwiera plik w przeglądarce zaraz po zapisaniu - bardzo wygodne, jeśli nie możesz się doczekać, aby pokazać swoją pracę kolegom lub upewnić się, że wszystko zostało poprawnie zapisane.
Eksport do innych formatów
Plotly obsługuje również eksport do formatów obrazów takich jak PNG, JPEG i SVG. Do tego używa się metody plotly.io.write_image. Będzie potrzebna dodatkowa biblioteka kaleido, która umożliwia renderowanie w formacie obrazów:
pip install -U kaleido
Teraz eksportujemy wykres:
# Eksport wykresu do PNG
pio.write_image(fig, file='grafik.png')
# Eksport wykresu do JPG
pio.write_image(fig, file='grafik.jpg', width=800, height=400, scale=2)
2. Włączanie wykresów do raportów
Wyeksportowane wykresy mogą stać się nieodłączną częścią twoich raportów analitycznych. Na przykład, wyeksportowany wykres HTML łatwo można wstawić do raportu, który planujesz zaprezentować na webinarium lub opublikować na portalu korporacyjnym.
Wstawianie wykresów do dokumentów Word i PDF
Aby zintegrować wykresy z dokumentami Microsoft Word lub PDF, wystarczy zapisać wykres w formacie PNG lub JPG i następnie wstawić go jako obraz. Plik można po prostu przeciągnąć do dokumentu lub użyć wbudowanych funkcji Worda i edytorów PDF do wstawiania obrazów.
fig.write_image("sales_chart.pdf")
PDF jest wygodny do drukowania i dystrybucji wykresów w wysokiej jakości. Przy eksporcie wykresów Plotly do PDF przez kaleido wystarczy po prostu określić format pliku.
Włączanie interaktywnych wykresów do dokumentów webowych
Interaktywne wykresy Plotly w formacie HTML można osadzić na stronach internetowych. Jest to szczególnie przydatne dla raportów online i dokumentacji webowej. Aby wstawić wykres, możesz albo użyć linku do pliku HTML, albo osadzić kod HTML bezpośrednio na stronie.
Aby włączyć interaktywne wykresy, możesz użyć iframe na stronie HTML:
<iframe src="grafik.html" width="800" height="600"></iframe>
Dzięki temu wykres będzie osadzony na twojej stronie i dostępny do interakcji.
Eksport wykresu do JSON
Format JSON nadaje się do przechowywania wykresów jako danych, które można przesyłać między systemami lub przechowywać do późniejszej edycji. Plik JSON można następnie zaimportować z powrotem do Plotly i wyświetlić.
# Zapis wykresu do JSON
fig.write_json("sales_chart.json")
Wybór formatów i parametrów dla różnych typów raportów
- Do druku i publikacji: Użyj formatu PNG lub PDF z wysoką rozdzielczością (
dpi=300), aby obrazy pozostały ostre i wysokiej jakości. - Do dokumentów webowych i prezentacji: Format PNG i SVG doskonale nadają się do dokumentów webowych. SVG jest wygodny dla grafiki skalowalnej i nie traci jakości przy powiększaniu.
- Do interaktywnych raportów: Zachowaj interaktywne wykresy Plotly w formacie HTML i osadzaj je na stronach webowych lub w dokumentach online.
3. Przykład
Teraz, aby utrwalić wiedzę, stwórzmy interaktywny wykres, wyeksportujmy go i zintegrowajmy w prostej stronie HTML.
Tworzenie wykresu:
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)
Tworzenie strony HTML z wykresem:
Zapiszmy poniższy kod jako index.html:
<!DOCTYPE html>
<html lang="pl">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Raport dotyczący napiwków</title>
</head>
<body>
<h1>Analiza napiwków w podziale na dni tygodnia</h1>
<p>Poniżej przedstawiono interaktywny wykres ilustrujący sumaryczne napiwki w zależności od dnia tygodnia i płci.</p>
<iframe src="tips_graph.html" width="900" height="500" frameBorder="0"></iframe>
</body>
</html>
Wyświetlanie dokumentu:
Otwórz index.html w przeglądarce i podziwiaj efekt! Właśnie stworzyłeś raport, który można przesłać twoim kolegom lub opublikować w internecie.
Interaktywne wykresy to nie tylko piękne, ale także użyteczne narzędzie do głębokiej analizy danych i prezentowania wyników. Dzięki nim twoje raporty staną się znacznie bardziej imponujące i wielofunkcyjne.
Podsumowując naukę o Plotly i Matplotlib, warto zauważyć, że odpowiednia prezentacja informacji to niemal sztuka. Wykorzystaj zdobytą wiedzę, aby twoje dane wyglądały niesamowicie i dostarczały maksimum wartości. Powodzenia w tworzeniu własnych arcydzieł wizualizacyjnych!
GO TO FULL VERSION