import numpy as np
import urllib.request
import pandas as pd
from urllib.request import urlopen
import json
state_code_temp = {'andaman and nicobar islands':'an', #ut
'andhra pradesh':'ap',
'arunachal pradesh':'ar',
'assam':'as',
'bihar':'br',
'chandigarh':'ch', #ut
'chhattisgarh':'ct',
'delhi':'dl', #ut
'dadra & nagar haveli & daman & diu':'dn', #ut
'goa':'ga',
'gujarat':'gj',
'himachal pradesh':'hp',
'haryana':'hr',
'jharkhand':'jh',
'jammu and kashmir':'jk',
'karnataka':'ka',
'kerala':'kl',
'ladakh':'la', #ut
'lakshadweep':'ld', #ut
'maharashtra':'mh',
'manipur':'mn',
'madhya pradesh':'mp',
'mizoram':'mz',
'nagaland':'nl',
'odisha':'or',
'punjab':'pb',
'puducherry':'py', #ut
'rajasthan':'rj',
'sikkim':'sk',
'telangana':'tg',
'tamil nadu':'tn',
'tripura':'tr',
'uttar pradesh':'up',
'uttarakhand':'ut',
'west bengal':'wb',
'states unassigned':'un'
}
statesonly = ['andhra pradesh', 'arunachal pradesh', 'assam', 'bihar', 'chhattisgarh', 'goa', 'gujarat', 'himachal pradesh','haryana',
'jharkhand','jammu and kashmir', 'karnataka', 'kerala', 'maharashtra','manipur','madhya pradesh','mizoram', 'nagaland',
'odisha','punjab','rajasthan','sikkim','telangana','tamil nadu','tripura','uttar pradesh','uttarakhand','west bengal']
state_code = {}
for i in state_code_temp:
code = state_code_temp[i]
state_code[code]=i
state_code[i]=code
url = "https://data.covid19india.org/states_daily.json"
urlfile = urlopen(url)
data = json.loads(urlfile.read())
df = pd.json_normalize(data, record_path =['states_daily'])
# print((df.columns))
#code for Q1 A
def get_total_sum(status):
currentdata = df.loc[df['status']==status]
return currentdata['tt'].astype(int).sum()
print("Q1 A")
print("Total Number of Confirmed Cases:",get_total_sum('Confirmed'))
print("Total Number of Recovered Cases:",get_total_sum('Recovered'))
print("Total Number of Deceased Cases:",get_total_sum('Deceased'))
Q1 A
Total Number of Confirmed Cases: 32249044
Total Number of Recovered Cases: 31441098
Total Number of Deceased Cases: 432117
#Code for Q1 B
def get_statewise_total(stateid,status):
currentdata = df.loc[df['status']==status]
return currentdata[stateid].astype(int).sum()
states = ['delhi','maharashtra','west bengal','tamil nadu']
print("Q1 B")
for i in states:
code = state_code[i]
i = i.upper()
status = ['Confirmed','Recovered','Deceased']
for s in status:
total = get_statewise_total(code,s)
print("Total Number of %s Cases in %s: %d"%(s,i,total))
print()
Q1 B
Total Number of Confirmed Cases in DELHI: 1437118
Total Number of Recovered Cases in DELHI: 1411582
Total Number of Deceased Cases in DELHI: 25069
Total Number of Confirmed Cases in MAHARASHTRA: 6396805
Total Number of Recovered Cases in MAHARASHTRA: 6195744
Total Number of Deceased Cases in MAHARASHTRA: 135138
Total Number of Confirmed Cases in WEST BENGAL: 1539065
Total Number of Recovered Cases in WEST BENGAL: 1510921
Total Number of Deceased Cases in WEST BENGAL: 18312
Total Number of Confirmed Cases in TAMIL NADU: 2590632
Total Number of Recovered Cases in TAMIL NADU: 2535715
Total Number of Deceased Cases in TAMIL NADU: 34547
#code for Q1 C
states = list(state_code_temp.keys())
recovery_rates = {}
print("Q1 C")
for i in statesonly:
code = state_code[i]
i = i.upper()
total_recovered = get_statewise_total(code,'Recovered')
total_confirmed = get_statewise_total(code,'Confirmed')
if total_recovered>0 and total_confirmed>0:
# print(i,total_recovered,total_confirmed)
recovery_rates[i] = total_recovered/total_confirmed * 100
sort_states = sorted(recovery_rates.items(), key = lambda x:x[1])
# print(sort_states)
print("Top 10 States with highest recovery rates\n")
for i in sort_states[:-11:-1]:
print(i[0],"%.2f%%" % i[1])
print("\nTop 10 States with lowest recovery rates\n")
for i in sort_states[:10]:
print(i[0],"%.2f%%" % i[1])
Q1 C
Top 10 States with highest recovery rates
RAJASTHAN 99.04%
GUJARAT 98.76%
MADHYA PRADESH 98.66%
HARYANA 98.66%
UTTAR PRADESH 98.64%
BIHAR 98.64%
CHHATTISGARH 98.54%
JHARKHAND 98.46%
ANDHRA PRADESH 98.45%
TELANGANA 98.40%
Top 10 States with lowest recovery rates
MIZORAM 81.39%
SIKKIM 90.53%
NAGALAND 91.23%
MANIPUR 92.65%
KERALA 94.83%
ARUNACHAL PRADESH 95.94%
UTTARAKHAND 95.98%
MAHARASHTRA 96.86%
HIMACHAL PRADESH 97.03%
TRIPURA 97.07%
#code for Q1 D,E
confirmed_count = {}
recovered_count = {}
deceased_count = {}
for i in statesonly:
code = state_code[i]
i = i.upper()
total_recovered = get_statewise_total(code,'Recovered')
total_confirmed = get_statewise_total(code,'Confirmed')
total_deceased = get_statewise_total(code,'Deceased')
if total_recovered>0:
recovered_count[i] = total_recovered
if total_confirmed>0:
confirmed_count[i] = total_confirmed
if total_deceased>0:
deceased_count[i] = total_deceased
sort_states_r = sorted(recovered_count.items(), key = lambda x:x[1])
sort_states_c = sorted(confirmed_count.items(), key = lambda x:x[1])
sort_states_d = sorted(deceased_count.items(), key = lambda x:x[1])
print("Q1 D")
print("\nTop 3 highest affected states in terms of confirmed cases")
for i in sort_states_c[:-4:-1]:
print(i[0],i[1])
print("\nTop 3 highest affected states in terms of recovered cases")
for i in sort_states_r[:-4:-1]:
print(i[0],i[1])
print("\nTop 3 highest affected states in terms of deceased cases")
for i in sort_states_d[:-4:-1]:
print(i[0],i[1])
print("\n\nQ1 E")
print("\nTop 3 lowest affected states in terms of confirmed cases")
for i in sort_states_c[:3]:
print(i[0],i[1])
print("\nTop 3 lowest affected states in terms of recovered cases")
for i in sort_states_r[:3]:
print(i[0],i[1])
print("\nTop 3 lowest affected states in terms of deceased cases")
for i in sort_states_d[:3]:
print(i[0],i[1])
Q1 D
Top 3 highest affected states in terms of confirmed cases
MAHARASHTRA 6396805
KERALA 3702417
KARNATAKA 2930529
Top 3 highest affected states in terms of recovered cases
MAHARASHTRA 6195744
KERALA 3510904
KARNATAKA 2871449
Top 3 highest affected states in terms of deceased cases
MAHARASHTRA 135138
KARNATAKA 37014
TAMIL NADU 34547
Q1 E
Top 3 lowest affected states in terms of confirmed cases
SIKKIM 28740
NAGALAND 29158
MIZORAM 48711
Top 3 lowest affected states in terms of recovered cases
SIKKIM 26019
NAGALAND 26601
MIZORAM 39647
Top 3 lowest affected states in terms of deceased cases
MIZORAM 184
ARUNACHAL PRADESH 252
SIKKIM 361
#code for Q1 F
dates = df.loc[df['status']=="Confirmed"]['date'].tolist()
status = ['Confirmed','Recovered','Deceased']
for i in states:
code = state_code[i]
i = i.upper()
print(i)
for s in status:
cases = df.loc[df['status']==s][code].astype(int)
cases.index = dates
dailydiff = cases.diff()
# print(cases)
# print(dailydiff)
d = cases.idxmax()
amount = cases[d]
print("Highest spike in %s cases on %s by %d"%(s,d,amount))
print()
ANDAMAN AND NICOBAR ISLANDS
Highest spike in Confirmed cases on 14-Aug-20 by 149
Highest spike in Recovered cases on 09-Aug-20 by 148
Highest spike in Deceased cases on 16-Aug-20 by 4
ANDHRA PRADESH
Highest spike in Confirmed cases on 16-May-21 by 24171
Highest spike in Recovered cases on 19-May-21 by 24819
Highest spike in Deceased cases on 22-May-21 by 118
ARUNACHAL PRADESH
Highest spike in Confirmed cases on 12-Jul-21 by 566
Highest spike in Recovered cases on 23-Jul-21 by 517
Highest spike in Deceased cases on 14-Jun-21 by 6
ASSAM
Highest spike in Confirmed cases on 20-May-21 by 6573
Highest spike in Recovered cases on 26-May-21 by 6266
Highest spike in Deceased cases on 17-May-21 by 92
BIHAR
Highest spike in Confirmed cases on 30-Apr-21 by 15853
Highest spike in Recovered cases on 10-May-21 by 15800
Highest spike in Deceased cases on 09-Jun-21 by 3971
CHANDIGARH
Highest spike in Confirmed cases on 09-May-21 by 895
Highest spike in Recovered cases on 15-May-21 by 963
Highest spike in Deceased cases on 05-May-21 by 14
CHHATTISGARH
Highest spike in Confirmed cases on 23-Apr-21 by 17397
Highest spike in Recovered cases on 20-Apr-21 by 18746
Highest spike in Deceased cases on 28-Apr-21 by 279
DELHI
Highest spike in Confirmed cases on 20-Apr-21 by 28395
Highest spike in Recovered cases on 01-May-21 by 27421
Highest spike in Deceased cases on 03-May-21 by 448
DADRA & NAGAR HAVELI & DAMAN & DIU
Highest spike in Confirmed cases on 22-Apr-21 by 359
Highest spike in Recovered cases on 28-May-21 by 339
Highest spike in Deceased cases on 15-Apr-21 by 2
GOA
Highest spike in Confirmed cases on 07-May-21 by 4195
Highest spike in Recovered cases on 17-May-21 by 4008
Highest spike in Deceased cases on 07-Jun-21 by 80
GUJARAT
Highest spike in Confirmed cases on 30-Apr-21 by 14605
Highest spike in Recovered cases on 14-May-21 by 15365
Highest spike in Deceased cases on 29-Apr-21 by 180
HIMACHAL PRADESH
Highest spike in Confirmed cases on 08-May-21 by 5424
Highest spike in Recovered cases on 22-May-21 by 5021
Highest spike in Deceased cases on 18-May-21 by 78
HARYANA
Highest spike in Confirmed cases on 04-May-21 by 15786
Highest spike in Recovered cases on 10-May-21 by 16192
Highest spike in Deceased cases on 05-May-21 by 181
JHARKHAND
Highest spike in Confirmed cases on 28-Apr-21 by 8075
Highest spike in Recovered cases on 12-May-21 by 8331
Highest spike in Deceased cases on 01-May-21 by 169
JAMMU AND KASHMIR
Highest spike in Confirmed cases on 07-May-21 by 5443
Highest spike in Recovered cases on 23-May-21 by 4956
Highest spike in Deceased cases on 17-May-21 by 73
KARNATAKA
Highest spike in Confirmed cases on 05-May-21 by 50112
Highest spike in Recovered cases on 22-May-21 by 61766
Highest spike in Deceased cases on 23-May-21 by 624
KERALA
Highest spike in Confirmed cases on 12-May-21 by 43529
Highest spike in Recovered cases on 17-May-21 by 99651
Highest spike in Deceased cases on 06-Jun-21 by 227
LADAKH
Highest spike in Confirmed cases on 17-Apr-21 by 362
Highest spike in Recovered cases on 09-Oct-20 by 336
Highest spike in Deceased cases on 26-Nov-20 by 5
LAKSHADWEEP
Highest spike in Confirmed cases on 21-May-21 by 345
Highest spike in Recovered cases on 31-May-21 by 483
Highest spike in Deceased cases on 29-Apr-21 by 3
MAHARASHTRA
Highest spike in Confirmed cases on 18-Apr-21 by 68631
Highest spike in Recovered cases on 08-May-21 by 82266
Highest spike in Deceased cases on 20-Jul-21 by 3656
MANIPUR
Highest spike in Confirmed cases on 21-Jul-21 by 1327
Highest spike in Recovered cases on 25-Jun-21 by 4083
Highest spike in Deceased cases on 19-May-21 by 23
MADHYA PRADESH
Highest spike in Confirmed cases on 25-Apr-21 by 13601
Highest spike in Recovered cases on 01-May-21 by 14562
Highest spike in Deceased cases on 12-Jul-21 by 1481
MIZORAM
Highest spike in Confirmed cases on 26-Jul-21 by 1369
Highest spike in Recovered cases on 15-Aug-21 by 1067
Highest spike in Deceased cases on 14-Jun-21 by 7
NAGALAND
Highest spike in Confirmed cases on 13-May-21 by 366
Highest spike in Recovered cases on 09-Jun-21 by 965
Highest spike in Deceased cases on 02-Jun-21 by 27
ODISHA
Highest spike in Confirmed cases on 23-May-21 by 12852
Highest spike in Recovered cases on 16-May-21 by 12077
Highest spike in Deceased cases on 21-Jul-21 by 69
PUNJAB
Highest spike in Confirmed cases on 08-May-21 by 9042
Highest spike in Recovered cases on 16-May-21 by 9059
Highest spike in Deceased cases on 18-May-21 by 231
PUDUCHERRY
Highest spike in Confirmed cases on 11-May-21 by 2049
Highest spike in Recovered cases on 21-May-21 by 2017
Highest spike in Deceased cases on 23-May-21 by 34
RAJASTHAN
Highest spike in Confirmed cases on 02-May-21 by 18298
Highest spike in Recovered cases on 17-May-21 by 29459
Highest spike in Deceased cases on 11-May-21 by 169
SIKKIM
Highest spike in Confirmed cases on 28-May-21 by 420
Highest spike in Recovered cases on 16-Jun-21 by 420
Highest spike in Deceased cases on 13-May-21 by 9
TELANGANA
Highest spike in Confirmed cases on 07-May-21 by 11451
Highest spike in Recovered cases on 07-May-21 by 17183
Highest spike in Deceased cases on 07-May-21 by 87
TAMIL NADU
Highest spike in Confirmed cases on 21-May-21 by 36184
Highest spike in Recovered cases on 04-Jun-21 by 33646
Highest spike in Deceased cases on 22-Jul-20 by 518
TRIPURA
Highest spike in Confirmed cases on 19-May-21 by 879
Highest spike in Recovered cases on 27-May-21 by 1066
Highest spike in Deceased cases on 10-Jun-21 by 14
UTTAR PRADESH
Highest spike in Confirmed cases on 24-Apr-21 by 37944
Highest spike in Recovered cases on 05-May-21 by 40852
Highest spike in Deceased cases on 07-May-21 by 372
UTTARAKHAND
Highest spike in Confirmed cases on 07-May-21 by 9642
Highest spike in Recovered cases on 21-May-21 by 8731
Highest spike in Deceased cases on 17-May-21 by 223
WEST BENGAL
Highest spike in Confirmed cases on 14-May-21 by 20846
Highest spike in Recovered cases on 24-May-21 by 19670
Highest spike in Deceased cases on 20-May-21 by 162
STATES UNASSIGNED
Highest spike in Confirmed cases on 27-May-20 by 1043
Highest spike in Recovered cases on 14-Mar-20 by 0
Highest spike in Deceased cases on 14-Mar-20 by 0
#code for Q1 G
print("Active cases on 15 Aug 2021")
for i in state_code_temp:
code = state_code[i]
i = i.upper()
confirmed_cases = df.loc[df['status']=='Confirmed'][code].astype(int)
recovered_cases = df.loc[df['status']=='Recovered'][code].astype(int)
deceased_cases = df.loc[df['status']=='Deceased'][code].astype(int)
df_cc = pd.DataFrame({'tt':confirmed_cases.values})
df_rc = pd.DataFrame({'tt':recovered_cases.values})
df_dc = pd.DataFrame({'tt':deceased_cases.values})
df_cc['ctt']=df_cc['tt'].cumsum()
df_rc['ctt']=df_rc['tt'].cumsum()
df_dc['ctt']=df_dc['tt'].cumsum()
sum1 = df_rc['ctt']+df_dc['ctt']
df_cc['sctt']=sum1
diff = df_cc['ctt']-df_cc['sctt']
df_cc['att']=diff
active_cases = df_cc.iloc[:,3]
active_cases = active_cases.tolist()
print("%s : %d"%(i,active_cases[-2]))
Active cases on 15 Aug 2021
ANDAMAN AND NICOBAR ISLANDS : 5
ANDHRA PRADESH : 17865
ARUNACHAL PRADESH : 1921
ASSAM : 9213
BIHAR : 241
CHANDIGARH : 44
CHHATTISGARH : 1295
DELHI : 513
DADRA & NAGAR HAVELI & DAMAN & DIU : -20
GOA : 912
GUJARAT : 182
HIMACHAL PRADESH : 2777
HARYANA : 665
JHARKHAND : 187
JAMMU AND KASHMIR : 1288
KARNATAKA : 22515
KERALA : 179159
LADAKH : 18
LAKSHADWEEP : 79
MAHARASHTRA : 67689
MANIPUR : 6540
MADHYA PRADESH : 103
MIZORAM : 9588
NAGALAND : 2029
ODISHA : 9385
PUNJAB : 577
PUDUCHERRY : 931
RAJASTHAN : 213
SIKKIM : 2487
TELANGANA : 6758
TAMIL NADU : 20458
TRIPURA : 1773
UTTAR PRADESH : 439
UTTARAKHAND : 6428
WEST BENGAL : 10030
STATES UNASSIGNED : 0
#Code for Q2 A
import matplotlib.pyplot as plt
import datetime as datetime
import matplotlib.dates as mdates
from matplotlib.pyplot import figure
dateob = datetime.datetime
dates=[]
cases = df[['date','status','tt']]
dates_temp = cases.loc[cases['status']=='Confirmed']['date']
dates_temp = dates_temp.tolist()
for i in range(0,len(dates_temp)):
strdate = dates_temp[i]
dates.append(dateob.strptime(strdate,'%d-%b-%y'))
confirmed_cases = cases.loc[cases['status']=='Confirmed']['tt'].astype(int)
recovered_cases = cases.loc[cases['status']=='Recovered']['tt'].astype(int)
deceased_cases = cases.loc[cases['status']=='Deceased']['tt'].astype(int)
start = dates[0]
end = dates[-1]
figure(figsize=(14, 4), dpi=150)
plt.subplot(1,2,1)
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%b%y'))
plt.gca().xaxis.set_major_locator(mdates.DayLocator(interval=60))
plt.gca().set_xbound(start, end)
plt.plot(dates,confirmed_cases,label='Confirmed Cases')
plt.plot(dates,recovered_cases,label='Recovered Cases')
plt.legend(loc="upper left")
plt.subplot(1,2,2)
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%b%y'))
plt.gca().xaxis.set_major_locator(mdates.DayLocator(interval=60))
plt.plot(dates,deceased_cases,label='Deceased Cases',color='green')
plt.legend(loc="upper left")
plt.show()
#Code for Q2 B
dateob = datetime.datetime
dates=[]
cases = df[['date','status','dl']]
dates_temp = cases.loc[cases['status']=='Confirmed']['date']
dates_temp = dates_temp.tolist()
print("DELHI")
for i in range(0,len(dates_temp)):
strdate = dates_temp[i]
dates.append(dateob.strptime(strdate,'%d-%b-%y'))
confirmed_cases = cases.loc[cases['status']=='Confirmed']['dl'].astype(int)
recovered_cases = cases.loc[cases['status']=='Recovered']['dl'].astype(int)
deceased_cases = cases.loc[cases['status']=='Deceased']['dl'].astype(int)
start = dates[0]
end = dates[-1]
figure(figsize=(14, 4), dpi=150)
plt.subplot(1,2,1)
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%b%y'))
plt.gca().xaxis.set_major_locator(mdates.DayLocator(interval=60))
plt.gca().set_xbound(start, end)
plt.plot(dates,confirmed_cases,label='Confirmed Cases')
plt.plot(dates,recovered_cases,label='Recovered Cases')
plt.legend(loc="upper left")
plt.subplot(1,2,2)
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%b%y'))
plt.gca().xaxis.set_major_locator(mdates.DayLocator(interval=60))
plt.plot(dates,deceased_cases,label='Deceased Cases',color='green')
plt.legend(loc="upper left")
plt.show()
DELHI
import matplotlib.ticker as ticker
dateob = datetime.datetime
dates=[]
cases = df[['date','status','tt']]
dates_temp = cases.loc[cases['status']=='Confirmed']['date']
dates_temp = dates_temp.tolist()
for i in range(0,len(dates_temp)):
strdate = dates_temp[i]
dates.append(dateob.strptime(strdate,'%d-%b-%y'))
confirmed_cases = cases.loc[cases['status']=='Confirmed']['tt'].astype(int)
recovered_cases = cases.loc[cases['status']=='Recovered']['tt'].astype(int)
deceased_cases = cases.loc[cases['status']=='Deceased']['tt'].astype(int)
df_cc = pd.DataFrame({'tt':confirmed_cases.values})
df_rc = pd.DataFrame({'tt':recovered_cases.values})
df_dc = pd.DataFrame({'tt':deceased_cases.values})
df_cc['ctt']=df_cc['tt'].cumsum()
df_rc['ctt']=df_rc['tt'].cumsum()
df_dc['ctt']=df_dc['tt'].cumsum()
sum1 = df_rc['ctt']+df_dc['ctt']
df_cc['sctt']=sum1
diff = df_cc['ctt']-df_cc['sctt']
df_cc['att']=diff
active_cases = df_cc.iloc[:,3]
# print(active_cases)
start = dates[0]
end = dates[-1]
figure(figsize=(8, 4), dpi=100)
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%b%y'))
plt.gca().xaxis.set_major_locator(mdates.DayLocator(interval=60))
plt.gca().set_xbound(start, end)
plt.gca().yaxis.set_major_formatter(ticker.EngFormatter())
plt.plot(dates,df_cc['att'],label='Active Cases')
plt.legend(loc="upper left")
plt.show()
#Code for Q2 D
df_new = df.iloc[50:200]
states = ['delhi','tamil nadu','gujarat']
dateob = datetime.datetime
dates=[]
dates_temp = df_new.loc[df_new['status']=='Confirmed']['date']
dates_temp = dates_temp.tolist()
for i in range(0,len(dates_temp)):
strdate = dates_temp[i]
dates.append(dateob.strptime(strdate,'%d-%b-%y'))
print("Start Date:",dates[0])
print("End Date:",dates[-1])
for i in states:
code = state_code[i]
i = i.upper()
confirmed_cases = df_new.loc[df_new['status']=='Confirmed'][code].astype(int)
recovered_cases = df_new.loc[df_new['status']=='Recovered'][code].astype(int)
deceased_cases = df_new.loc[df_new['status']=='Deceased'][code].astype(int)
df_cc = pd.DataFrame({'tt':confirmed_cases.values})
df_rc = pd.DataFrame({'tt':recovered_cases.values})
df_dc = pd.DataFrame({'tt':deceased_cases.values})
df_cc['ctt']=df_cc['tt'].cumsum()
df_rc['ctt']=df_rc['tt'].cumsum()
df_dc['ctt']=df_dc['tt'].cumsum()
sum1 = df_rc['ctt']+df_dc['ctt']
df_cc['sctt']=sum1
diff = df_cc['ctt']-df_cc['sctt']
df_cc['att']=diff
active_cases = df_cc.iloc[:,3]
active_cases = active_cases.tolist()
# print("%s : %d"%(i,active_cases[-2]))
# print(dates[-1])#noice
start = dates[0]
end = dates[-1]
figure(figsize=(8, 4), dpi=100)
plt.gca().xaxis.set_major_formatter(mdates.DateFormatter('%d %b %y'))
plt.gca().xaxis.set_major_locator(mdates.DayLocator(interval=10))
plt.gca().set_xbound(start, end)
plt.gca().yaxis.set_major_formatter(ticker.EngFormatter())
plt.xticks(rotation=-30)
plt.bar(dates,active_cases,label='Active Cases : %s'%(i))
plt.legend(loc="upper left")
plt.show()
Start Date: 2020-03-31 00:00:00
End Date: 2020-05-19 00:00:00