File:Suomen koronavirusepidemian 1 aalto kevät 2020 kasvu ja hiipumisluvut 1.svg
Original file (SVG file, nominally 512 × 205 pixels, file size: 292 KB)
Captions
Summary
[edit]DescriptionSuomen koronavirusepidemian 1 aalto kevät 2020 kasvu ja hiipumisluvut 1.svg |
Suomi: Kevään 2020 koronavirusepidemia alkoi 26. helmikuuta. Uusien tapausten määrä kasvoi noin 38 päivässä huippuunsa. Kasvunopeus oli keskimäärin 12,5 prosenttia päivässä, kaksinkertaistumisaika noin 4.6-7 päivää, noin viikossa kaksinkertaistui. Uusien tapausten määrä saavutti huippunsa huhtikuun 7-12 päivän tienoilla. Tämän jälkeen uusien sairastuvien määrä väheni 4.1 :lla päivässä, mikä vastaa uusien tapausten puolittumista 15.3-19.3 päivässä, noin parissa-kolmessa viikossa.
English: This image shows growth and decay rates and doubling/halving times of finnish covid-19 vawe of spring 2020. |
Date | |
Source | Own work |
Author | Merikanto |
This script calculates doubling time and halving time and growth/decay rate of epidemy.
Warning: Must adjust code manually to define peak point.
This image is based on Covid-19 github aggregated dataset
https://datahub.io/core/covid-19/r/countries-aggregated.csv
Image is produced with "R".
Values are calculated with "R" package "incidence".
"IDX","Date","Paivitt_tapaukset" "36","2020-02-26",1 "37","2020-02-27",0 "38","2020-02-28",0 "39","2020-02-29",1 "40","2020-03-01",3 "41","2020-03-02",0 "42","2020-03-03",0 "43","2020-03-04",0 "44","2020-03-05",6 "45","2020-03-06",3 "46","2020-03-07",0 "47","2020-03-08",8 "48","2020-03-09",7 "49","2020-03-10",10 "50","2020-03-11",19 "51","2020-03-12",0 "52","2020-03-13",96 "53","2020-03-14",70 "54","2020-03-15",19 "55","2020-03-16",33 "56","2020-03-17",44 "57","2020-03-18",15 "58","2020-03-19",64 "59","2020-03-20",50 "60","2020-03-21",73 "61","2020-03-22",103 "62","2020-03-23",74 "63","2020-03-24",92 "64","2020-03-25",88 "65","2020-03-26",78 "66","2020-03-27",83 "67","2020-03-28",126 "68","2020-03-29",73 "69","2020-03-30",112 "70","2020-03-31",66 "71","2020-04-01",28 "72","2020-04-02",72 "73","2020-04-03",97 "74","2020-04-04",267 "75","2020-04-05",45 "76","2020-04-06",249 "77","2020-04-07",132 "78","2020-04-08",179 "79","2020-04-09",118 "80","2020-04-10",164 "81","2020-04-11",136 "82","2020-04-12",69 "83","2020-04-13",90 "84","2020-04-14",97 "85","2020-04-15",76 "86","2020-04-16",132 "87","2020-04-17",120 "88","2020-04-18",192 "89","2020-04-19",102 "90","2020-04-20",85 "91","2020-04-21",146 "92","2020-04-22",115 "93","2020-04-23",155 "94","2020-04-24",111 "95","2020-04-25",80 "96","2020-04-26",101 "97","2020-04-27",119 "98","2020-04-28",45 "99","2020-04-29",166 "100","2020-04-30",89 "101","2020-05-01",56 "102","2020-05-02",125 "103","2020-05-03",78 "104","2020-05-04",73 "105","2020-05-05",85 "106","2020-05-06",161 "107","2020-05-07",100 "108","2020-05-08",65 "109","2020-05-09",142 "110","2020-05-10",82 "111","2020-05-11",22 "112","2020-05-12",19 "113","2020-05-13",51 "114","2020-05-14",91 "115","2020-05-15",83 "116","2020-05-16",58 "117","2020-05-17",61 "118","2020-05-18",33 "119","2020-05-19",19 "120","2020-05-20",44 "121","2020-05-21",50 "122","2020-05-22",44 "123","2020-05-23",31 "124","2020-05-24",11 "125","2020-05-25",20 "126","2020-05-26",29 "127","2020-05-27",64 "128","2020-05-28",51 "129","2020-05-29",33 "130","2020-05-30",50 "131","2020-05-31",33 "132","2020-06-01",26 "133","2020-06-02",2 "134","2020-06-03",24 "135","2020-06-04",0 "136","2020-06-05",30 "137","2020-06-06",23 "138","2020-06-07",17 "139","2020-06-08",20 "140","2020-06-09",24 "141","2020-06-10",15 "142","2020-06-11",24 "143","2020-06-12",9 "144","2020-06-13",14 "145","2020-06-14",17 "146","2020-06-15",4 "147","2020-06-16",4 "148","2020-06-17",5 "149","2020-06-18",2 "150","2020-06-19",14 "151","2020-06-20",9 "152","2020-06-21",1 "153","2020-06-22",1 "154","2020-06-23",11 "155","2020-06-24",12 "156","2020-06-25",5 "157","2020-06-26",19 "158","2020-06-27",7 "159","2020-06-28",0 "160","2020-06-29",11 "161","2020-06-30",5 "162","2020-07-01",22 "163","2020-07-02",5 "164","2020-07-03",1 "165","2020-07-04",6 "166","2020-07-05",5 "167","2020-07-06",4 "168","2020-07-07",5 "169","2020-07-08",3 "170","2020-07-09",8 "171","2020-07-10",6 "172","2020-07-11",12 "173","2020-07-12",3 "174","2020-07-13",1 "175","2020-07-14",6 "176","2020-07-15",-5 "177","2020-07-16",-3 "178","2020-07-17",8 "179","2020-07-18",17 "180","2020-07-19",17 "181","2020-07-20",5 "182","2020-07-21",11 "183","2020-07-22",11 "184","2020-07-23",10 "185","2020-07-24",8 "186","2020-07-25",8 "187","2020-07-26",5 "188","2020-07-27",5 "189","2020-07-28",6 "190","2020-07-29",10 "191","2020-07-30",9
R code to produce graph
- calculate growth percent and doubling time from covid data
- from COVID-19 epidemic data
- this code needs adjust if you wanna use it
- you must find manually peak date of epidemy
- additional script only, meybe needs adjust
- 12.01.2021
- v 0000.0001
- install.packages("ggplot2", "outbreaks", "incidence", "R0", "magrittr", "plotrix")
-
- install.packages("ggplot2", "outbreaks", "incidence", "R0", "magrittr", "plotrix", repos ="https://ftp.acc.umu.se/mirror/CRAN/")
Sys.setenv(LANGUAGE="fi")
Sys.setlocale("LC_TIME", "fi_FI.UTF-8")
Sys.setlocale("LC_ALL","Finnish")
options(encoding = "UTF-8")
library(outbreaks)
library(ggplot2)
library(incidence)
library (R0)
library(magrittr)
library(plotrix)
library(svglite)
- 0, 1 or 2 , 0 none plot, 1 plot, 2 ggplot, -1 debug
plottaa<-2
levylle<-1 ## 0 to display, 1 to disc
plotname<-"Koronavirusepidemian 1 aalto kasvuluvut 1.svg" ## name of plot file
polku<-"/Users/himot/akor1/" ## path of plot file
- 1 wiki data, 2 aggregated cases data
load_data_from=2
beginday1='1/03/2020'
- beginday1='1/03/2020'
endday1='1/07/2020'
- 1 from finnish wiki, 2 cases from net, 3 from net 2
plottaa=2 ## must be 1
tulosta_svg=1 # plot to out svg 0, 1 of 2
tulosfilee1="/Users/himot/akor1/R0_Suomessa_2.svg"
- ggolot smooth curves pars
spanni=0.05
- spanni=0.5
metodi="loess"
- NOTE date limits change this
- datelimits1=c('1/3/2020', '9/11/2020')
- display date limits
- today=Sys.Date()-1
- if above not func try this
today=Sys.Date()
- print(today)
today1=format(today, "%d/%m/%Y")
today2=format(today, "%Y/%m/%d")
print(today1)
- print(today2)
- stop(-1)
- datelimits1=c(beginday1, today1)
datelimits1=c(beginday1, endday1)
- dates of dataset
- paivat1=seq(as.Date("2020/3/1"), as.Date(today2), "days")
paivat1=seq(as.Date("2020/3/1"), as.Date("2020/7/1"), "days")
calculate_r0 <- function(time1, time2, val1, val2)
{
td=time2-time1
gr0<-log(val2/val1)
gr=gr0/td
td = log(2)/gr
tau<-5.0
k<-log(2.0)/td
r0<-exp(k*tau)
return(r0)
}
moving_average <- function(x, w, FUN, ...)
{
if (w < 1) {
stop("Window length: mustbe greater than 0")
}
output <- x
for (i in 1:length(x)) {
lower_bound <- i - w + 1
if (lower_bound < 1) {
output[i] <- NA_real_
## !!! assume NA 0
output[i] <- 0
} else {
output[i] <- FUN(x[lower_bound:i, ...])
}
}
return (output)
}
calculate_multiple_r0 <- function(daata1) {
lenu1<-length(daata1)
daata2<-1:lenu1
for (n in 2:lenu1){
valju1=daata1[n-1]
valju2=daata1[n]
timex1=0
timex2=1
r0<-calculate_r0(0, 1, valju1, valju2)
daata2[n]<-r0
#print (r0)
}
return(daata2)
}
load_data_from_finnish_wiki<-function()
{
url1="https://fi.wikipedia.org/wiki/Suomen_koronaviruspandemian_aikajana"
destfile1="./ward0.txt"
download.file(url1, destfile1)
texti000<-readtext(destfile1)
texti0<-texti000$text
etsittava1="1. huhtikuuta 2020 alkaen"
len1=nchar(texti0)
k1=regexpr(pattern=etsittava1, texti0)
k1b=len1-k1
texti1=strtail(texti0,k1b)
sink("out1.txt")
print (texti1)
sink()
etsittava2=""
k2=regexpr(pattern=etsittava2, texti1)
texti2=strhead(texti1,k2)
sample1<-minimal_html(texti2)
tabu1 <- html_table(sample1, fill=TRUE)1
colnames(tabu1) <- c("V1","V2", "V3","V4", "V5","V6", "V7","V8" )
- print(tabu1)
sairaalassa00<-tabu1$V4
sairaalassa=as.integer(sairaalassa00)
teholla00<-tabu1$V5
teholla=as.integer(teholla00)
uusiatapauksia00<-tabu1$V3
uusiatapauksia0<-gsub(" ", "", uusiatapauksia00)
uusia_tapauksia=as.integer(uusiatapauksia0)
uusiakuolleita00<-tabu1$V7
uusiakuolleita1=as.integer(uusiakuolleita00)
uusiakuolleita2<-uusiakuolleita1
uusiakuolleita2[uusiakuolleita2<0]<-0
uusia_kuolleita<-uusiakuolleita2
toipuneita00<-tabu1$V8
toipuneita01<-gsub(" ", "", toipuneita00)
toipuneita0<-gsub("[^0-9.-]", "", toipuneita01)
toipuneita=as.integer(toipuneita0)
tapauksia00<-tabu1$V2
tapauksia01<-gsub(" ", "", tapauksia00)
tapauksia0<-gsub("[^0-9.-]", "", tapauksia01)
tapauksia=as.integer(tapauksia0)
kuolleita00<-tabu1$V6
kuolleita=as.integer(kuolleita00)
aktiivisia_tapauksia=tapauksia-kuolleita-toipuneita
- print (paivat1)
- print (teholla)
- print (sairaalassa)
- print (tapauksia)
- print (kuolleita)
- print (toipuneita)
- print (uusia_tapauksia)
- print (uusia_kuolleita)
- plot(paivat1,aktiivisia_tapauksia)
- xy<-data.frame(paivat1, sairaalassa)
xy<-data.frame(paivat1, uusia_tapauksia)
xyz<-data.frame(paivat1, sairaalassa, teholla)
dfout1<-data.frame(paivat1, aktiivisia_tapauksia, uusia_tapauksia, sairaalassa, teholla, uusia_kuolleita )
names(dfout1)<-c("Pvm", "Aktiivisia_tapauksia","Uusia_tapauksia", "Sairaalassa", "Teholla", "Uusia_kuolleita")
write.csv2(dfout1, "./sairaalassa.csv",row.names=FALSE )
return(xy)
}
load_data_from_aggregated<-function()
{
- fetch the data
srkurl='https://datahub.io/core/covid-19/r/countries-aggregated.csv'
dfine000 <- read.csv(file=srkurl)
dfine<-as.data.frame(dfine000)
- head(dfine)
- class(dfine)
- print(dfine)
- tail(dfine)
- stop(-1)
dfinland <- dfine[ which(dfine$Country=='Finland'), ]
- head(dfinland)
- print(dfinland)
- quit(-2)
kols <- c("Date", "Confirmed","Recovered","Deaths")
tapaukset <- dfinland[kols]
- head(tapaukset)
len1=nrow(tapaukset)
- len1
len2=len1-1
len3=len2
confirmed<-tapaukset$Confirmed
deaths<-tapaukset$Deaths
dailycases <- vector()
dailycases <- c(dailycases, 0:(len2))
dailydeaths <- vector()
dailydeaths <- c(dailydeaths, 0:(len2))
m=0
dailycases[1]<-tapaukset$Confirmed[1]
- dailydeaths[1]<-tapaukset$Deaths[1]
dailydeaths[1]<-0
- confirmed
- deaths
m=1
for(n in 2:(len3+1)) {
a<-confirmed[n]
b<-confirmed[m]
#print (a)
#print (b)
cee<- (a-b)
#print(cee)
dailycases[n]=cee
m=m+1
}
mm=1
for(nn in 2:(len3+1)) {
aa<-deaths[nn]
bb<-deaths[mm]
#print ("_")
#print (aa)
#print (bb)
ceb=aa-bb
#if (ceb<0) ceb=0
#print(ceb)
dailydeaths[nn]=ceb
mm=mm+1
}
- deaths
- dailycases
- dailydeaths
dfout1<-dfinland
- print(nrow(dfinland))
- print(length(dailydeaths))
dfout1 <- cbind(dfout1, data.frame(dailycases))
dfout1 <- cbind(dfout1, data.frame(dailydeaths))
- head(dfout1)
dfout2<-within(dfout1, rm(Country))
names(dfout2) <- c('Date','Confirmed','Recovered','Deaths', 'DailyConfirmed','DailyDeaths')
- head(dfout2)
write.csv2(dfout2, "/Users/himot/akor1/finland_data1.csv");
daate1<-dfout2$Date
dailydeaths1<-dfout2$DailyDeaths
dailycases1<-dailycases
- daate1
- daate2<-gsub("2020-", "", daate1)
daate2<-daate1
leenu<-length(daate2)
- alkupvm<-50
alkupvm<-1
daate3<-daate2[alkupvm:leenu]
dailydeaths3<-dailydeaths1[alkupvm:leenu]
dailycases3<-dailycases1[alkupvm:leenu]
- daate3
- dailydeaths3
# barplot(dailydeaths3, main="Koronaviruskuolemat päivittäin vuonna 2020",
# names.arg=daate3)
dataf1 <- data.frame("Date" = daate3, "Paivitt_kuolemat"=dailydeaths3)
- str(dataf1)
dataf2 <- data.frame("Date" = daate3, "Paivitt_tapaukset"=dailycases3)
- str(dataf2)
write.csv(dataf1, "/Users/himot/akor1/dailydeaths1.csv", row.names=T)
write.csv(dataf2, "/Users/himot/akor1/dailycases1.csv", row.names=T)
indf1 <- read.csv(file = '/Users/himot/akor1/dailycases1.csv')
#head(indf1)
cases1<-indf1$Paivitt_tapaukset
dates1<-indf1$Date
len1=length(cases1)
dates2<-as.Date(dates1)
paivat<-1:len1
xy<-data.frame(daate3, dailycases3)
}
calculate_r0_with_r0<-function(xy2)
{
## calculate r0 w/r0 package
dates<-as.Date(xy2$Dates)
cases<-as.integer(xy2$Cases)
cases[is.na(cases)] <- 1
cases[(cases<0)] <- cases*-1
cases[cases==0] <- 1
nummeros<-1:length(dates)
num<-cases
#names<-nummeros
names<-dates
lenu=length(dates)
bekini=as.Date(dates[1])
enti=as.Date(dates[lenu])
#print(bekini)
#print(enti)
#stop(-1)
#enti=lenu
#bekini=enti*0+1
#enti=as.integer(enti)
#bekini=as.integer(bekini)
df1 <- setNames(num, names)
mGT<-generation.time("gamma", c(3, 1.5))
#TD <- est.R0.TD(df1, mGT, begin=1, end=length(dates), nsim=200)
#TD <- est.R0.TD(df1, mGT, begin=bekini, end=enti, nsim=200)
TD <- est.R0.TD(df1, mGT, begin=bekini, end=enti, nsim=200)
TD.5D <- smooth.Rt(TD, 5)
paivat1<-TD.5D$epid$t
paivat2<-as.Date(paivat1)
r0t1<-TD.5D$R
conf1<-TD.5D$conf.int
xypaluu<-data.frame(paivat1,r0t1)
names(xypaluu)<-c("paivat","r0")
return(xypaluu)
}
calculate_r0_with_epiestim<-function(xy2)
{
## calculate r0 w/r0 package
dates<-as.Date(xy2$Dates)
cases<-as.integer(xy2$Cases)
nummeros<-1:length(dates)
num<-cases
#names<-nummeros
names<-dates
lenu=length(dates)
cases[is.na(cases)] <- 1
cases[(cases<0)] <- cases*-1
cases[cases==0] <- 1
incid<-cases
bekini=as.Date(dates[1])
enti=as.Date(dates[lenu])
config<-make_config( list(mean_si = 2.6,std_si = 1.5) )
res<-estimate_R(incid,method="parametric_si", config = config)
plot(res)
resr<-res$R
str(resr)
meanr<-resr$Mean
medianr<-resr$Median
quantile95<-resr$Quantile.0.95
quantile05<-resr$Quantile.0.05
quantile75<-resr$Quantile.0.75
quantile25<-resr$Quantile.0.25
meanr
daydexes<-resr$t_start
daydexes
plot(daydexes, meanr)
dayss<-as.Date(dates[daydexes])
print (dayss)
#stop(-1)
plot(dayss, meanr)
xypaluu<-data.frame(dayss,meanr)
names(xypaluu)<-c("paivat","r0")
return(xypaluu)
}
calculate_r0_with_simple_exponent_moving_average<-function(xy2, madays1, madays2)
{
## calculate r0 w/r0 package
dates<-as.Date(xy2$Dates)
cases<-as.integer(xy2$Cases)
nummeros<-1:length(dates)
num<-cases
#names<-nummeros
names<-dates
lenu=length(dates)
cases[is.na(cases)] <- 1
cases[(cases<0)] <- cases*-1
cases[cases==0] <- 1
# compute a MA(7)
ma1<-moving_average(cases,madays1,mean)
r0t1<-calculate_multiple_r0(ma1)
r0avg1<-moving_average(r0t1, madays2, mean)
xypaluu<-data.frame(dates,r0t1)
plot(r0t1)
print (r0t1)
#stop(-1)
names(xypaluu)<-c("paivat","r0")
return(xypaluu)
}
-
if(load_data_from==1)
{
xy<-load_data_from_finnish_wiki()
}
if(load_data_from==2)
{
xy<-load_data_from_aggregated()
}
names(xy)<-c("Dates","Cases")
print (xy)
# quit(-1)
#print (beginday1)
select_datelimit_begin=as.Date(beginday1,format="%d/%m/%Y")
select_datelimit_end=as.Date(today1)
#format(select_datelimit_begin, "%Y-%m-%d")
#print(select_datelimit_begin)
#print(select_datelimit_end)
#2020-12-16
xy2<-xy[xy$Dates >= select_datelimit_begin & xy$Dates <= select_datelimit_end]
xy2<-xy[xy$Dates >= select_datelimit_begin,]
print(xy2)
#stop(-1)
cases1<-xy2$Cases
dates1<-xy2$Dates
len1=length(cases1)
dates2<-as.Date(dates1)
paivat<-1:len1
num1<-cases1
names1<-as.Date(dates1)
num<- num1
names<-names1
datess1<-dates2
- r0 from last week!
start_lok<-len1-7
end_lok<-len1
- print (names[start_lok])
- num<-num1[start_lok:end_lok]
- names<-names1[start_lok:end_lok]
- lena=length(num)
- print (lena)
- num<-num[num<0]=1
df1 <- setNames(num, names)
str(df1)
lena=length(names1)
- indates<-names1
indates<-1:lena
incases<-as.integer(num1)
indates<-as.integer(indates)
- indates<-datess1
indates
incases
dat<-0
n <- 1
for (paiva in indates) {
kase<-incases[n]
if(kase<0) kase=0
#print (paiva)
dat1<-rep(paiva, times = kase)
#print (dat1)
dat<-append(dat, dat1)
n = n+1
}
- dat<-as.integer(dat)
class(dat)
- > [1] "Date"
head(dat)
print("Dunkku")
i <- incidence(dat)
i
class(i)
str(i)
plot(i)
i.7 <- incidence(dat, interval = 1)
- fittis<-fit_optim_split(i.7)
- fitti1<-get_fit(fittis$fit)
Pvm<-datess1[0:140]
d1<-datess1[0:38]
earlylate<-i.7[0:140]
early<-i.7[0:38]
late<-i.7[38:140]
early.fit <- fit(early)
late.fit <- fit(late)
- plot(fitti1)
plot(earlylate) %>% add_incidence_fit(early.fit) %>% add_incidence_fit(late.fit)
rearly<-round(get_info(early.fit, "r"),3)*100
rlate<-round(get_info(late.fit, "r"),3)*100
doublingearly<-round(get_info(early.fit, "doubling.conf"),1)
halvinglate<-round(get_info(late.fit, "halving.conf"),1)
print(rearly)
print(doublingearly)
print(rlate)
print(halvinglate)
str(early.fit)
Tapauksia<-earlylate$counts
- predik<-get_info(fit(earlylate), "pred", groups = 2)
- print(predik)
- plot(predik)
xy<-data.frame(Pvm, Tapauksia)
gr1=rearly/100
td1=log(2.0)/gr1
tau1=5.0
k1=log(2.0)/td1
r01=round(exp(k1*tau1),2)
gr2=rlate/100
td2=log(2.0)/gr2
tau2=5.0
k2=log(2.0)/td2
r02=round(exp(k2*tau2),2)
print(r02)
if(plottaa==1)
{
if(levylle==1)
{
plotname1<-paste0(polku, plotname)
svg(filename=plotname1, width=11, height=6, pointsize=11)
}
- barplot(dailycases3, main="Koronavirustapaukset päivittäin vuonna 2020",sub=jono11,
- names.arg=daate3)
plot(Pvm,Tapauksia, type="lines", col="black", lwd=5, ltyt=2,
main="Koronaviruksen 1. aalto: kasvu ja hiipuminen", xlab="Kuukausi vuonna 2020", ylab="Tapauksia",
cex.lab=1.5, cex.axis=1.5, cex.main=1.5, cex.sub=1.5)
text(18335, 200, paste0(" Kasvoi \n",rearly, " % pv R0 ",r01), cex = 1.8, col='red')
text(18430, 180, paste0(" Hiipui \n",rlate, " % pv"), cex = 1.8, col='blue')
text(18335, 150, paste0(" Kaksinkertaistui \n",doublingearly[1],"-",doublingearly[2], " pv"), cex = 1.8, col='darkred')
text(18430, 130, paste0(" Puolittui \n",halvinglate[1],"-",halvinglate[2], " pv"), cex = 1.8, col='darkblue')
text(18400, 240, paste0(" Alkoi 26. helmikuuta, nousi huippuunsa 38 pvssa"), cex = 1.4, col='brown')
if(levylle==1)
{
dev.off()
}
}
if(plottaa==2)
{
if(levylle==1)
{
plotname1<-paste0(polku, plotname)
# svg(filename=plotname1, width=6, height=3, pointsize=12)
}
gee1<- ggplot(xy, aes(x =Pvm , y = Tapauksia)) +geom_point()+
ggtitle("Suomen 1. koronavirusaalto alkuvuosi 2020") +
xlab("Kuukausi vuonna 2020") + ylab("Koronavirustapauksia")+
theme(title=element_text(size=15), axis.text=element_text(size=14,face="bold"),axis.title=element_text(size=14,face="bold"))+
geom_line(lwd=1.2,lty=1, colour="#00003f")
gee2=gee1 + geom_text(x=18400, y=250, size=5, label=paste0(" Alkoi 26. helmikuuta, nousi huippuunsa 38 pv"), color="#7f3f2f")
gee2=gee2 + geom_text(x=18400, y=220, size=5, label=paste0(" Huippu 4. huhtikuuta , 267 tapausta"), color="#7f3f2f")
gee2=gee2 + geom_text(x=18335, y=200, size=6.0, label= paste0(" Kasvoi ",rearly, " % pv\nR0 ", r01), color="#af0000")
gee2=gee2 + geom_text(x=18330, y=130, size=6.0, label= paste0(" Kaksinkertaistui \n",doublingearly[1],"-",doublingearly[2], " pv"), color="#7f0000")
gee2=gee2 + geom_text(x=18430, y=180, size=6, label= paste0(" Hiipui ",rlate, " % pv, R0 ",r02), color="#0000af")
gee2=gee2 + geom_text(x=18430, y=130, size=6, label=paste0(" Puolittui ",halvinglate[1],"-",halvinglate[2], " pv") , color="#0000af")
plot(gee2)
if(levylle==1)
{
ggsave(file=plotname1, plot=gee2, width=10, height=4)
# dev.off()
}
}
Licensing
[edit]- You are free:
- to share – to copy, distribute and transmit the work
- to remix – to adapt the work
- Under the following conditions:
- attribution – You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
- share alike – If you remix, transform, or build upon the material, you must distribute your contributions under the same or compatible license as the original.
File history
Click on a date/time to view the file as it appeared at that time.
Date/Time | Thumbnail | Dimensions | User | Comment | |
---|---|---|---|---|---|
current | 13:41, 12 January 2021 | 512 × 205 (292 KB) | Merikanto (talk | contribs) | Update | |
06:32, 1 August 2020 | 512 × 205 (298 KB) | Merikanto (talk | contribs) | Update of information in image: R0, time of peak | ||
06:01, 1 August 2020 | 512 × 205 (194 KB) | Merikanto (talk | contribs) | Update | ||
17:03, 31 July 2020 | 990 × 540 (120 KB) | Merikanto (talk | contribs) | Uploaded own work with UploadWizard |
You cannot overwrite this file.
File usage on Commons
There are no pages that use this file.
Metadata
This file contains additional information such as Exif metadata which may have been added by the digital camera, scanner, or software program used to create or digitize it. If the file has been modified from its original state, some details such as the timestamp may not fully reflect those of the original file. The timestamp is only as accurate as the clock in the camera, and it may be completely wrong.
Width | 100% |
---|---|
Height | 100% |