İçindekiler:
- Gereçler
- Adım 1: Arka Uç Sürecini Anlamak(veritabanı)
- Adım 2: Programda Kullanılan Python Paketleri/kütüphaneleri
- 3. Adım: Colab'ı Kullanmak için Sürücünüzü Ayarlama
- 4. Adım: Programa Genel Bakış
- Adım 5: COVID-19 Kontrol Paneli | Bölüm 1
- 6. Adım: COVID-19 Kontrol Paneli | Bölüm 2
- 7. Adım: COVID-19 Kontrol Paneli | 3. Bölüm
- Adım 8: COVID-19 Kontrol Paneli | 4. Bölüm
- 9. Adım: COVID-19 Kontrol Paneli | Bölüm 5
- Adım 10: COVID-19 Kontrol Paneli | 6. Bölüm
- 11. Adım: COVID-19 Kontrol Paneli | 7. Bölüm
- Adım 12: COVID-19 Kontrol Paneli | Bölüm 8
- Adım 13: COVID-19 Kontrol Paneli | 9. Bölüm
- Adım 14: Vaka Sayısına Göre Ülkelerin (İlk 10) Listesi | COVID-19 Kontrol Paneli
- Adım 15: Bir Dünya Haritasındaki Toplam Vaka | COVID-19 Kontrol Paneli
- Adım 16: Sonuç
Video: Dünya Haritasında COVID19 Kontrol Paneli(Python Kullanarak): 16 Adım
2024 Yazar: John Day | [email protected]. Son düzenleme: 2024-01-30 13:17
Neredeyse hepimizin COVID19 hakkında çoğu bilgiyi bildiğimizi biliyorum.
Ve bu talimat, gerçek zamanlı verileri (vakaların) dünya haritasında çizmek için bir kabarcık haritası oluşturmakla ilgilidir.
Daha fazla kolaylık sağlamak için programı Github deposuna ekledim:
github.com/backshell/COVID19dashboard
Gereçler
Böyle bir sarf malzemesine gerek yoktur ve tüm bilgisayar programını GoogleColab Not Defteri aracılığıyla yapardık. Bu nedenle başlangıç için bir gmail hesabı yeterli olacaktır.
Colab Notebooks / Colaboratory, makine öğrenimi eğitimi ve araştırmasını yaygınlaştırmaya yardımcı olmak için oluşturulmuş bir Google araştırma projesidir. Kullanmak için kurulum gerektirmeyen ve tamamen bulutta çalışan bir Jupyter notebook ortamıdır.
Ve makinenizde HİÇBİR kurulum gerekmez.
Adım 1: Arka Uç Sürecini Anlamak(veritabanı)
Her yazılım programının çoğu arka uçtan veri alır ve sonuç biçimlendirilir ve ön uçta yayınlanır. Ve bu özel program için COVID19 gerçek verilerine ihtiyacımız olacak.
G. W. C. Whiting Mühendislik Okulu, github hesabı aracılığıyla COVID19 istatistiklerini yayınlıyor:
github.com/CSSEGISandData
Başlangıcından bugüne kadar, COVID19 ülke bazında istatistikler havuzda yayınlanmaktadır.
Bu yüzden onların. CSV formatındaki dosyalarını (ülkelerin sıra bazında bölümlere ayrılmış) kullanır ve verileri dünya haritasına çizerdik.
Adım 2: Programda Kullanılan Python Paketleri/kütüphaneleri
Aşağıda, kullanacağımız python paketlerinin ve kitaplıklarının listesi bulunmaktadır. Her birinin amacına genel bir bakış vereyim.
dizi:
NumPy, Python programlama dili için büyük, çok boyutlu diziler ve matrisler için destek ve bu diziler üzerinde çalışacak geniş bir üst düzey matematiksel işlevler koleksiyonu ekleyen bir kitaplıktır.
pandalar:
pandas, veri işleme ve analizi için Python programlama dili için yazılmış bir yazılım kütüphanesidir.
matplotlib.pyplot:
pyplot temel olarak etkileşimli grafikler ve basit programatik arsa oluşturma durumları için tasarlanmıştır
arsa.express:
Plotly Express, yeni bir üst düzey Python görselleştirme kitaplığıdır. Karmaşık grafikler için basit sözdizimi.
yaprak:
folium, Python'da manipüle edilen verileri etkileşimli bir broşür haritasında görselleştirmeyi kolaylaştırır.
plotly.graph_objects:
Grafiksel Python paketi, şekil olarak da adlandırılan veri yapılarıyla temsil edilen grafiksel şekilleri (yani çizelgeler, çizimler, haritalar ve diyagramlar) oluşturmak, işlemek ve işlemek için mevcuttur.
deniz doğumu:
Seaborn, matplotlib tabanlı bir Python veri görselleştirme kütüphanesidir. Çekici ve bilgilendirici istatistiksel grafikler çizmek için üst düzey bir arayüz sağlar.
ipywidget'lar:
ipywidget'lar, Jupyter not defterleri, JupyterLab ve IPython çekirdeği için etkileşimli HTML widget'larıdır. Etkileşimli widget'lar kullanıldığında not defterleri canlanır.
Bu programı tamamen Google Colab Not Defteri'nde çalıştıracağımız için bu paketleri yüklemek gerekli değildir (bunu bu talimat boyunca ortak çalışma olarak tutalım).
3. Adım: Colab'ı Kullanmak için Sürücünüzü Ayarlama
Drive'ınızda, not defterleriniz için bir klasör oluşturun.
Teknik olarak konuşursak, Colab'da çalışmaya başlamak istiyorsanız bu adım tamamen gerekli değildir. Ancak Colab sürücünüzde çalıştığından, çalışmak istediğiniz klasörü belirtmek kötü bir fikir değildir. Bunu, Google Drive'ınıza gidip “Yeni”yi tıklayıp ardından yeni bir klasör oluşturarak yapabilirsiniz.
Daha sonra burada colabnotebook oluşturmayı seçebilir veya doğrudan colab'de çalışmaya başlayabilir ve colab çalışması için oluşturulan sürücüdeki klasörü bağlayabilirsiniz.
Bu iyi bir uygulamadır, aksi takdirde oluşturduğumuz ortak çalışma, sürücümüzde dağınık görünebilir.
4. Adım: Programa Genel Bakış
Bu programda/not defterinde COVID-19 için aşağıdakileri oluşturuyor olacağız:
- Vaka Sayısına Göre Ülke Listesi
- Bir Dünya Haritasındaki Toplam Vaka
Adım 5: COVID-19 Kontrol Paneli | Bölüm 1
Kodunuzu Python 2'den Python 3'e bugün taşımak için geleceği kullanabilirsiniz ve yine de Python 2'de çalışmasını sağlayabilirsiniz.
Zaten Python 3 kodunuz varsa, bunun yerine, neredeyse hiçbir ekstra çalışma olmadan Python 2 uyumluluğu sunmak için geleceği kullanabilirsiniz.
gelecek, standart kitaplık yeniden düzenlemesini (PEP 3108) çeşitli mekanizmalardan biri aracılığıyla destekler ve taşınan çoğu standart kitaplık modülüne Python 2'deki Python 3 adları ve konumları altında erişilmesine izin verir.
6. Adım: COVID-19 Kontrol Paneli | Bölüm 2
Etkileşim işlevi (ipywidgets.interact), kodu ve verileri etkileşimli olarak keşfetmek için otomatik olarak kullanıcı arabirimi (UI) kontrolleri oluşturur. IPython'un widget'larını kullanmaya başlamanın en kolay yolu budur.
7. Adım: COVID-19 Kontrol Paneli | 3. Bölüm
display_html, bir nesnenin HTML temsillerini görüntüler. Yani, _repr_html_ gibi kayıtlı görüntüleme yöntemlerini arar ve varsa sonucu görüntüleyerek bunları çağırır.
Adım 8: COVID-19 Kontrol Paneli | 4. Bölüm
Paketlerin listesi (2. adımda açıklandığı gibi) programa aktarılır.
9. Adım: COVID-19 Kontrol Paneli | Bölüm 5
death_df = pd.read_csv('https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_deaths_global.csv')
onaylanan_df = pd.read_csv('https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_confirmed_global.csv')
recovery_df = pd.read_csv('https://raw.githubusercontent.com/CSSEGISandData/COVID-19/master/csse_covid_19_data/csse_covid_19_time_series/time_series_covid19_recovered_global.csv')
country_df = pd.read_csv('https://raw.githubusercontent.com/CSSEGISandData/COVID-19/web-data/data/cases_country.csv')
1. adımda açıklandığı gibi, verileri depodan.csv dosyası olarak okumak.
Adım 10: COVID-19 Kontrol Paneli | 6. Bölüm
df sütun adlarını küçük harfle yeniden adlandıracağız
11. Adım: COVID-19 Kontrol Paneli | 7. Bölüm
İl/eyaletten eyalete ve ülkeyi/bölgeden ülkeye değiştireceğiz
Adım 12: COVID-19 Kontrol Paneli | Bölüm 8
Toplam teyit edilen, ölüm ve iyileşen vaka sayısını hesaplayacağız.
Adım 13: COVID-19 Kontrol Paneli | 9. Bölüm
Aşağıdaki gibi daha önce 7. adımda belirli kitaplıkları içe aktardığımız için toplam istatistikleri HTML biçiminde görüntüleyeceğiz:
IPython.core.display'den içe aktarma ekranı, HTML
Adım 14: Vaka Sayısına Göre Ülkelerin (İlk 10) Listesi | COVID-19 Kontrol Paneli
incir = go. FigureWidget(layout=go. Layout())
FigureWidget işlevi, varsayılan x ve y eksenleriyle boş bir FigureWidget nesnesi döndürür. Jupyter etkileşimli pencere öğeleri, pencere öğelerinin nasıl yerleştirildiğini etkileyen bir dizi CSS özelliğini ortaya çıkaran bir düzen özelliğine sahiptir.
pd. Veri Çerçevesi
sonucun doldurulması için üç renkli arka plana sahip sözlük kullanarak veri çerçevesi oluşturur.
def show_latest_cases(TOP)
değerleri onaylanmış azalan düzende sıralar.
etkileşim(show_latest_cases, TOP='10')
Etkileşim işlevi (ipywidgets.interact), kodu ve verileri etkileşimli olarak keşfetmek için otomatik olarak kullanıcı arabirimi (UI) kontrolleri oluşturur.
ipywLayout = widgets. Layout(border='solid 2px green')
sonucun görüntülenmesi için 2 piksel genişliğinde yeşil renkli çizgilerden oluşan bir kenarlık oluşturur.
Adım 15: Bir Dünya Haritasındaki Toplam Vaka | COVID-19 Kontrol Paneli
world_map = folium. Map(konum=[11, 0], fayans="cartodbpositron", zoom_start=2, max_zoom = 6, min_zoom = 2)
Folium, tüm işler arka uçta yapılırken sizi haritalayan bir Tanrı gibi gösteren bir araçtır. Broşür.js adlı bir araç için bir Python sarmalayıcıdır. Temelde minimum talimat veriyoruz, JS arka planda bir sürü iş yapıyor ve çok güzel haritalar elde ediyoruz. Harika bir şey. Anlaşılır olması açısından, harita teknik olarak 'Broşür Haritası' olarak adlandırılır. Bunları Python'da çağırmanıza izin veren araca 'Folium' denir.
Folium, Python'da manipüle edilen verileri etkileşimli bir Leaflet haritasında görselleştirmeyi kolaylaştırır. Hem verilerin choropleth görselleştirmeleri için bir haritaya bağlanmasını hem de Vincent/Vega görselleştirmelerini harita üzerinde işaretleyiciler olarak geçirmesini sağlar.
i aralığında (0, len(confirmed_df))
Bir for döngüsünde, tüm onaylanmış durumları step9 formülasyonundan alacağız.
folium. Circle
Yinelemeli olarak daireler eklemek için folium. Circle() kullanarak bir kabarcık haritası oluşturuyoruz.
konum=[confirmed_df.iloc['lat'], Confirm_df.iloc['uzun'],
5. adımdaki teyit edilmiş vakaların onaylanan_df'sinden, her bir konum/ülke verisine karşılık gelen enlem ve boylam değerlerini çıkarıyoruz.
yarıçap=(int((np.log(confirmed_df.iloc[i, -1]+1.00001)))+0.2)*50000,
ülkelerdeki dünya haritasında kabarcık dairelerini çizmek için yarıçap nesnesi oluşturma.
color='kırmızı', fill_color='indigo',
kabarcıklı dairenin ana hatlarını kırmızı, iç alanını çivit mavisi yapmak.
ve son olarak, araç ipucu nesnesini kullanarak çevreleri world_map üzerinde çizme.
Adım 16: Sonuç
Ek şunları gösterir:
- Vaka Sayısına Göre Ülke Listesi
- Bir Dünya Haritasındaki Toplam Vaka
Önerilen:
ESP8266 ve OLED Kullanan Canlı Covid19 İzleyici - Gerçek Zamanlı Covid19 Panosu: 4 Adım
ESP8266 ve OLED Kullanan Canlı Covid19 İzleyici | Gerçek Zamanlı Covid19 Panosu: Techtronic Harsh Web Sitesini Ziyaret Edin: http://techtronicharsh.comHer yerde büyük bir Roman Corona Virüsü (COVID19) salgını var. Dünyadaki mevcut COVID-19 senaryosunu takip etmek gerekli hale geldi.Yani evde olmak p
Raspberry Pi ve AIS328DQTR Kullanarak Hızlandırmayı Python Kullanarak İzleme: 6 Adım
Raspberry Pi ve AIS328DQTR Kullanarak İvmeyi Python Kullanarak İzleme: İvme sonludur, bence bazı Fizik yasalarına göre. Karaya çıkan en hızlı yaratık, arada bir avını yakalamak için en yüksek hızını kullanır. NS
Python Merhaba Dünya!: 8 Adım
Python Merhaba Dünya!: Bu, PyCharm Community Edition kullanarak basit bir Python programı oluşturmaya yönelik adım adım bir eğitimdir
Selam Dünya! CloudX M633 Kullanarak LCD'de: 4 Adım
Selam Dünya! LCD'de CloudX M633 Kullanarak: Bu Eğitimde, LCD'de (Sıvı Kristal Ekran) göstereceğiz
PC'nizle Gerçek Dünya Cihazlarını Kontrol Edin: 15 Adım (Resimlerle)
PC'nizle Gerçek Dünya Cihazlarını Kontrol Edin: Bu Talimat, bir PC ve mikrodenetleyiciyi nasıl arayüzleyeceğinizi gösterir. Bu demo, bir potun veya herhangi bir analog girişin değerini algılayacak ve ayrıca bir servoyu kontrol edecektir. Servo dahil toplam maliyet 40 doların altında. Servo bir mikro anahtarı açar ve ardından m