Ako zakresliť údaje na mapu v Streamlit?

Ako Zakreslit Udaje Na Mapu V Streamlit



Reprezentácia údajov vo vizuálnej forme pomáha porozumieť a analyzovať údaje jednoduchším spôsobom. Na reprezentáciu údajov sa používajú rôzne knižnice Pythonu a jednou z takýchto knižníc je Streamlit. Streamlit sa univerzálne používa na vizualizáciu údajov v rôznych oblastiach, ako sú dátové vedy a strojové učenie na zobrazovanie údajov alebo výsledkov v prezentovateľnej forme.

V niektorých scenároch sa od používateľov vyžaduje, aby vykreslili alebo znázornili distribúciu údajov v regiónoch. V takýchto situáciách môžu používatelia vizualizovať údaje geograficky pomocou máp.







V tomto blogu si ukážeme, ako vykresliť dáta na mape v Streamlite.



Ako vykresliť údaje na mape v Streamlit?

Ak chcete geograficky vizualizovať údaje alebo vygenerované výsledky, zakreslite údaje na mapu v aplikácii Streamlit. Ak to chcete urobiť, postupujte podľa uvedených pokynov.



Krok 1: Prejdite do adresára projektu





Najprv premietnite adresár cez „ cd 'príkaz:

cd C:\Users\Dell\Documents\Streamlit Tutorial



Poznámka: Odporúča sa skúsiť pracovať vo virtuálnom prostredí, pretože sa to považuje za dobrý prístup a izoluje pip a všetky požadované moduly, balíky a knižnice. Virtuálne prostredie je možné nainštalovať a nastaviť prostredníctvom nášho prepojeného článku “ “.



Krok 2: Aktivujte virtuálne prostredie

Ďalej aktivujte virtuálne prostredie pomocou nižšie uvedeného príkazu:

streamlitenv\Scripts\activate


Vo vyššie uvedenom príkaze aktivujeme „ streamlitenv “virtuálne prostredie:


Krok 3: Nainštalujte Streamlit

Ďalej nainštalujte streamlit knižnicu Python pomocou daného príkazu:

pip Inštalácia prúdový



Nižšie uvedený výstup naznačuje, že sme nainštalovali streamlit v aktivácii virtualenv:


Krok 4: Zakreslenie údajov na mapu

Teraz vytvorte súbor programu s názvom „ Mapdata.py “. Vložte daný úryvok do súboru:

importovať zefektívniť ako sv
importovať pandy ako pd

st.title ( 'Vykresliť údaje na mape' )

map_data = { 'roky' : [ 53,958332 , 52,205276 , 51,509865 , 51,752022 , 52,633331 ] ,
'lon' : [ - 1,080278 , 0,119167 , - 0,118092 , - 1,257677 , - 1,133333 ] ,
'mesto' : [ 'York' , 'Cambridge' , 'Londýn' , 'Oxford' , 'Leicester' ] }

df = pd.DataFrame ( map_data )
st.písať ( df )
st.mapa ( údajov = df )


Popis vyššie uvedeného úryvku je nasledujúci:

    • Najprv importujte požadované knižnice cez „ importovať “. Na vykreslenie údajov na mape sme importovali „ pandy “ a „ prúdový “knižnice.
    • Ďalej zavolajte na „ názov() ” metóda na nastavenie názvu stránky:
    • Teraz vytvorte dátové rámce zadaním niektorých fiktívnych alebo statických údajov. Na ukážku sme špecifikovali zemepisnú šírku, dĺžku a názov mesta a uložili sme ich do „ map_data “premenná.
    • Ak chcete spojiť údaje v dátových rámcoch, použite knižnicu pandy volaním „ Dataframe() ” a tiež odovzdať premennú “map_data” ako parameter.
    • Na zobrazenie dátového rámca na webovej stránke použite osvetlené „ písať () “ a odovzdať dátový rámec “ df “ v zátvorkách.
    • Teraz zakreslite údaje na mapu pomocou „ mapa() “metóda streamlit. Tiež akceptuje rôzne parametre, ako napr. údajov ',' veľkosť ',' farba “ a „ priblížiť “. Pre vykresľovanie údajov na mape sme prešli „ údajov parameter “.

Krok 5: Spustite program v Streamlit

Na spustenie programu použite „ streamlit spustiť “príkaz. Pre ilustráciu sme spustili novovytvorený „ Mapdata.py “:

streamlit spustiť Mapdata.py


Výstup ukazuje, že „ Mapdata.py “program sa spúšťa na “ localhost:8501 “:


Otvorte prehliadač, prejdite na „http://localhost:8501” and verify if the program is executing or not. The below results show the data in dataframes and plot it on the map:


Nasledujúci výstup zobrazuje geografickú reprezentáciu údajov vykreslením na mape:

Ako čítať údaje zo súboru CSV a vykresľovať ich na mapu v Streamlit?

Údaje je možné čítať aj z externých zdrojov, ako sú súbory alebo databázy. Ak chcete prečítať alebo načítať údaje zo súboru CSV a vykresliť ich na mape, postupujte podľa uvedených pokynov.

Krok 1: Prečítajte si údaje zo súboru CSV a zakreslite ich na mapu

Vytvorte súbor s názvom „ Demo1.py “ a skopírujte doň nižšie uvedený úryvok:

importovať pandy ako pd
importovať zefektívniť ako sv

st.title ( 'Vykresliť údaje na mape v službe Streamlit' )

df = pd.read_csv ( r 'C:\Users\Dell\Documents\Streamlit Tutorial\UKrecords.csv' )

st.dataframe ( df )
st.mapa ( údajov = df , zemepisnej šírky = 'roky' , zemepisná dĺžka = 'lng' )


Vysvetlenie vyššie uvedeného kódu je nasledovné:

    • Najprv importujte súbor „ pandy “ a „ prúdový “knižnice.
    • Nastavte názov stránky pomocou „ názov() “.
    • Teraz si prečítajte údaje zo súboru CSV pomocou „ read_csv “ metódu knižnice pandy a uložte údaje do „ df “premenná.
    • Ak chcete vykresliť extrahované údaje z CSV v dátovom rámci, použite „ dataframe() ” metóda streamlit a odovzdať premennú “df” v jej zátvorkách.
    • Ak chcete vykresliť údaje na mape, použite „ mapa() “. Tiež prejsť „ údajov ',' zemepisnej šírky “ a „ zemepisná dĺžka ” parametre v zátvorkách.
    • Tu je „ údajov “hodnota je nastavená ako “ df ',' zemepisnej šírky “ a „ zemepisná dĺžka ” hodnoty sú nastavené podľa ich príslušných stĺpcov v súbore CSV.

Krok 2: Spustite program

Ak chcete spustiť súbor programu na streamlit, použite „ prúdový beh ” spolu s názvom súboru:

streamlit spustiť Demo1.py



Teraz otvorte prehliadač a prejdite na „ http://localhost:8501 ” pre prístup na webovú stránku. Výstup zobrazuje extrahované údaje z CSV v streamlit dataframe a tiež ich zobrazuje na mape:


Nižšie uvedené výsledky zobrazujú regionálnu reprezentáciu údajov ich vykreslením na osvetlenej mape:


To je všetko o vykresľovaní údajov na mape v prúdovom svetle.

Záver

Ak chcete vykresliť údaje na mape v streamlit, najprv vytvorte súbor programu a importujte požadované moduly, pandy a streamlit do programu. Potom zadajte fiktívne údaje v programe a uložte ich do dátových rámcov pandas pomocou „ pd.Dataframe() “. Používatelia môžu tiež čítať údaje zo súboru CSV pomocou „ b “. Teraz zakreslite údaje na mapu cez „ st.map() “metóda streamlit. Tento blog ukázal, ako vykresliť údaje na mape v Streamlite.