diff options
| author | Loic Guegan <manzerbredes@mailbox.org> | 2021-06-17 10:34:07 +0200 |
|---|---|---|
| committer | Loic Guegan <manzerbredes@mailbox.org> | 2021-06-17 10:34:07 +0200 |
| commit | 6e1141431ccb70b98c71fc562c263773e8838e6a (patch) | |
| tree | 388eaf6932fc8acdbda71580f7a0301b6a782018 /results/analysis2.R | |
| parent | 82b5b6a0768755b6da24f8daad794f0c4bb43108 (diff) | |
Update simu
Diffstat (limited to 'results/analysis2.R')
| -rw-r--r-- | results/analysis2.R | 119 |
1 files changed, 71 insertions, 48 deletions
diff --git a/results/analysis2.R b/results/analysis2.R index 43a1193..6fa7219 100644 --- a/results/analysis2.R +++ b/results/analysis2.R @@ -4,112 +4,135 @@ library("gridExtra") data=read_csv("results.csv") r_=function(x){round(x,digits=1)} color=function(){scale_fill_manual(values = c("#00AFBB", "#E7B800", "#FC4E07"))} +simkeys=unique(data$simkey) +nsimkeys=length(simkeys) +s_=function(x){if(x<0){return("")}else{return("+")}} energy60=data%>%filter(wakeupfor==60) energy60Snd=energy60%>%filter(isSender==1)%>%group_by(simkey,wireless)%>%summarise(sd=sd(energy),energy=mean(energy),type="Sender") energy60Rcv=energy60%>%filter(isSender==0)%>%group_by(simkey,wireless)%>%summarise(sd=sd(energy),energy=mean(energy),type="Receiver") energy60=energy60Snd%>%ungroup()%>%rbind(energy60Rcv)%>%mutate(type=factor(type,levels = c("Sender","Receiver"))) -energy60=energy60%>%mutate(sd_min=energy-sd,sd_max=energy+sd)%>%mutate(sd_min_txt=paste0("-",r_(sd)))%>%mutate(sd_max_txt=paste0("+",r_(sd))) +energy60=energy60%>%mutate(sd_min=energy-sd,sd_max=energy+sd)%>%mutate(sd_min_txt=paste0("-",r_(sd_min)))%>%mutate(sd_max_txt=paste0("+",r_(sd_max))) +energy60Baseline=energy60%>%filter(simkey=="baseline")%>%uncount(nsimkeys,.id="id")%>%mutate(simkey=simkeys[id]) +energy60=energy60%>%left_join(energy60Baseline,by=c("simkey","wireless","type"),suffix = c("","_baseline")) +energy60=energy60%>%mutate(ovhd=energy*100/energy_baseline-100) +energy60=energy60%>%rowwise()%>%mutate(ovhd_txt=paste0("(",s_(ovhd),r_(ovhd),"%)")) +success60=data%>%filter(wakeupfor==60)%>%filter(isSender!=0)%>%group_by(simkey,wireless,wakeupfor)%>%summarise(success=r_(mean(nSend)),type="Sender") +success60=success60%>%rowwise()%>%mutate(success_txt=paste0("[",success,"]")) energy60P=ggplot(energy60,aes(x=simkey,y=energy,fill=type))+ - geom_bar(stat="identity",position=position_dodge())+ - geom_errorbar(position=position_dodge(0.9),aes(ymin=energy-sd, ymax=energy+sd),width=0.5,size=1.5)+ - geom_text(aes(label = sd_max_txt, y= sd_max),vjust=-0.4,position=position_dodge(0.9))+ - geom_text(aes(label = sd_min_txt, y= sd_min),vjust=+1.5,position=position_dodge(0.9))+ - geom_text(aes(label = r_(energy), y= energy/2),fontface="bold",colour="white",position=position_dodge(0.9))+ + geom_bar(colour="black", stat="identity",position=position_dodge())+ + geom_errorbar(position=position_dodge(0.9),aes(ymin=energy-sd, ymax=energy+sd),width=0.3,size=1)+ + geom_text(aes(label = r_(sd_max), y= sd_max),vjust=-0.4,position=position_dodge(0.9))+ + geom_text(aes(label = r_(sd_min), y= sd_min),vjust=+1.5,position=position_dodge(0.9))+ + geom_text(aes(label = paste0(r_(energy),"\n",ovhd_txt), y= min(energy)/2),fontface="bold",colour="white",position=position_dodge(0.9))+ + geom_label(data=success60,aes(label = success_txt, y=80),label.padding=unit(0.3,"lines"),label.r=unit(0.09,"lines"),fill="white",label.size=0,fontface="bold",colour="black",position=position_dodge(0.9))+ facet_wrap(~wireless)+ xlab("Policy")+ylab("Energy Consumption (J)")+ - labs(fill="Node type")+theme(legend.position="top")+color() + labs(fill="Node type")+theme(legend.position="top")+color()+coord_cartesian(ylim=c(0,1200)) #ggsave("energy-60sec.png",width = 12,height=4.8) energy180=data%>%filter(wakeupfor==180) energy180Snd=energy180%>%filter(isSender==1)%>%group_by(simkey,wireless)%>%summarise(sd=sd(energy),energy=mean(energy),type="Sender") energy180Rcv=energy180%>%filter(isSender==0)%>%group_by(simkey,wireless)%>%summarise(sd=sd(energy),energy=mean(energy),type="Receiver") energy180=energy180Snd%>%ungroup()%>%rbind(energy180Rcv)%>%mutate(type=factor(type,levels = c("Sender","Receiver"))) -energy180=energy180%>%mutate(sd_min=energy-sd,sd_max=energy+sd)%>%mutate(sd_min_txt=paste0("-",r_(sd)))%>%mutate(sd_max_txt=paste0("+",r_(sd))) +energy180=energy180%>%mutate(sd_min=energy-sd,sd_max=energy+sd)%>%mutate(sd_min_txt=paste0("-",r_(sd_min)))%>%mutate(sd_max_txt=paste0("+",r_(sd_max))) +energy180Baseline=energy180%>%filter(simkey=="baseline")%>%uncount(nsimkeys,.id="id")%>%mutate(simkey=simkeys[id]) +energy180=energy180%>%left_join(energy180Baseline,by=c("simkey","wireless","type"),suffix = c("","_baseline")) +energy180=energy180%>%mutate(ovhd=energy*100/energy_baseline-100) +energy180=energy180%>%rowwise()%>%mutate(ovhd_txt=paste0("(",s_(ovhd),r_(ovhd),"%)")) +success180=data%>%filter(wakeupfor==180)%>%filter(isSender!=0)%>%group_by(simkey,wireless,wakeupfor)%>%summarise(success=r_(mean(nSend)),type="Sender") +success180=success180%>%rowwise()%>%mutate(success_txt=paste0("[",success,"]")) + energy180P=ggplot(energy180,aes(x=simkey,y=energy,fill=type))+ - geom_bar(stat="identity",position=position_dodge())+ - geom_errorbar(position=position_dodge(0.9),aes(ymin=energy-sd, ymax=energy+sd),width=0.5,size=1.5)+ - geom_text(aes(label = sd_max_txt, y= sd_max),vjust=-0.4,position=position_dodge(0.9))+ - geom_text(aes(label = sd_min_txt, y= sd_min),vjust=+1.5,position=position_dodge(0.9))+ - geom_text(aes(label = r_(energy), y= energy/2),fontface="bold",colour="white",position=position_dodge(0.9))+ + geom_bar(colour="black",stat="identity",position=position_dodge())+ + geom_errorbar(position=position_dodge(0.9),aes(ymin=energy-sd, ymax=energy+sd),width=0.3,size=1)+ + geom_text(aes(label = r_(sd_max), y= sd_max),vjust=-0.4,position=position_dodge(0.9))+ + geom_text(aes(label = r_(sd_min), y= sd_min),vjust=+1.5,position=position_dodge(0.9))+ + geom_text(aes(label = paste0(r_(energy),"\n",ovhd_txt), y= min(energy)/2),fontface="bold",colour="white",position=position_dodge(0.9))+ + geom_label(data=success180,aes(label = success_txt, y=210),label.padding=unit(0.3,"lines"),label.r=unit(0.09,"lines"),fill="white",label.size=0,fontface="bold",colour="black",position=position_dodge(0.9))+ facet_wrap(~wireless)+ xlab("Policy")+ylab("Energy Consumption (J)")+ - labs(fill="Node type")+theme(legend.position="top")+color() + labs(fill="Node type")+theme(legend.position="top")+color()+coord_cartesian(ylim=c(0,2600)) #ggsave("energy-180sec.png",width = 12,height=4.8) - -success60=data%>%filter(wakeupfor==60) -success60=success60%>%filter(isSender==1)%>%group_by(simkey,wireless)%>%summarise(sd=sd(nSend),success=mean(nSend)) -success60=success60%>%mutate(sd_min=success-sd,sd_max=success+sd)%>%mutate(sd_min_txt=paste0("-",r_(sd)))%>%mutate(sd_max_txt=paste0("+",r_(sd))) - - - totalUptime60=data%>%filter(wakeupfor==60) totalUptime60Snd=totalUptime60%>%filter(isSender==1)%>%group_by(simkey,wireless)%>%summarise(sd=sd(totalUptime),totalUptime=mean(totalUptime),type="Sender") totalUptime60Rcv=totalUptime60%>%filter(isSender==0)%>%group_by(simkey,wireless)%>%summarise(sd=sd(totalUptime),totalUptime=mean(totalUptime),type="Receiver") totalUptime60=totalUptime60Snd%>%ungroup()%>%rbind(totalUptime60Rcv)%>%mutate(type=factor(type,levels = c("Sender","Receiver"))) -totalUptime60=totalUptime60%>%mutate(sd_min=totalUptime-sd,sd_max=totalUptime+sd)%>%mutate(sd_min_txt=paste0("-",r_(sd)))%>%mutate(sd_max_txt=paste0("+",r_(sd))) +totalUptime60=totalUptime60%>%mutate(sd_min=totalUptime-sd,sd_max=totalUptime+sd)%>%mutate(sd_min_txt=paste0("-",r_(sd_min)))%>%mutate(sd_max_txt=paste0("+",r_(sd_max))) +totalUptime60Baseline=totalUptime60%>%filter(simkey=="baseline")%>%uncount(nsimkeys,.id="id")%>%mutate(simkey=simkeys[id]) +totalUptime60=totalUptime60%>%left_join(totalUptime60Baseline,by=c("simkey","wireless","type"),suffix = c("","_baseline")) +totalUptime60=totalUptime60%>%mutate(ovhd=totalUptime-totalUptime_baseline) +totalUptime60=totalUptime60%>%rowwise()%>%mutate(ovhd_txt=paste0("(",s_(ovhd),r_(ovhd),")")) + totalUptime60P=ggplot(totalUptime60,aes(x=simkey,y=totalUptime,fill=type))+ - geom_bar(stat="identity",position=position_dodge())+ - geom_errorbar(position=position_dodge(0.9),aes(ymin=totalUptime-sd, ymax=totalUptime+sd),width=0.5,size=1.5)+ - geom_text(aes(label = sd_max_txt, y= sd_max),vjust=-0.4,position=position_dodge(0.9))+ - geom_text(aes(label = sd_min_txt, y= sd_min),vjust=+1.5,position=position_dodge(0.9))+ - geom_text(aes(label = r_(totalUptime), y= totalUptime/2),fontface="bold",colour="white",position=position_dodge(0.9))+ + geom_bar(colour="black", linetype="dashed", stat="identity",position=position_dodge())+ + geom_errorbar(position=position_dodge(0.9),aes(ymin=totalUptime-sd, ymax=totalUptime+sd),width=0.3,size=1)+ + geom_text(aes(label = r_(sd_max), y= sd_max),vjust=-0.4,position=position_dodge(0.9))+ + geom_text(aes(label = r_(sd_min), y= sd_min),vjust=+1.5,position=position_dodge(0.9))+ + geom_text(aes(label = paste0(r_(totalUptime),"\n",ovhd_txt), y= min(totalUptime)/2),fontface="bold",colour="white",position=position_dodge(0.9))+ facet_wrap(~wireless)+ xlab("Policy")+ylab("Accumulated Uptime Consumption (s)")+ - labs(fill="Node type")+theme(legend.position="none")+color() + labs(fill="Node type")+theme(legend.position="none")+color()+coord_cartesian(ylim=c(0,2500)) totalUptime180=data%>%filter(wakeupfor==180) totalUptime180Snd=totalUptime180%>%filter(isSender==1)%>%group_by(simkey,wireless)%>%summarise(sd=sd(totalUptime),totalUptime=mean(totalUptime),type="Sender") totalUptime180Rcv=totalUptime180%>%filter(isSender==0)%>%group_by(simkey,wireless)%>%summarise(sd=sd(totalUptime),totalUptime=mean(totalUptime),type="Receiver") totalUptime180=totalUptime180Snd%>%ungroup()%>%rbind(totalUptime180Rcv)%>%mutate(type=factor(type,levels = c("Sender","Receiver"))) -totalUptime180=totalUptime180%>%mutate(sd_min=totalUptime-sd,sd_max=totalUptime+sd)%>%mutate(sd_min_txt=paste0("-",r_(sd)))%>%mutate(sd_max_txt=paste0("+",r_(sd))) +totalUptime180=totalUptime180%>%mutate(sd_min=totalUptime-sd,sd_max=totalUptime+sd)%>%mutate(sd_min_txt=paste0("-",r_(sd_min)))%>%mutate(sd_max_txt=paste0("+",r_(sd_max))) +totalUptime180Baseline=totalUptime180%>%filter(simkey=="baseline")%>%uncount(nsimkeys,.id="id")%>%mutate(simkey=simkeys[id]) +totalUptime180=totalUptime180%>%left_join(totalUptime180Baseline,by=c("simkey","wireless","type"),suffix = c("","_baseline")) +totalUptime180=totalUptime180%>%mutate(ovhd=totalUptime-totalUptime_baseline) +totalUptime180=totalUptime180%>%rowwise()%>%mutate(ovhd_txt=paste0("(",s_(ovhd),r_(ovhd),")")) totalUptime180P=ggplot(totalUptime180,aes(x=simkey,y=totalUptime,fill=type))+ - geom_bar(stat="identity",position=position_dodge())+ - geom_errorbar(position=position_dodge(0.9),aes(ymin=totalUptime-sd, ymax=totalUptime+sd),width=0.5,size=1.5)+ - geom_text(aes(label = sd_max_txt, y= sd_max),vjust=-0.4,position=position_dodge(0.9))+ - geom_text(aes(label = sd_min_txt, y= sd_min),vjust=+1.5,position=position_dodge(0.9))+ - geom_text(aes(label = r_(totalUptime), y= totalUptime/2),fontface="bold",colour="white",position=position_dodge(0.9))+ + geom_bar(colour="black", linetype="dashed",stat="identity",position=position_dodge())+ + geom_errorbar(position=position_dodge(0.9),aes(ymin=totalUptime-sd, ymax=totalUptime+sd),width=0.3,size=1)+ + geom_text(aes(label = r_(sd_max), y= sd_max),vjust=-0.4,position=position_dodge(0.9))+ + geom_text(aes(label = r_(sd_min), y= sd_min),vjust=+1.5,position=position_dodge(0.9))+ + geom_text(aes(label = paste0(r_(totalUptime),"\n",ovhd_txt), y= min(totalUptime)/2),fontface="bold",colour="white",position=position_dodge(0.9))+ facet_wrap(~wireless)+ xlab("Policy")+ylab("Accumulated Uptime Consumption (s)")+ - labs(fill="Node type")+theme(legend.position="none")+color() + labs(fill="Node type")+theme(legend.position="none")+color()+coord_cartesian(ylim=c(0,5600)) +success60=data%>%filter(wakeupfor==60) +success60=success60%>%filter(isSender==1)%>%group_by(simkey,wireless)%>%summarise(sd=sd(nSend),success=mean(nSend)) +success60=success60%>%mutate(sd_min=success-sd,sd_max=success+sd) success60P=ggplot(success60,aes(x=simkey,y=success))+ geom_bar(stat="identity",position=position_dodge(),fill="gray50")+ - geom_errorbar(position=position_dodge(0.9),aes(ymin=success-sd, ymax=success+sd),width=0.5,size=1.5)+ - geom_text(aes(label = sd_max_txt, y= sd_max),vjust=-0.4,position=position_dodge(0.9))+ - geom_text(aes(label = sd_min_txt, y= sd_min),vjust=+1.5,position=position_dodge(0.9))+ + geom_errorbar(position=position_dodge(0.9),aes(ymin=success-sd, ymax=success+sd),width=0.2,size=1)+ + geom_text(aes(label = r_(sd_max), y= sd_max),vjust=-0.4,position=position_dodge(0.9))+ + geom_text(aes(label = r_(sd_min), y= sd_min),vjust=+1.5,position=position_dodge(0.9))+ geom_text(aes(label = r_(success), y= success/2),fontface="bold",colour="white",position=position_dodge(0.9))+ facet_wrap(~wireless)+ xlab("Policy")+ylab("Number of success")+ - labs(fill="Node type")+theme(legend.position="none")+color() + labs(fill="Node type")+theme(legend.position="none")+color()+coord_cartesian(ylim=c(0,11)) #ggsave("success-60sec.png",width = 5.8,height=4.2) success180=data%>%filter(wakeupfor==180) success180=success180%>%filter(isSender==1)%>%group_by(simkey,wireless)%>%summarise(sd=sd(nSend),success=mean(nSend)) -success180=success180%>%mutate(sd_min=success-sd,sd_max=success+sd)%>%mutate(sd_min_txt=paste0("-",r_(sd)))%>%mutate(sd_max_txt=paste0("+",r_(sd))) +success180=success180%>%mutate(sd_min=success-sd,sd_max=success+sd) success180P=ggplot(success180,aes(x=simkey,y=success))+ geom_bar(stat="identity",position=position_dodge(),fill="gray50")+ - geom_errorbar(position=position_dodge(0.9),aes(ymin=success-sd, ymax=success+sd),width=0.5,size=1.5)+ - geom_text(aes(label = sd_max_txt, y= sd_max),vjust=-0.4,position=position_dodge(0.9))+ - geom_text(aes(label = sd_min_txt, y= sd_min),vjust=+1.5,position=position_dodge(0.9))+ + geom_errorbar(position=position_dodge(0.9),aes(ymin=success-sd, ymax=success+sd),width=0.2,size=1)+ + geom_text(aes(label = r_(sd_max), y= sd_max),vjust=-0.4,position=position_dodge(0.9))+ + geom_text(aes(label = r_(sd_min), y= sd_min),vjust=+1.5,position=position_dodge(0.9))+ geom_text(aes(label = r_(success), y= success/2),fontface="bold",colour="white",position=position_dodge(0.9))+ facet_wrap(~wireless)+ xlab("Policy")+ylab("Number of success")+ - labs(fill="Node type")+theme(legend.position="none")+color() + labs(fill="Node type")+theme(legend.position="none")+color()+coord_cartesian(ylim=c(0,13)) #ggsave("success-180sec.png",width = 5.8,height=4.2) -sec60P=grid.arrange(energy60P,totalUptime60P,success60P,heights=c(2,2,2),widths=1,ncol=1) -ggsave("60sec.png",plot=sec60P,width=11,height=15) +sec60P=grid.arrange(energy60P,totalUptime60P,heights=c(1.3,1),widths=1,ncol=1) +ggsave("60sec.pdf",plot=sec60P,width=12,height=7) -sec180P=grid.arrange(energy180P,totalUptime180P,success180P,heights=c(2,2,2),widths=1,ncol=1) -ggsave("180sec.png",plot=sec180P,width=11,height=15) +sec180P=grid.arrange(energy180P,totalUptime180P,heights=c(1,1),widths=1,ncol=1) +ggsave("180sec.pdf",plot=sec180P,width=12,height=7) |
