Det er også et alternativ å lagre en grafdesign frakoblet, slik at de enkelt kan eksporteres. Det er mange andre funksjoner som gjør bruken av biblioteket veldig enkelt:
- Lagre grafer for offline bruk som vektorgrafikk som er svært optimalisert for utskrifts- og publikasjonsformål
- Kartene som eksporteres er i JSON-format og ikke i bildeformat. Denne JSON kan lastes inn i andre visualiseringsverktøy som Tableau enkelt eller manipuleres med Python eller R
- Ettersom grafene som eksporteres er av JSON-natur, er det praktisk talt veldig enkelt å legge inn disse diagrammene i et webapplikasjon
- Plotly er et godt alternativ for Matplotlib for visualisering
For å begynne å bruke Plotly-pakken, må vi registrere oss for en konto på nettstedet som er nevnt tidligere for å få et gyldig brukernavn og API-nøkkel som vi kan begynne å bruke funksjonene til. Heldigvis er det en gratis prisplan tilgjengelig for Plotly som vi får nok funksjoner til å lage produksjonsgradskart.
Installere Plotly
Bare et notat før du starter, kan du bruke et virtuelt miljø for denne leksjonen som vi kan lage med følgende kommando:
python -m virtualenv plotteligkilde numpy / bin / aktivere
Når det virtuelle miljøet er aktivt, kan du installere Plotly-biblioteket i det virtuelle miljøet slik at eksempler vi oppretter neste kan utføres:
pip installere plottVi vil bruke Anaconda og Jupyter i denne leksjonen. Hvis du vil installere den på maskinen din, kan du se på leksjonen som beskriver “Slik installerer du Anaconda Python på Ubuntu 18.04 LTS ”og del din tilbakemelding hvis du har problemer. For å installere Plotly med Anaconda, bruk følgende kommando i terminalen fra Anaconda:
conda install -c plotly plotlyVi ser noe slikt når vi utfører kommandoen ovenfor:
Når alle nødvendige pakker er installert og ferdig, kan vi komme i gang med å bruke Plotly-biblioteket med følgende importuttalelse:
importer plottNår du har opprettet en konto på Plotly, trenger du to ting - brukernavnet til kontoen og en API-nøkkel. Det kan bare være en API-nøkkel som tilhører hver konto. Så hold det trygt et sted som om du mister det, du må regenerere nøkkelen og alle gamle applikasjoner som bruker den gamle nøkkelen, slutter å fungere.
I alle Python-programmene du skriver, nevn legitimasjonen som følger for å begynne å jobbe med Plotly:
plottelig.verktøy.set_credentials_file (brukernavn = 'brukernavn', api_key = 'din-api-nøkkel')La oss komme i gang med dette biblioteket nå.
Komme i gang med Plotly
Vi vil bruke følgende import i programmet vårt:
importer pandaer som pdimporter nummen som np
importer scipy som sp
importer plott.plottet som py
Vi bruker:
- Pandaer for effektiv lesing av CSV-filer
- NumPy for enkle tabelloperasjoner
- Scipy for vitenskapelige beregninger
- Plottelig for visualisering
For noen av eksemplene vil vi gjøre bruk av Plotlys egne datasett tilgjengelig på Github. Til slutt, vær oppmerksom på at du også kan aktivere offline-modus for Plotly når du trenger å kjøre Plotly-skript uten nettverkstilkobling:
importer pandaer som pdimporter nummen som np
importer scipy som sp
importer plott
plottelig.offline.init_notebook_mode (connected = True)
importer plott.offline som py
Du kan kjøre følgende uttalelse for å teste Plotly-installasjonen:
utskrift (plott.__versjon__)Vi ser noe slikt når vi utfører kommandoen ovenfor:
Vi vil endelig laste ned datasettet med Pandas og visualisere det som en tabell:
importer plott.figur_fabrikk som ffdf = pd.read_csv ("https: // rå.githubusercontent.com / plotly / datasett / master / school_
inntjening.csv ")
tabell = ff.create_table (df)
py.iplot (tabell, filnavn = 'tabell')
Vi ser noe slikt når vi utfører kommandoen ovenfor:
La oss nå lage en Søylediagram å visualisere dataene:
importer plott.graph_objs as godata = [gå.Bar (x = df.Skole, y = df.Kvinner)]
py.iplot (data, filnavn = 'kvinner-bar')
Vi ser noe slikt når vi utfører kodebiten ovenfor:
Når du ser over diagrammet med Jupyter-notatblokk, vil du bli presentert med forskjellige alternativer for Zoom inn / ut over en bestemt del av diagrammet, Box & Lasso select og mye mer.
Grupperte stolpediagrammer
Flere stolpediagrammer kan grupperes sammen for sammenligningsformål veldig enkelt med Plotly. La oss bruke samme datasett for dette og vise variasjon av menn og kvinner tilstedeværelse på universitetene:
kvinner = gå.Bar (x = df.Skole, y = df.Kvinner)menn = gå.Bar (x = df.Skole, y = df.Menn)
data = [menn, kvinner]
layout = gå.Oppsett (barmode = "gruppe")
fig = gå.Figur (data = data, layout = layout)
py.iplot (fig)
Vi ser noe slikt når vi utfører kodebiten ovenfor:
Selv om dette ser bra ut, er ikke etikettene øverst i høyre hjørne riktige! La oss rette dem:
kvinner = gå.Bar (x = df.Skole, y = df.Kvinner, navn = "Kvinner")menn = gå.Bar (x = df.Skole, y = df.Menn, navn = "Menn")
Grafen ser mye mer beskrivende ut nå:
La oss prøve å endre barmode:
layout = gå.Oppsett (barmode = "relativ")fig = gå.Figur (data = data, layout = layout)
py.iplot (fig)
Vi ser noe slikt når vi utfører kodebiten ovenfor:
Pai-diagrammer med Plotly
Nå skal vi prøve å lage et sektordiagram med Plotly som etablerer en grunnleggende forskjell mellom kvinneandelen over alle universitetene. Navnet på universitetene vil være merkelapper og de faktiske tallene vil bli brukt til å beregne prosentandelen av helheten. Her er kodebiten for det samme:
spor = gå.Pai (etiketter = df.Skole, verdier = df.Kvinner)py.iplot ([trace], filnavn = 'pie')
Vi ser noe slikt når vi utfører kodebiten ovenfor:
Den gode tingen er at Plotly kommer med mange funksjoner for å zoome inn og ut og mange andre verktøy for å samhandle med det konstruerte diagrammet.
Tidsseriedatavisualisering med Plotly
Å visualisere tidsseriedata er en av de viktigste oppgavene som kommer over når du er dataanalytiker eller dataingeniør.
I dette eksemplet vil vi bruke et eget datasett i samme GitHub-arkiv som de tidligere dataene ikke involverte tidsstemplede data spesifikt. Som her vil vi tegne variasjoner av Apples markedsaksjer over tid:
økonomisk = pd.read_csv ("https: // rå.githubusercontent.com / plotly / datasett / master /økonomi-diagrammer-eple.csv ")
data = [gå.Scatter (x = økonomisk.Dato, y = økonomisk ['AAPL.Lukk'])]
py.iplot (data)
Vi ser noe slikt når vi utfører kodebiten ovenfor:
Når du holder musen over grafvariasjonslinjen, kan du spesifisere punktdetaljer:
Vi kan bruke zoom inn og ut-knapper for å se data som er spesifikke for hver uke også.
OHLC-diagram
Et OHLC-diagram (Open High Low close) brukes til å vise variasjon av en enhet over et tidsrom. Dette er enkelt å konstruere med PyPlot:
fra datetime importer datetimeopen_data = [33.0, 35.3, 33.5, 33.0, 34.1]
høye data = [33.1, 36.3, 33.6, 33.2, 34.8]
lave_data = [32.7, 32.7, 32.8, 32.6, 32.8]
close_data = [33.0, 32.9, 33.3, 33.1, 33.1]
datoer = [datetime (år = 2013, måned = 10, dag = 10),
datetime (år = 2013, måned = 11, dag = 10),
datetime (år = 2013, måned = 12, dag = 10),
datetime (år = 2014, måned = 1, dag = 10),
datetime (år = 2014, måned = 2, dag = 10)]
spor = gå.Ohlc (x = datoer,
open = open_data,
høy = høy_data,
lav = lav_data,
close = close_data)
data = [spor]
py.iplot (data)
Her har vi gitt noen eksempler på datapunkter som kan utledes på følgende måte:
- De åpne dataene beskriver aksjekursen når markedet ble åpnet
- De høye dataene beskriver den høyeste aksjekursen som er oppnådd gjennom en gitt tidsperiode
- De lave dataene beskriver den laveste aksjekursen oppnådd gjennom en gitt tidsperiode
- Nærdataene beskriver sluttkursen når et gitt tidsintervall var over
La oss nå kjøre kodebiten vi ga ovenfor. Vi ser noe slikt når vi utfører kodebiten ovenfor:
Dette er utmerket sammenligning av hvordan man kan etablere tidssammenligning av en enhet med sin egen og sammenligne den med dens høye og lave prestasjoner.
Konklusjon
I denne leksjonen så vi på et annet visualiseringsbibliotek, Plotly, som er et utmerket alternativ til Matplotlib i produksjonsgrad applikasjoner som blir eksponert som webapplikasjoner, Plotly er et veldig dynamisk og funksjonsrikt bibliotek å bruke til produksjonsformål, så dette er definitivt en ferdighet vi trenger å ha under beltet.
Finn all kildekoden som brukes i denne leksjonen på Github. Del din tilbakemelding på leksjonen på Twitter med @sbmaggarwal og @LinuxHint.