import pandas as pd
import matplotlib.pyplot as plt
plt.rcParams['axes.unicode_minus'] = False
plt.rcParams['font.family'] = 'Malgun Gothic'
df_delivery = pd.read_csv('./배달_사용_통계.csv', encoding='utf-8')
df_delivery.columns = df_delivery.columns.str.strip()
df_covid = pd.read_csv('./코로나_확진자_수_통계.csv', encoding='utf-8')
df_covid.columns = df_covid.columns.str.strip()
df = pd.merge(df_delivery, df_covid, on='연도', how='inner')
print(df.keys())
df['연도'] = pd.to_numeric(df['연도'], errors='coerce') # 연도 열이 제대로 숫자로 되어 있는지 확인
df['배달앱'] = pd.to_numeric(df['배달앱'], errors='coerce') # 배달앱 이용량
df['배달대행'] = pd.to_numeric(df['배달대행'], errors='coerce') # 배달대행 이용량
df['확진자'] = pd.to_numeric(df['확진자'], errors='coerce')
df['사망자'] = pd.to_numeric(df['사망자'], errors='coerce')
df['백신'] = pd.to_numeric(df['백신'], errors='coerce')
df['사망률 감소'] = pd.to_numeric(df['사망률 감소'], errors='coerce')
df = df.dropna(subset=['연도', '배달앱', '배달대행'])
plt.figure(figsize=(10, 5))
plt.plot(df['연도'], df['배달앱'], marker='o', linestyle='-', color='blue', label='배달앱 이용률')
plt.plot(df['연도'], df['배달대행'], marker='o', linestyle='-', color='red', label='배달대행 이용률')
plt.plot(df['연도'], df['확진자'], marker='o', linestyle='-', color='green', label='코로나 확진자 수')
plt.plot(df['연도'], df['사망자'], marker='o', linestyle='-', color='purple', label='코로나 사망자 수')
plt.plot(df['연도'], df['백신'], marker='o', linestyle='-', color='cyan', label='코로나 백신 접종자 수')
plt.plot(df['연도'], df['사망률 감소'], marker='o', linestyle='-', color='orchid', label='예상 사망률 감소')
plt.xlabel('연도')
plt.ylabel('전국민 대비 비율(%)')
plt.title('2018~2024년 주요 데이터 비교 (꺾은선 그래프)')
plt.xticks(rotation=45)
plt.grid()
plt.legend()
plt.show()
bar_width = 0.15
index = range(len(df["연도"]))
plt.bar([i - bar_width * 2 for i in index], df["배달앱"], bar_width, label="배달앱 이용률", color="blue")
plt.bar([i - bar_width for i in index], df["배달대행"], bar_width, label="배달대행 이용률", color="red")
plt.bar(index, df["확진자"], bar_width, label="코로나 확진률", color="green")
plt.bar([i + bar_width for i in index], df["사망자"], bar_width, label="코로나 사망률", color="purple")
plt.bar([i + bar_width * 2 for i in index], df["백신"], bar_width, label="백신 접종률", color="cyan")
plt.bar([i + bar_width * 3 for i in index], df["사망률 감소"], bar_width, label="사망률 감소", color="orchid")
# X축, Y축 및 그래프 제목 설정
plt.xlabel("연도")
plt.ylabel("전국민 대비 비율(%)")
plt.title("2018~2024년 주요 데이터 비교 (막대 그래프)")
plt.xticks(index, df["연도"], rotation=45)
plt.legend()
plt.grid(axis="y", linestyle="--", alpha=0.7)
# 그래프 출력
plt.show()