ProgettoMartinelli2023/Fig_src/gnuplot/bin/gnuplot_figs.gp

679 lines
24 KiB
Gnuplot
Executable File

################################################
# plot the measure (Mean or Variance) as a function of time (on x axis)
# generate plot for aqua terminal
aqua=1
# generate plot for table terminal (print out a multicolumn ASCII table of X Y {Z} R values)
table=1
# generate plot for tikz: standalone output
tikzsa=1
# transparence for filledcurves (confidence interval)
filltransparence=0.3
# gnuplot data file separator
set datafile separator whitespace
# Enable the use of macros
set macros
# unitary cost of energy
costE=1
# unitary cost of having a switch unavailable
costU=10
# cost of having at least a frozen switch at some point during the day
costF=2000
# number of values for Deltam (DPm max age)
ndeltam=5
# number of values for Tthr
ndeltat=6
# number of values for T epsilon1
nepsilon1=7
# number of values for T epsilon2
nepsilon2=7
# number of values for DPepsilon1
ndpepsilon1=7
# number of values for DPepsilon2
ndpepsilon2=7
# time of analysis (min)
t=1440
# number of swithces
n=19
# energy consumed for time unit
energyfortimeunit=7.4/60.0
# get name of current dir
cmd="mypath=$(pwd | sed -e 's/_/-/g'); echo ${mypath##*/} "
currdir=system(cmd)
# bin path
bin="../bin/"
dir="./"
csvfile="Results_results.csv"
csvgzfile="Results_results.csv.gz"
# data file path for scenario name
datapath(name)=sprintf("../%s/%s",name,csvgzfile)
# dir path for data of scenario name
dirdatapath(name)=sprintf("../%s/",name)
# print to check info
print "data file csv: " . csvfile
print "current directory: " . currdir
# get the i-th element of a list s of values separed by sep
wordsep(s,i,sep)=system("echo ".s." |awk '{split($0,v,\"'".sep."'\");print v[".i."]}'")
# remove ext from input
remext(s)=system("echo \"" . tikzfilesa . " \" | awk -F'.' '{NF-=1}1' OFS='.'")
# modulus function
mod(x,y) = (x-floor(x/y)*y)
# round function
round(x)=floor(x +0.5)
# round minutes function, x sec (ending +1 is needed to fix the label for 4800=01:20, otherwise it is labeled with 01:19)
roundmin(x)=floor(x/60.0 +0.5)*60+1
# input function of xticlabels to skip labels based on a step
hhmmlabels(i,step,norm)=(mod(column(0),step)==0)?strftime("%002tH:%002tM",roundmin(column(i)*norm)):NaN
#
# old function where 24:00 is printed as 0:0
# hhmmlabels(i,step,norm)=(mod(column(0),step)==0)?sprintf("%002d:%002d",tm_hour(column(i)*norm),tm_min(column(i)*norm)):NaN
# get global column index of the j-th entry of the i-th block, where each block groups k columns
gcolind(i,j,k)=(i-1)*k+j
# get global column index of the j-th entry of the i-th block (passed by name), where each block groups k columns, nodeind(name)+1 is the index of the i-th block
gcolindbyNodeName(name,j,k)=nodeind(name)*k+j
# convert string to number
ston(i)=i+0
reset
# Delay
fig="01"
measuretype="P"
expbatch="Exp1_N1"
study="RangeStudy-". expbatch
title="Expected Unavailability for Day (min/day) vs Energy Consumption"
scenarios="sim_vardelta_T00_T0w1_DPT0diff1_DPw1_POLICY_0 sim_vardelta_T00_T0w1_DPT0diff1_DPw10_POLICY_0 sim_vardelta_T00_T0w1_DPT0diff10_DPw1_POLICY_0 sim_vardelta_T00_T0w1_DPT0diff10_DPw10_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff1_DPw1_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff1_DPw10_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff10_DPw1_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff10_DPw10_POLICY_0" # space separed list of scenarios to compare
measurets="'\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=1, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=1, T^{dew}_a=10\\)' '\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=10, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=10, T^{dew}_a=10\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=1, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=1, T^{dew}_a=10\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=10, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=10, T^{dew}_a=10\\)'"
serieinds="1" # list of the indexes corresponding to the scenarios to plot
m=words(scenarios) # scenarios
lstyles1="1 2 5 6 3 4 7 8" # lt and dt style for each scenario
lstyles2="1 2 5 6 3 4 7 8" # lt and dt style for each scenario
# check input params
if(words(measurets)>words(scenarios)) {
print "Ops! Fig. #".fig.": Number of scenario labels (".words(measurets).") greater than number of scenarios (".words(scenarios).")"
exit
}
# check input params
if(words(serieinds)>words(scenarios)) {
print "Ops! Fig. #".fig.": Number of series index (".words(serieinds).") greater than number of scenarios (".words(scenarios).")"
exit
}
data(i)=datapath(word(scenarios,i))
serieind(i)=word(serieinds,ston(i))
lstyle(i)=ston(word(lstyles,ston(i)))
# styles
set pointsize 1.5
set style data lines
lstyle(i)=ston(word(lstyles1,ston(i)))
set for [i=1:m] style line i lt lstyle(i) lw 1 pt lstyle(i)
lstyle2(i)=ston(word(lstyles2,ston(i)))
set for [i=1:m] style line i+m lt lstyle2(i) dt 2 lw 1 pt lstyle2(i)
#set style line 1 lt lstyle(1) lw 1 pt 1
#set style line 2 lt lstyle(2) dt lstyle(2) lw 1 pt
measure="Vt_PD_50"
measurelabel="\\(P\\)"
measurey=measurelabel . " (MW)"
measure2="YUsedEnergy"
measurelabel2="\\(\\mu_E\\)"
measurey2=measurelabel2 . " (kWh)"
measuret(i)=sprintf("%s, %s", measurelabel, word(measurets,ston(i)))
measuret2(i)=sprintf("%s, %s", measurelabel2, word(measurets,ston(i)))
tabfile=fig."-measure-".measuretype."-".study.".tab"
tikzfilesa=fig."-measure-".measuretype."-".study."-tikzsa.tex"
tikzfilesanoleg=fig."-measure-".measuretype."-".study."-tikzsa-noleg.tex"
tikzfilesalogy=fig."-measure-".measuretype."-".study."-tikzsa-logy.tex"
tikzfile=fig."-measure-".measuretype."-".study."-tikz.tex"
unset title
set xlabel "Time (sec)"
set ylabel measurey offset -1
#set y2label measurey2
#set format x "%2.1f"
#set format y "%3.2f"
set xtics nomirror
#set xtics add ("0.2" 0.2)
set ytics nomirror
#set y2tics
set xrange [0:86200]
#set yrange [0:400]
#set y2range [0:2200]
#set y2tics add ("2200" 2200)
set border 3
#set key bottom left
#set key at graph -0.2, graph 1 spacing 1.8 maxrows 12
set key at graph 0.3, graph 1 spacing 1.2
unset logscale x
unset logscale y
set term tikz
set output tikzfile
#set label "$V_{B48}$" at 180,0.83
#set arrow from 204,0.828 to 245,0.85
# plot for each scenario
plot "< ../bin/data.awk Vt_PD_50 ../RangeStudy/Results_case33bw_2times_" . expbatch . "_s31415_bradipo_results.csv" using 2:3 with line title "\\(PD_{51}\\)", \
"< ../bin/data.awk Vt_UnsuppliedDemandAbs_50 ../RangeStudy/Results_case33bw_2times_" . expbatch . "_s31415_bradipo_results.csv" using 2:3 with line title "\\(UD_{51}\\)", \
"< ../bin/data.awk Vt_P_50 ../RangeStudy/Results_case33bw_2times_" . expbatch . "_s31415_bradipo_results.csv" using 2:3 with line title "\\(P_{51}\\)"
#plot for[i=1:m:1] "<" .bin. "/datagz.bash " . measure . " " . data(i) using ($0):($3*t*n) with lp ls i title measuret(i) axes x1y1, \
# for[i=1:m:1] "<" .bin. "/datagz.bash " . measure2 . " " . data(i) using ($0):3 with lp ls i+m title measuret2(i) axes x1y2
if( tikzsa ) {
set term tikz standalone
set output tikzfilesa
replot
unset output
cmd="pdflatex -interaction=nonstopmode " . tikzfilesa
system(cmd)
}
if( aqua ) {
set output
set term aqua fig
replot
}
if( table ) {
set format x "% g"
set format y "%g"
set table tabfile
replot
unset table
}
reset
# Delay
fig="02"
measuretype="P"
expbatch="Exp1_N32"
study="RangeStudy-". expbatch
title="Expected Unavailability for Day (min/day) vs Energy Consumption"
scenarios="sim_vardelta_T00_T0w1_DPT0diff1_DPw1_POLICY_0 sim_vardelta_T00_T0w1_DPT0diff1_DPw10_POLICY_0 sim_vardelta_T00_T0w1_DPT0diff10_DPw1_POLICY_0 sim_vardelta_T00_T0w1_DPT0diff10_DPw10_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff1_DPw1_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff1_DPw10_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff10_DPw1_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff10_DPw10_POLICY_0" # space separed list of scenarios to compare
measurets="'\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=1, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=1, T^{dew}_a=10\\)' '\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=10, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=10, T^{dew}_a=10\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=1, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=1, T^{dew}_a=10\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=10, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=10, T^{dew}_a=10\\)'"
serieinds="1" # list of the indexes corresponding to the scenarios to plot
m=words(scenarios) # scenarios
lstyles1="1 2 5 6 3 4 7 8" # lt and dt style for each scenario
lstyles2="1 2 5 6 3 4 7 8" # lt and dt style for each scenario
# check input params
if(words(measurets)>words(scenarios)) {
print "Ops! Fig. #".fig.": Number of scenario labels (".words(measurets).") greater than number of scenarios (".words(scenarios).")"
exit
}
# check input params
if(words(serieinds)>words(scenarios)) {
print "Ops! Fig. #".fig.": Number of series index (".words(serieinds).") greater than number of scenarios (".words(scenarios).")"
exit
}
data(i)=datapath(word(scenarios,i))
serieind(i)=word(serieinds,ston(i))
lstyle(i)=ston(word(lstyles,ston(i)))
# styles
set pointsize 1.5
set style data lines
lstyle(i)=ston(word(lstyles1,ston(i)))
set for [i=1:m] style line i lt lstyle(i) lw 1 pt lstyle(i)
lstyle2(i)=ston(word(lstyles2,ston(i)))
set for [i=1:m] style line i+m lt lstyle2(i) dt 2 lw 1 pt lstyle2(i)
#set style line 1 lt lstyle(1) lw 1 pt 1
#set style line 2 lt lstyle(2) dt lstyle(2) lw 1 pt
measure="Vt_PD_50"
measurelabel="\\(P\\)"
measurey=measurelabel . " (MW)"
measure2="YUsedEnergy"
measurelabel2="\\(\\mu_E\\)"
measurey2=measurelabel2 . " (kWh)"
measuret(i)=sprintf("%s, %s", measurelabel, word(measurets,ston(i)))
measuret2(i)=sprintf("%s, %s", measurelabel2, word(measurets,ston(i)))
tabfile=fig."-measure-".measuretype."-".study.".tab"
tikzfilesa=fig."-measure-".measuretype."-".study."-tikzsa.tex"
tikzfilesanoleg=fig."-measure-".measuretype."-".study."-tikzsa-noleg.tex"
tikzfilesalogy=fig."-measure-".measuretype."-".study."-tikzsa-logy.tex"
tikzfile=fig."-measure-".measuretype."-".study."-tikz.tex"
unset title
set xlabel "Time (sec)"
set ylabel measurey offset -1
#set y2label measurey2
#set format x "%2.1f"
#set format y "%3.2f"
set xtics nomirror
#set xtics add ("0.2" 0.2)
set ytics nomirror
#set y2tics
set xrange [0:86200]
#set yrange [0:400]
#set y2range [0:2200]
#set y2tics add ("2200" 2200)
set border 3
#set key bottom left
#set key at graph -0.2, graph 1 spacing 1.8 maxrows 12
set key at graph 1, graph 0.5 spacing 1.2
unset logscale x
unset logscale y
set term tikz
set output tikzfile
#set label "$V_{B48}$" at 180,0.83
#set arrow from 204,0.828 to 245,0.85
# plot for each scenario
plot "< ../bin/data.awk Vt_PD_50 ../RangeStudy/Results_case33bw_2times_" . expbatch . "_s31415_bradipo_results.csv" using 2:3 with line title "\\(PD_{51}\\)", \
"< ../bin/data.awk Vt_UnsuppliedDemandAbs_50 ../RangeStudy/Results_case33bw_2times_" . expbatch . "_s31415_bradipo_results.csv" using 2:3 with line title "\\(UD_{51}\\)", \
"< ../bin/data.awk Vt_P_50 ../RangeStudy/Results_case33bw_2times_" . expbatch . "_s31415_bradipo_results.csv" using 2:3 with line title "\\(P_{51}\\)"
#plot for[i=1:m:1] "<" .bin. "/datagz.bash " . measure . " " . data(i) using ($0):($3*t*n) with lp ls i title measuret(i) axes x1y1, \
# for[i=1:m:1] "<" .bin. "/datagz.bash " . measure2 . " " . data(i) using ($0):3 with lp ls i+m title measuret2(i) axes x1y2
if( tikzsa ) {
set term tikz standalone
set output tikzfilesa
replot
unset output
cmd="pdflatex -interaction=nonstopmode " . tikzfilesa
system(cmd)
}
if( aqua ) {
set output
set term aqua fig
replot
}
if( table ) {
set format x "% g"
set format y "%g"
set table tabfile
replot
unset table
}
reset
# Delay
fig="03"
measuretype="V"
expbatch="Exp1_N1"
study="RangeStudy-". expbatch
title="Expected Unavailability for Day (min/day) vs Energy Consumption"
scenarios="sim_vardelta_T00_T0w1_DPT0diff1_DPw1_POLICY_0 sim_vardelta_T00_T0w1_DPT0diff1_DPw10_POLICY_0 sim_vardelta_T00_T0w1_DPT0diff10_DPw1_POLICY_0 sim_vardelta_T00_T0w1_DPT0diff10_DPw10_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff1_DPw1_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff1_DPw10_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff10_DPw1_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff10_DPw10_POLICY_0" # space separed list of scenarios to compare
measurets="'\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=1, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=1, T^{dew}_a=10\\)' '\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=10, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=10, T^{dew}_a=10\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=1, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=1, T^{dew}_a=10\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=10, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=10, T^{dew}_a=10\\)'"
serieinds="1" # list of the indexes corresponding to the scenarios to plot
m=words(scenarios) # scenarios
lstyles1="1 2 5 6 3 4 7 8" # lt and dt style for each scenario
lstyles2="1 2 5 6 3 4 7 8" # lt and dt style for each scenario
# check input params
if(words(measurets)>words(scenarios)) {
print "Ops! Fig. #".fig.": Number of scenario labels (".words(measurets).") greater than number of scenarios (".words(scenarios).")"
exit
}
# check input params
if(words(serieinds)>words(scenarios)) {
print "Ops! Fig. #".fig.": Number of series index (".words(serieinds).") greater than number of scenarios (".words(scenarios).")"
exit
}
data(i)=datapath(word(scenarios,i))
serieind(i)=word(serieinds,ston(i))
lstyle(i)=ston(word(lstyles,ston(i)))
# styles
set pointsize 1.5
set style data lines
lstyle(i)=ston(word(lstyles1,ston(i)))
set for [i=1:m] style line i lt lstyle(i) lw 1 pt lstyle(i)
lstyle2(i)=ston(word(lstyles2,ston(i)))
set for [i=1:m] style line i+m lt lstyle2(i) dt 2 lw 1 pt lstyle2(i)
#set style line 1 lt lstyle(1) lw 1 pt 1
#set style line 2 lt lstyle(2) dt lstyle(2) lw 1 pt
measure="Vt_PD_50"
measurelabel="\\(V\\)"
measurey=measurelabel . " (p.u.)"
measure2="YUsedEnergy"
measurelabel2="\\(\\mu_E\\)"
measurey2=measurelabel2 . " (kWh)"
measuret(i)=sprintf("%s, %s", measurelabel, word(measurets,ston(i)))
measuret2(i)=sprintf("%s, %s", measurelabel2, word(measurets,ston(i)))
tabfile=fig."-measure-".measuretype."-".study.".tab"
tikzfilesa=fig."-measure-".measuretype."-".study."-tikzsa.tex"
tikzfilesanoleg=fig."-measure-".measuretype."-".study."-tikzsa-noleg.tex"
tikzfilesalogy=fig."-measure-".measuretype."-".study."-tikzsa-logy.tex"
tikzfile=fig."-measure-".measuretype."-".study."-tikz.tex"
unset title
set xlabel "Time (sec)"
set ylabel measurey offset -1
#set y2label measurey2
#set format x "%2.1f"
#set format y "%3.2f"
set xtics nomirror
#set xtics add ("0.2" 0.2)
set ytics nomirror
#set y2tics
set xrange [0:86200]
set yrange [0.9:1.1]
#set y2range [0:2200]
#set y2tics add ("2200" 2200)
set border 3
#set key bottom left
#set key at graph -0.2, graph 1 spacing 1.8 maxrows 12
set key at graph 0.8, graph 1
unset logscale x
unset logscale y
set term tikz
set output tikzfile
#set label "$V_{B48}$" at 180,0.83
#set arrow from 204,0.828 to 245,0.85
# plot for each scenario
plot "< ../bin/data.awk Vt_V_50 ../RangeStudy/Results_case33bw_2times_" . expbatch . "_s31415_bradipo_results.csv" using 2:3 with line title "\\(V_{51}\\)"
#plot for[i=1:m:1] "<" .bin. "/datagz.bash " . measure . " " . data(i) using ($0):($3*t*n) with lp ls i title measuret(i) axes x1y1, \
# for[i=1:m:1] "<" .bin. "/datagz.bash " . measure2 . " " . data(i) using ($0):3 with lp ls i+m title measuret2(i) axes x1y2
if( tikzsa ) {
set term tikz standalone
set output tikzfilesa
replot
unset output
cmd="pdflatex -interaction=nonstopmode " . tikzfilesa
system(cmd)
}
if( aqua ) {
set output
set term aqua fig
replot
}
if( table ) {
set format x "% g"
set format y "%g"
set table tabfile
replot
unset table
}
reset
reset
# Delay
fig="04"
measuretype="V"
expbatch="Exp1_N32"
study="RangeStudy-". expbatch
title="Expected Unavailability for Day (min/day) vs Energy Consumption"
scenarios="sim_vardelta_T00_T0w1_DPT0diff1_DPw1_POLICY_0 sim_vardelta_T00_T0w1_DPT0diff1_DPw10_POLICY_0 sim_vardelta_T00_T0w1_DPT0diff10_DPw1_POLICY_0 sim_vardelta_T00_T0w1_DPT0diff10_DPw10_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff1_DPw1_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff1_DPw10_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff10_DPw1_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff10_DPw10_POLICY_0" # space separed list of scenarios to compare
measurets="'\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=1, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=1, T^{dew}_a=10\\)' '\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=10, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=10, T^{dew}_a=10\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=1, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=1, T^{dew}_a=10\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=10, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=10, T^{dew}_a=10\\)'"
serieinds="1" # list of the indexes corresponding to the scenarios to plot
m=words(scenarios) # scenarios
lstyles1="1 2 5 6 3 4 7 8" # lt and dt style for each scenario
lstyles2="1 2 5 6 3 4 7 8" # lt and dt style for each scenario
# check input params
if(words(measurets)>words(scenarios)) {
print "Ops! Fig. #".fig.": Number of scenario labels (".words(measurets).") greater than number of scenarios (".words(scenarios).")"
exit
}
# check input params
if(words(serieinds)>words(scenarios)) {
print "Ops! Fig. #".fig.": Number of series index (".words(serieinds).") greater than number of scenarios (".words(scenarios).")"
exit
}
data(i)=datapath(word(scenarios,i))
serieind(i)=word(serieinds,ston(i))
lstyle(i)=ston(word(lstyles,ston(i)))
# styles
set pointsize 1.5
set style data lines
lstyle(i)=ston(word(lstyles1,ston(i)))
set for [i=1:m] style line i lt lstyle(i) lw 1 pt lstyle(i)
lstyle2(i)=ston(word(lstyles2,ston(i)))
set for [i=1:m] style line i+m lt lstyle2(i) dt 2 lw 1 pt lstyle2(i)
#set style line 1 lt lstyle(1) lw 1 pt 1
#set style line 2 lt lstyle(2) dt lstyle(2) lw 1 pt
measure="Vt_PD_50"
measurelabel="\\(V\\)"
measurey=measurelabel . " (p.u.)"
measure2="YUsedEnergy"
measurelabel2="\\(\\mu_E\\)"
measurey2=measurelabel2 . " (kWh)"
measuret(i)=sprintf("%s, %s", measurelabel, word(measurets,ston(i)))
measuret2(i)=sprintf("%s, %s", measurelabel2, word(measurets,ston(i)))
tabfile=fig."-measure-".measuretype."-".study.".tab"
tikzfilesa=fig."-measure-".measuretype."-".study."-tikzsa.tex"
tikzfilesanoleg=fig."-measure-".measuretype."-".study."-tikzsa-noleg.tex"
tikzfilesalogy=fig."-measure-".measuretype."-".study."-tikzsa-logy.tex"
tikzfile=fig."-measure-".measuretype."-".study."-tikz.tex"
unset title
set xlabel "Time (sec)"
set ylabel measurey offset -1
#set y2label measurey2
#set format x "%2.1f"
#set format y "%3.2f"
set xtics nomirror
#set xtics add ("0.2" 0.2)
set ytics nomirror
#set y2tics
set xrange [0:86200]
set yrange [0.05:0.07]
#set y2range [0:2200]
#set y2tics add ("2200" 2200)
set border 3
#set key bottom left
#set key at graph -0.2, graph 1 spacing 1.8 maxrows 12
set key at graph 0.8, graph 1
unset logscale x
unset logscale y
set term tikz
set output tikzfile
#set label "$V_{B48}$" at 180,0.83
#set arrow from 204,0.828 to 245,0.85
# plot for each scenario
plot "< ../bin/data.awk Vt_V_50 ../RangeStudy/Results_case33bw_2times_" . expbatch . "_s31415_bradipo_results.csv" using 2:3 with line title "\\(V_{51}\\)"
#plot for[i=1:m:1] "<" .bin. "/datagz.bash " . measure . " " . data(i) using ($0):($3*t*n) with lp ls i title measuret(i) axes x1y1, \
# for[i=1:m:1] "<" .bin. "/datagz.bash " . measure2 . " " . data(i) using ($0):3 with lp ls i+m title measuret2(i) axes x1y2
if( tikzsa ) {
set term tikz standalone
set output tikzfilesa
replot
unset output
cmd="pdflatex -interaction=nonstopmode " . tikzfilesa
system(cmd)
}
if( aqua ) {
set output
set term aqua fig
replot
}
if( table ) {
set format x "% g"
set format y "%g"
set table tabfile
replot
unset table
}
reset
# Delay
fig="10"
measuretype="P"
expbatch="Exp1_N1"
study="RangeStudy-". expbatch
title="Expected Unavailability for Day (min/day) vs Energy Consumption"
scenarios="sim_vardelta_T00_T0w1_DPT0diff1_DPw1_POLICY_0 sim_vardelta_T00_T0w1_DPT0diff1_DPw10_POLICY_0 sim_vardelta_T00_T0w1_DPT0diff10_DPw1_POLICY_0 sim_vardelta_T00_T0w1_DPT0diff10_DPw10_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff1_DPw1_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff1_DPw10_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff10_DPw1_POLICY_0 sim_vardelta_T00_T0w10_DPT0diff10_DPw10_POLICY_0" # space separed list of scenarios to compare
measurets="'\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=1, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=1, T^{dew}_a=10\\)' '\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=10, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=1, \\Delta{T}^{dew}_0=10, T^{dew}_a=10\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=1, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=1, T^{dew}_a=10\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=10, T^{dew}_a=1\\)' '\\(\\bar{T}_0=0, T^a_0=10, \\Delta{T}^{dew}_0=10, T^{dew}_a=10\\)'"
serieinds="1" # list of the indexes corresponding to the scenarios to plot
m=words(scenarios) # scenarios
lstyles1="1 2 5 6 3 4 7 8" # lt and dt style for each scenario
lstyles2="1 2 5 6 3 4 7 8" # lt and dt style for each scenario
# check input params
if(words(measurets)>words(scenarios)) {
print "Ops! Fig. #".fig.": Number of scenario labels (".words(measurets).") greater than number of scenarios (".words(scenarios).")"
exit
}
# check input params
if(words(serieinds)>words(scenarios)) {
print "Ops! Fig. #".fig.": Number of series index (".words(serieinds).") greater than number of scenarios (".words(scenarios).")"
exit
}
data(i)=datapath(word(scenarios,i))
serieind(i)=word(serieinds,ston(i))
lstyle(i)=ston(word(lstyles,ston(i)))
# styles
set pointsize 1.5
set style data lines
lstyle(i)=ston(word(lstyles1,ston(i)))
set for [i=1:m] style line i lt lstyle(i) lw 1 pt lstyle(i)
lstyle2(i)=ston(word(lstyles2,ston(i)))
set for [i=1:m] style line i+m lt lstyle2(i) dt 2 lw 1 pt lstyle2(i)
#set style line 1 lt lstyle(1) lw 1 pt 1
#set style line 2 lt lstyle(2) dt lstyle(2) lw 1 pt
measure="Vt_PD_50"
measurelabel="\\(P\\)"
measurey=measurelabel . " (MW)"
measure2="YUsedEnergy"
measurelabel2="\\(\\mu_E\\)"
measurey2=measurelabel2 . " (kWh)"
measuret(i)=sprintf("%s, %s", measurelabel, word(measurets,ston(i)))
measuret2(i)=sprintf("%s, %s", measurelabel2, word(measurets,ston(i)))
tabfile=fig."-measure-".measuretype."-".study.".tab"
tikzfilesa=fig."-measure-".measuretype."-".study."-tikzsa.tex"
tikzfilesanoleg=fig."-measure-".measuretype."-".study."-tikzsa-noleg.tex"
tikzfilesalogy=fig."-measure-".measuretype."-".study."-tikzsa-logy.tex"
tikzfile=fig."-measure-".measuretype."-".study."-tikz.tex"
unset title
set xlabel "Time (sec)"
set ylabel measurey offset -1
#set y2label measurey2
#set format x "%2.1f"
#set format y "%3.2f"
set xtics nomirror
#set xtics add ("0.2" 0.2)
set ytics nomirror
#set y2tics
set xrange [0:86200]
#set yrange [0:400]
#set y2range [0:2200]
#set y2tics add ("2200" 2200)
set border 3
#set key bottom left
#set key at graph -0.2, graph 1 spacing 1.8 maxrows 12
set key at graph 0.3, graph 1 spacing 1.2
unset logscale x
unset logscale y
set term tikz
set output tikzfile
#set label "$V_{B48}$" at 180,0.83
#set arrow from 204,0.828 to 245,0.85
# plot for each scenario
plot 0.12 title "\\(PD_{61}\\)", \
"< ../bin/data.awk Vt_UnsuppliedDemandAbs_61 ../RangeStudy/Results_case33bw_2times_FailBranch45_" . expbatch . "_s31415_bradipo_results.csv" using 2:3 with line title "\\(UD_{62}\\)", \
"< ../bin/data.awk Vt_P_61 ../RangeStudy/Results_case33bw_2times_FailBranch45_" . expbatch . "_s31415_bradipo_results.csv" using 2:3 with line title "\\(P_{62}\\)"
#plot for[i=1:m:1] "<" .bin. "/datagz.bash " . measure . " " . data(i) using ($0):($3*t*n) with lp ls i title measuret(i) axes x1y1, \
# for[i=1:m:1] "<" .bin. "/datagz.bash " . measure2 . " " . data(i) using ($0):3 with lp ls i+m title measuret2(i) axes x1y2
if( tikzsa ) {
set term tikz standalone
set output tikzfilesa
replot
unset output
cmd="pdflatex -interaction=nonstopmode " . tikzfilesa
system(cmd)
}
if( aqua ) {
set output
set term aqua fig
replot
}
if( table ) {
set format x "% g"
set format y "%g"
set table tabfile
replot
unset table
}
reset