K dispozici je také možnost uložit návrh grafu offline, aby je bylo možné snadno exportovat. Existuje mnoho dalších funkcí, které velmi usnadňují používání knihovny:
- Ukládejte grafy pro offline použití jako vektorovou grafiku, která je vysoce optimalizována pro tiskové a publikační účely
- Exportované grafy jsou ve formátu JSON, nikoli ve formátu obrázku. Tento JSON lze snadno načíst do dalších vizualizačních nástrojů, jako je Tableau, nebo manipulovat s Pythonem nebo R
- Vzhledem k tomu, že exportované grafy mají povahu JSON, je prakticky velmi snadné tyto grafy vložit do webové aplikace
- Plotly je dobrou alternativou pro Matplotlib pro vizualizaci
Chcete-li začít používat balíček Plotly, musíme se zaregistrovat k účtu na výše zmíněném webu, abychom získali platné uživatelské jméno a klíč API, pomocí kterého můžeme začít používat jeho funkce. Naštěstí je pro Plotly k dispozici bezplatný cenový plán, pomocí kterého získáváme dostatek funkcí k vytváření grafů na úrovni produkce.
Instalace Plotly
Jen poznámka před spuštěním, pro tuto lekci můžete použít virtuální prostředí, které můžeme provést pomocí následujícího příkazu:
python -m virtualenv plotlyčíslo zdroje / bin / aktivovat
Jakmile je virtuální prostředí aktivní, můžete nainstalovat knihovnu Plotly ve virtuálním prostředí, aby bylo možné provést příklady, které vytvoříme dále:
pip install plotlyV této lekci využijeme Anacondu a Jupytera. Chcete-li jej nainstalovat na svůj počítač, podívejte se na lekci, která popisuje „Jak nainstalovat Anaconda Python na Ubuntu 18.04 LTS ”a sdílejte zpětnou vazbu, pokud narazíte na nějaké problémy. Chcete-li nainstalovat Plotly s Anacondou, použijte v terminálu z Anacondy následující příkaz:
conda install -c plotly plotlyVidíme něco takového, když provedeme výše uvedený příkaz:
Jakmile jsou všechny potřebné balíčky nainstalovány a hotové, můžeme začít používat knihovnu Plotly s následujícím příkazem importu:
importovat plotlyJakmile si na Plotly vytvoříte účet, budete potřebovat dvě věci - uživatelské jméno účtu a klíč API. Ke každému účtu může patřit pouze jeden klíč API. Udržujte jej tedy někde v bezpečí, jako kdybyste ho ztratili, budete muset klíč znovu vygenerovat a všechny staré aplikace používající starý klíč přestanou fungovat.
Ve všech programech Python, které píšete, uveďte pověření následujícím způsobem, abyste mohli začít pracovat s Plotly:
zápletka.nástroje.set_credentials_file (username = 'username', api_key = 'your-api-key')Začněme s touto knihovnou hned.
Začínáme s Plotly
V našem programu využijeme následující importy:
importovat pandy jako pdimportovat numpy jako np
importovat scipy jako sp
importovat plotly.spikleně jako py
Využíváme:
- Pandy pro efektivní čtení souborů CSV
- NumPy pro jednoduché tabulkové operace
- Scipy pro vědecké výpočty
- Plotly pro vizualizaci
U některých příkladů využijeme vlastní datové sady Plotly dostupné na Githubu. Nakonec si všimněte, že můžete offline režim povolit i pro Plotly, když potřebujete spouštět skripty Plotly bez připojení k síti:
importovat pandy jako pdimportovat numpy jako np
importovat scipy jako sp
importovat plotly
zápletka.offline.init_notebook_mode (připojeno = True)
importovat plotly.offline jako py
Chcete-li otestovat instalaci Plotly, můžete spustit následující příkaz:
tisk (plotly.__verze__)Vidíme něco takového, když provedeme výše uvedený příkaz:
Nakonec si stáhneme datovou sadu s Pandami a vizualizujeme ji jako tabulku:
importovat plotly.figure_factory jako ffdf = pd.read_csv ("https: // raw.githubusercontent.com / plotly / datové sady / master / school_
zisk.csv ")
tabulka = ff.create_table (df)
py.iplot (tabulka, název souboru = 'tabulka')
Vidíme něco takového, když provedeme výše uvedený příkaz:
Nyní postavme a Sloupcový graf vizualizace dat:
importovat plotly.graph_objs as godata = [jít.Pruh (x = df.Škola, y = df.Ženy)]
py.iplot (data, název souboru = 'women-bar')
Něco takového vidíme, když provedeme výše uvedený fragment kódu:
Když uvidíte výše uvedený graf s poznámkovým blokem Jupyter, zobrazí se vám různé možnosti Přiblížit / oddálit přes konkrétní část grafu, vybrat Box & Lasso a mnoho dalšího.
Seskupené pruhové grafy
Pomocí Plotly lze pro účely srovnání velmi snadno seskupit více sloupcových grafů. Využijeme k tomu stejný datový soubor a ukážeme variace přítomnosti mužů a žen na univerzitách:
ženy = jít.Pruh (x = df.Škola, y = df.Ženy)muži = jít.Pruh (x = df.Škola, y = df.Muži)
data = [muži, ženy]
layout = go.Rozvržení (barmode = "skupina")
fík = jdi.Obrázek (data = data, layout = layout)
py.iplot (obr)
Vidíme něco takového, když provedeme výše uvedený fragment kódu:
I když to vypadá dobře, štítky v pravém horním rohu nejsou správné! Opravme je:
ženy = jít.Pruh (x = df.Škola, y = df.Ženy, jméno = "Ženy")muži = jít.Pruh (x = df.Škola, y = df.Muži, jméno = "Muži")
Graf nyní vypadá mnohem popisněji:
Zkusme změnit barmode:
layout = go.Rozvržení (barmode = "relativní")fík = jdi.Obrázek (data = data, layout = layout)
py.iplot (obr)
Vidíme něco takového, když provedeme výše uvedený fragment kódu:
Výsečové grafy s Plotly
Nyní se pokusíme sestavit koláčový graf s Plotly, který stanoví základní rozdíl mezi procentem žen na všech univerzitách. Názvy univerzit budou štítky a skutečná čísla budou použita k výpočtu procenta z celku. Tady je fragment kódu pro stejné:
trace = jít.Koláč (štítky = df.Škola, hodnoty = df.Ženy)py.iplot ([trace], filename = 'pie')
Něco takového vidíme, když provedeme výše uvedený fragment kódu:
Dobrá věc je, že Plotly přichází s mnoha funkcemi přiblížení a oddálení a mnoha dalšími nástroji pro interakci s vytvořeným grafem.
Vizualizace dat časové řady s Plotly
Vizualizace dat časových řad je jedním z nejdůležitějších úkolů, na které narazíte, když jste datový analytik nebo datový inženýr.
V tomto příkladu použijeme samostatnou datovou sadu ve stejném úložišti GitHub, protože dřívější data neobsahovala žádná data s konkrétním časem. Stejně jako zde budeme v průběhu času vykreslovat variace tržních akcií společnosti Apple:
finanční = pd.read_csv ("https: // raw.githubusercontent.com / plotly / datové sady / hlavní /finanční grafy-jablko.csv ")
data = [jít.Bodový (x = finanční.Datum, y = finanční ['AAPL.Zavřít'])]
py.iplot (data)
Vidíme něco takového, když provedeme výše uvedený fragment kódu:
Jakmile najedete myší nad variační čáru grafu, můžete zadat konkrétní podrobnosti bodu:
Můžeme použít tlačítka přiblížení a oddálení, abychom viděli také data specifická pro každý týden.
Graf OHLC
K zobrazení variace entity v časovém rozpětí se používá graf OHLC (Open High Low close). To lze snadno vytvořit pomocí PyPlot:
z datetime import datetimeopen_data = [33.0, 35.3, 33.5, 33.0, 34.1]
high_data = [33.1, 36.3, 33.6, 33.2, 34.8]
low_data = [32.7, 32.7, 32.8, 32.6, 32.8]
close_data = [33.0, 32.9, 33.3, 33.1, 33.1]
data = [datetime (rok = 2013, měsíc = 10, den = 10),
datum a čas (rok = 2013, měsíc = 11, den = 10),
datum a čas (rok = 2013, měsíc = 12, den = 10),
datum a čas (rok = 2014, měsíc = 1, den = 10),
datetime (rok = 2014, měsíc = 2, den = 10)]
trace = jít.Ohlc (x = data,
open = open_data,
high = high_data,
low = low_data,
close = close_data)
data = [trasování]
py.iplot (data)
Zde jsme poskytli několik ukázkových datových bodů, které lze odvodit následovně:
- Otevřená data popisují sazbu akcií při otevření trhu
- Vysoká data popisují nejvyšší míru zásob dosaženou za dané časové období
- Nízká data popisují nejnižší míru zásob dosaženou za dané časové období
- Závěrečná data popisují konečnou míru zásob, když byl daný časový interval u konce
Nyní spustíme fragment kódu, který jsme poskytli výše. Vidíme něco takového, když provedeme výše uvedený fragment kódu:
Jedná se o vynikající srovnání toho, jak vytvořit časové srovnání entity s vlastní a porovnat ji s jejími vysokými a nízkými úspěchy.
Závěr
V této lekci jsme se podívali na další vizualizační knihovnu, Plotly, která je vynikající alternativou k Matplotlib v aplikacích produkční třídy, které jsou vystaveny jako webové aplikace, Plotly je velmi dynamická a na funkce bohatá knihovna, kterou lze použít pro produkční účely, takže je to rozhodně dovednost, kterou musíme mít pod opaskem.
Najděte všechny zdrojové kódy použité v této lekci na Githubu. Sdělte nám svůj názor na lekci na Twitteru s @sbmaggarwal a @LinuxHint.