Datavitenskap

Python Plotly Tutorial

Python Plotly Tutorial
Plotly er et analyseselskap kjent for å utvikle analyse-, statistikk- og grafverktøy i sanntid for nettbasert applikasjon og frittstående Python-skript. I denne leksjonen vil vi se på grunnleggende eksempler med Plotly og bygge opp enkle og intuitive dataserier som vil være 100% interaktive og likevel enkle å designe. Disse grafene kan brukes i presentasjoner da de er fullt interaktive og klare til å leke med.

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:

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 plottelig
kilde 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 plott

Vi 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 plotly

Vi 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 plott

Nå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 pd
importer nummen som np
importer scipy som sp
importer plott.plottet som py

Vi bruker:

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 pd
importer 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 ff
df = 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 go
data = [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 datetime
open_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:

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.

Mus Kartlegg museknappene på en annen måte for annen programvare med X-Mouse Button Control
Kartlegg museknappene på en annen måte for annen programvare med X-Mouse Button Control
Kanskje du trenger et verktøy som kan gjøre at musens kontroll endres med hvert program du bruker. Hvis dette er tilfelle, kan du prøve et program som...
Mus Microsoft Sculpt Touch Wireless Mouse Review
Microsoft Sculpt Touch Wireless Mouse Review
Jeg har nylig lest om Microsoft Sculpt Touch trådløs mus og bestemte meg for å kjøpe den. Etter å ha brukt den en stund bestemte jeg meg for å dele mi...
Mus AppyMouse Pekeplate og musepeker på skjermen for Windows-nettbrett
AppyMouse Pekeplate og musepeker på skjermen for Windows-nettbrett
Nettbrettbrukere savner ofte musepekeren, spesielt når de bruker vanlige bærbare datamaskiner. Berøringsskjermen Smarttelefoner og nettbrett har mange...