Python に基づく流行データの視覚化 (matplotlib、pyecharts ダイナミック マップ、大画面視覚化)

Python に基づく疫病データの視覚化

学習に関する質問がある場合は、私を WeChat に追加してコミュニケーションをとることができます。bmt1014

1. プロジェクト需要分析

1.1 背景

2020年、新型コロナウイルス感染症が世界的に流行し、人々の健康と生命に深刻な脅威をもたらし、各国・地域の感染状況にも大きな注目が集まりました。流行データの監視と分析は、流行の予防と制御、および科学的な予防と制御にとって非常に重要です。このレポートは、疫病データに基づいて、視覚的なデータ分析を通じて世界および国内の疫病状況の発展傾向と変化を提示し、人々が疫病の実際の状況をより直感的かつ包括的に理解するのに役立ち、社会全体に良い役割を果たします。政府と国民に伝染病の予防、管理、処分の参考となるものを提供する。

1.2 データソース

このデータは世界保健機関 (WHO) の Web サイトから取得したもので、特定の日付の時点での世界中の新型コロナウイルス感染症の感染者数と死亡者数に関する統計が含まれています。
データ特徴の説明:
Date_reported: 報告日
Country_code: 国/地域の略語コード
Country: 国/地域名
WHO_region: WHO 地域
New_cases: 新規確認症例数
Cumulative_cases: 確認症例の累計数
New_deaths: 新規死亡者数
Cumulative_deaths: 累計感染者数死亡数
これらの変数は、世界的な新型コロナウイルス感染症の発生に関する基本的な統計を提供します。各国ごとに、報告日、新規感染者数と死亡者数の累計および日次に関する詳細な統計が提供されており、
データの一部を図に示します。
ここに画像の説明を挿入

1.3 具体的な目標

[タスク 1] 基本的な地図を使用して中国の流行状況を表示する
[タスク 2] 折れ線グラフを使用して武昌諸国の新規感染者数の傾向を表示する
[タスク 3] アニメーションを使用して新規感染者数トップ 10 を表示する毎日
[タスク 4] リング チャートを使用して 7 大陸
表示

2.全体のデザイン

2.1 本実験で使用した環境

(1) Windows10 システム
(2) PyCharm Community Edition 2022.2.1 ソフトウェア
(3) Python バージョン: 3.8
(4) Anaconda および Jupyter Notebook

2.2 可視化スキーム

1. タスク 1、2、および 3 では、matplotlib 視覚化ライブラリを使用して、主にヒストグラム、折れ線グラフ、棒グラフ、リング グラフなどの流行データを表示します。
2. タスク 4、5、および 6 には、主にダイナミック マップ、円グラフ、ヒストグラム、および大画面視覚表示用のその他の基本グラフィックスを含む pyecharts 視覚化ライブラリを使用します。

3. 詳細設計

タスク 1 では、基本的な地図を使用して中国の感染状況を示します

(1) 採用する技術
motplotlib のヒストグラム描画機能を利用し、中国の流行状況をヒストグラム表示し、データ観察を容易にするため、中国各省の感染者数を棒グラフで表示することを提案します。中国全体の感染者数と死亡者数のヒストグラム (
2) タスク 1 ソース プログラム
ここに画像の説明を挿入
ここに画像の説明を挿入

タスク 2 折れ線グラフを使用して、武昌国内の新規感染者数の傾向を表示する

(1) 使用する技術
motplotlib のヒストグラム描画機能を利用して、武昌諸国の流行状況の傾向折れ線グラフを表示する予定であり、データの観察を容易にするために、流行傾向を 5 つの色と割引を使用して表示します。
(2) ソースプログラム
ここに画像の説明を挿入

タスク 3 アニメーションを使用して、毎日の新規感染者数の上位 10 か国を表示する

(1) 採用する技術
このコードでは主にPandasライブラリを使用してデータの加工・分析を行い、Matplotlibライブラリを使用してグラフを描画し、Matplotlibアニメーション機能を使用してデータの変化過程を表示し、datetimeライブラリを使用しています。日付と時刻の処理に使用され、文字列フォーマット関数はデータを指定された文字列フォーマットにフォーマットします。
(2) ソースプログラム
ここに画像の説明を挿入
ここに画像の説明を挿入

タスク 4 では、リング チャートを使用して 7 大陸の流行状況を示します。

サブタスク 1: リング チャートを使用して 7 大陸の流行状況を表示する

(1) 採用する技術
このコードでは、主にPandasライブラリを使用してデータの加工と分析を行い、Matplotlibライブラリを使用してチャートを描画し、Matplotlibのサブグラフ関数とリング関数を使用して複数のリンググラフを表示し、辞書とLambda関数を使用します。同時にデータ処理を実行し、文字列フォーマット関数がデータを指定された文字列フォーマットにフォーマットします。
(2) ソースプログラム
ここに画像の説明を挿入
ここに画像の説明を挿入

サブタスク 2: ローズ ダイアグラムを使用して、世界上位 10 か国の死亡率のローズ ダイアグラムを表示します。

(1) 採用する技術 データの
加工・分析にはPandasライブラリを使用、チャート描画にはpyechartsライブラリを使用、ナイチンゲールローズ図の描画にはpyechartsライブラリを使用、set_series_optsによる扇型属性の設定を予定メソッドを使用し、最後に視覚的なチャートを生成します。描画処理では、内半径と外半径の比率、チャートの中心位置、ナイチンゲールローズ図の種類などの設定など、pyecharts ライブラリが提供するオプションも使用されます。 (2) ソース
プログラム
ここに画像の説明を挿入
ここに画像の説明を挿入
ここに画像の説明を挿入

タスク 5: 動的マップを使用して、世界の毎月の新規人口を表示する

(1) 採用する技術
主にマップマップとタイムライン時間軸の2種類のチャートを用いて、各国の新規人口を地図上に表示し、時間軸によるデータの動的な表示機能を実現します。
コードでは、pandas ライブラリを使用して CSV ファイルを読み取り、処理し、さらに numpy ライブラリ、datetime ライブラリ、コレクション ライブラリ、matplotlib ライブラリなどを使用してデータを処理し、グラフを描画します。pyecharts ライブラリを使用して Map とタイムライン グラフを作成し、対応するパラメーターを設定し、最後にインタラクティブな HTML Web ページを生成します。
具体的な実装プロセスは、まず CSV ファイルを読み取り、不要な列情報を削除し、データをクリーンアップして処理して、各国の月ごとの新規診断者数の情報を取得し、その後、マップ カテゴリとタイムライン カテゴリを使用します。 pyecharts ライブラリ内 この関数はマップとタイムライン チャートを作成し、add() メソッドを通じて対応するデータ シーケンスを追加し、add_schema() メソッドと set_global_opts() メソッドによる制御用の関連グローバル パラメータを設定します。最後に、これらを時間軸オブジェクトに結合して、ダイナミック チャートの表示効果を実現します。
(2) ソースプログラム
ここに画像の説明を挿入

タスク 6: 大画面のビジュアル マッピング分析を使用する

(1) 採用される技術は、
主に流行データのさまざまな次元と特徴をヒストグラム、マップ、円グラフ、折れ線グラフ、ファネル チャートなどのさまざまな形式で表示します。まず、パンダ ライブラリを通じて次の 3 つの CSV ファイルを読み取ります。毎日の新しいデータ: 新規に確認された症例数、累積確認症例数、WHO が発表した世界的な流行データ。次に、pyecharts ライブラリを通じて 6 つのチャートの視覚化が実現されます。

4. 走行結果と結果分析

タスク 1 では、基本的な地図を使用して中国の感染状況を示します

(1) 走行結果
ここに画像の説明を挿入

(2) 結果分析
棒グラフは、1月26日の全国各省の感染者数を示しています。この日は湖北省の感染者数が多く、その他の地域の感染者数が多かったことがわかります。
(1) 運用実績
ここに画像の説明を挿入

(2) 結果の分析
2 月の中国の流行状況を積み上げ縦棒グラフでヒストグラムを作成し、青色の部分が感染者数、オレンジ色の部分が死亡者数を表します。データを見ると感染者数は日に日に増加しており、その増加幅は比較的大きい。死亡者数のわずかな増加は、2月に私の国での流行の拡大がうまく制御されていなかったが、死亡者数は十分に制御されていたことを示しています。

タスク 2 折れ線グラフを使用して、武昌国内の新規感染者数の傾向を表示する

(1) 走行結果
ここに画像の説明を挿入

(2) 結果の分析
図は、2020年1月22日から2020年3月22日までの武昌諸国における流行の新規確認症例数の推移を示しています。この図は、1月から3月までの期間に中国での新規感染者数の増加が最も大きかったことを示している。残りの4カ国は増加が緩やかだったが、2020年3月8日以降に急速に増加し始めた。

タスク 3 アニメーションを使用して、毎日の新規感染者数の上位 10 か国を表示する

(1) 走行結果
ここに画像の説明を挿入
ここに画像の説明を挿入

(2) 結果の分析
この図は、2020年3月20日と2020年3月22日の世界の新規感染者数の多い上位10か国を示したものであり、感染傾向が徐々に増加していることがわかる。

タスク 4 では、リング チャートを使用して 7 大陸の流行状況を示します。

サブタスク 1: リング チャートを使用して 7 大陸の流行状況を表示する
(1) 運用結果
ここに画像の説明を挿入

(2) 結果の分析
この図は、7 大陸の国々の流行状況を、新規感染率、回復率、死亡率とともに環状図で示したものです。アジア諸国の回復率は他の大陸に比べて相対的に高いことがわかります
サブタスク 2: バラグラフは
死亡率上位 10 か国の結果を示しています (1)

(2) 結果分析
この図は世界で死亡率の高い国トップ10を示したものであり、このデータは2020年3月時点のものであるため、中国の死亡率が相対的に高いことが分かる。

タスク 5 では、動的マップを使用して、世界の新規人口を毎月表示します。

(1) 走行結果
ここに画像の説明を挿入

(2) 結果の分析
このダイナミックマップを通じて、2020 年を通じて世界各国で確認された新型コロナウイルス感染症の新規感染者数の傾向を明確に観察できます。地図は月ごとに表示されるため、月ごとに新規感染者が多い国と新規感染者が少ない国を確認したり、大流行が深刻な一部の国で流行が緩和したかどうかを確認できます。さらに、対応する国にマウスを置くと、その国で確認された新規感染者の具体的な数を表示することもできます。

タスク 6 では、大画面のビジュアル マッピング分析を使用します。

(1) 走行結果
ここに画像の説明を挿入

(2) 結果分析
新規感染者数ヒストグラム(時間軸):2020.01.22から2020.03.33までの毎日の新規感染者数を表示し、3日ごとに新規確認者数を集計したグラフです。このグラフを見ると、新型コロナウイルスの感染拡大の速度と、感染のピークがいつ起こるかがわかります。
確認された感染者数、死亡者数、回復者の累積数のヒストグラム: このグラフは、さまざまな国での確認された感染者数、死亡者数、回復者数の累積数を示すために使用されます。さまざまな国のデータを比較することで、世界的な流行におけるこれらの国の貢献を知ることができます。
国別の新規感染者数のマップ (時間軸): このグラフは、2020 年 1 月 2 日以降の毎月の世界の新規感染者数を示しています。この地図を通じて、流行の発生以来、世界中で新規感染者数が拡大しており、その傾向が比較的明白であり、ヨーロッパと米国の新規感染者数が他国よりも大幅に多いことがわかります。それはアジアで。

5. プロジェクトの結論と提案

新型コロナウイルス感染症流行データの処理と分析を通じて、次の結論が導き出されます: 新型
コロナウイルス感染症流行データセットは、Python のデータ視覚化ライブラリ Pyecharts を使用して視覚化されます。基本的なグラフ、折れ線グラフ、移動グラフ、円グラフ、地図などのさまざまな表示ツールを通じて、中国、5つの常駐国、7大陸、および世界の新規感染者数の流行状況を直感的に示します。月。
可視化を行う際には、さまざまなタスクに応じて適切な可視化方法を選択する必要があります。たとえば、中国の流行状況を示す場合はヒストグラムや積み上げグラフを使用でき、武昌市の新規感染者数の傾向を折れ線グラフで明確に示すことができます。ダイナミック マップを使用して毎日新たに診断されたトップ 10 国の数を表示すると、数値の変化と差異をより適切に反映できます。リング チャートを使用して 7 大陸の流行状況を表示すると、異なる大陸の流行状況を一目で比較できます。世界の新しい月次データを表示するダイナミック マップ さまざまな国で新たに確認された感染者の空間分布を見つけるのは簡単です。

6. 大きな宿題の経験と経験

大規模なデータセットを扱う場合は、どのような情報を表現するかをよく考え、情報の種類に応じてニーズに合った可視化手法を選択する必要があります。
Pyecharts を使用すると、さまざまなタイプのグラフィックをすばやく作成できます。グラフィックは美しく、操作が簡単です。アマチュアがデータを分析するのに便利なだけでなく、データ サイエンティストが洞察を迅速に実証するのにも役立ちます。
生産プロセスでは、美しさとシンプルさを組み合わせるという原則に注意してください。チャート上の情報が多すぎると、視覚的に混乱する可能性があります。したがって、拡大縮小やラベルのサイズなどの詳細に注意して、視覚的なデザインが明確で理解しやすいものであることを確認してください。

ここに画像の説明を挿入

おすすめ

転載: blog.csdn.net/weixin_48676558/article/details/131144715