728x90
연령대별 확진자
지난 포스팅에서 파싱한 JSON 데이터를 사용합니다.
각 Key별 7월 15일 까지의 누적된 수치입니다.
더보기
{
"0-9": {
"confcase": "222",
"confcaserate": "1.64",
"createdt": "2020-07-15 10:40:12.153",
"criticalrate": "0",
"death": "0",
"deathrate": "0.00",
"seq": "2026",
"updatedt": "null"
},
"10-19": {
"confcase": "753",
"confcaserate": "5.56",
"createdt": "2020-07-15 10:40:12.153",
"criticalrate": "0",
"death": "0",
"deathrate": "0.00",
"seq": "2025",
"updatedt": "null"
},
"20-29": {
"confcase": "3495",
"confcaserate": "25.79",
"createdt": "2020-07-15 10:40:12.153",
"criticalrate": "0",
"death": "0",
"deathrate": "0.00",
"seq": "2024",
"updatedt": "null"
},
"30-39": {
"confcase": "1640",
"confcaserate": "12.1",
"createdt": "2020-07-15 10:40:12.152",
"criticalrate": "0.12",
"death": "2",
"deathrate": "0.69",
"seq": "2023",
"updatedt": "null"
},
"40-49": {
"confcase": "1782",
"confcaserate": "13.15",
"createdt": "2020-07-15 10:40:12.152",
"criticalrate": "0.17",
"death": "3",
"deathrate": "1.04",
"seq": "2022",
"updatedt": "null"
},
"50-59": {
"confcase": "2411",
"confcaserate": "17.79",
"createdt": "2020-07-15 10:40:12.152",
"criticalrate": "0.62",
"death": "15",
"deathrate": "5.19",
"seq": "2021",
"updatedt": "null"
},
"60-69": {
"confcase": "1769",
"confcaserate": "13.05",
"createdt": "2020-07-15 10:40:12.152",
"criticalrate": "2.32",
"death": "41",
"deathrate": "14.19",
"seq": "2020",
"updatedt": "null"
},
"70-79": {
"confcase": "902",
"confcaserate": "6.66",
"createdt": "2020-07-15 10:40:12.152",
"criticalrate": "9.31",
"death": "84",
"deathrate": "29.07",
"seq": "2019",
"updatedt": "null"
},
"80 이상": {
"confcase": "577",
"confcaserate": "4.26",
"createdt": "2020-07-15 10:40:12.152",
"criticalrate": "24.96",
"death": "144",
"deathrate": "49.83",
"seq": "2018",
"updatedt": "null"
},
"여성": {
"confcase": "7607",
"confcaserate": "56.14",
"createdt": "2020-07-15 10:40:12.152",
"criticalrate": "1.79",
"death": "136",
"deathrate": "47.06",
"seq": "2017",
"updatedt": "null"
},
"남성": {
"confcase": "5944",
"confcaserate": "43.86",
"createdt": "2020-07-15 10:40:12.152",
"criticalrate": "2.57",
"death": "153",
"deathrate": "52.94",
"seq": "2016",
"updatedt": "null"
}
}
키(연령대, 성별)를 추출해서 그 키를 이용하여 값(사망, 확진자수 등)에 접근합니다.
연령대와 성별은 도메인이 다르기 때문에 분류합니다.
# Tip
# 한글 폰트 사용
fonts = [(f.name, f.fname) for f in fm.fontManager.ttflist if 'Nanum' in f.name]
plt.rcParams['font.family'] = fonts[0][0]
'''
보건복지부_코로나19 연령별·성별감염_현황
'''
import json
import matplotlib as mpl
import matplotlib.font_manager as fm
import matplotlib.pyplot as plt
fonts = [(f.name, f.fname) for f in fm.fontManager.ttflist if 'Nanum' in f.name]
plt.rcParams['font.family'] = fonts[0][0]
with open('result2.json', 'r', encoding='utf-8') as f:
json_data = json.load(f)
bar_keys = [k for k, v in json_data.items() if k != '여성' if k != '남성']
pie_keys = ['여성', '남성']
confcase_data = {}
for k in bar_keys:
confcase_data.setdefault(k, int(json_data[k]['confcase']))
plt.bar(confcase_data.keys(), confcase_data.values())
plt.show()
활발한 20대의 확진자가 가장 많았습니다.
여성 남성 치사율
'''
보건복지부_코로나19 연령별·성별감염_현황
'''
import json
import matplotlib as mpl
import matplotlib.font_manager as fm
import matplotlib.pyplot as plt
fonts = [(f.name, f.fname) for f in fm.fontManager.ttflist if 'Nanum' in f.name]
plt.rcParams['font.family'] = fonts[0][0]
plt.rcParams['font.size'] = '20'
with open('result2.json', 'r', encoding='utf-8') as f:
json_data = json.load(f)
bar_keys = [k for k, v in json_data.items() if k != '여성' if k != '남성']
pie_keys = ['여성', '남성']
# confcase_data = {}
# for k in bar_keys:
# confcase_data.setdefault(k, int(json_data[k]['confcase']))
# plt.bar(confcase_data.keys(), confcase_data.values())
# plt.show()
deathrate_data = {}
for k in pie_keys:
deathrate_data.setdefault(k, json_data[k]['deathrate'])
plt.pie(deathrate_data.values(), labels=sex_data.keys(), shadow=True, startangle=90, autopct='%0.1f%%')
plt.show()
'API' 카테고리의 다른 글
공공데이터 포털 Open API 사용하기 : 외교부_국가·지역별 최신안전소식(코로나관련) -2 : 데이터 전처리 (0) | 2020.07.17 |
---|---|
공공데이터 포털 Open API 사용하기 : 외교부_국가·지역별 최신안전소식(코로나관련) -1 (0) | 2020.07.16 |
공공데이터 포털 Open API 사용하기 : 보건복지부_코로나19 연령별·성별감염_현황 -2 : 데이터 파싱 (0) | 2020.07.15 |
공공데이터 포털 Open API 사용하기 : 보건복지부_코로나19 연령별·성별감염_현황 (0) | 2020.07.15 |
공공데이터 포털 Open API 사용하기 : 활용신청 / 샘플코드 오류해결 (0) | 2020.07.15 |