Key features:
function with constants, text within image ("labels"), aligned subscripts and superscripts, scale bar in image (actually a combination of "arrows" at chosen locations), error bars, Greek characters (capital delta, lowercase rho), publication quality
This image is Fig. 6 from my fourth publication.
The 2 most helpful features of this figure are probably:
the scale bar (looks like a capital "i" in the lower right-hand corner of the image). This is composed of 3 special lines known as "arrows" in gnuplot. For these arrows, we define the starting and ending point. It takes a bit of effort to map out exactly where all your arrow starting and ending points should be; but in theory, any shape composed of straight lines can be drawn with arrows.
The Delta G legend labels in the figure have both subscripts and superscripts. The trick is to align both the sub- and superscripts to the same horizontal location. For example, see title "{/Symbol D}G__@{BN}^{/Symbol r}" below.
If you actually look through the script below, you will see many functions defined. The functions ultimately being plotted are called deltaG_BN_P_prime(x) and deltaG_BN_rho(x); these are composed of the other functions seen in the script below.
reset
set terminal pngcairo truecolor nocrop enhanced font "arial,80" size 3078,2303 ## good ratio for publication: 1.336
#set encoding utf8
set output "ManuscriptV6_Figure_6_v5.png" ## output filename
unset grid ## alternatively, use "with lines" after "plot"
set samples 10000 ## default=100... improves smoothness
set border 15 lw 9
set tics scale 1.25
set bars 0.5 ## errorbar cap width {small | large | fullwidth | <size>}
#set lmargin 5
#set lmargin at screen 0.175
#set bmargin at screen 0.175
set xlabel "Temperature (K)" offset 0,.5
set xrange [375:650] ## options: "[min:max]" , "[:]" is "perfect" range,
#set format x "%1.1f" ## "%N.Mf" has N total digits, with M after the decimal.
set xtics 0,50,1000 offset -.25,.25 mirror ## this is the spacing between tics on the x-axis
set mxtics 2 ## frequency of the MINOR x-tics;
set ylabel "{/Symbol D}G (kJ/mol)" offset 1,0
set yrange [-30:-12]
#set format y "%1.1f" ## "%N.Mf" has N total digits, with M after the decimal.
set ytic -50,2,0 offset .25,0 #nomirror ## spacing between tics on the y-axis
set mytics 2
set key spacing 2.0 ## vertical spacing between legend lines.
set key samplen .5 ## length of line sample shown in legend.
set key maxrows 5
#set key maxcolumns 1
#set key box lw 6 at screen .925,.925 ## where to put legend: left right center top bottom center
set key nobox
set key at graph .3,.95 ## where to put legend: left right center top bottom center
#set key font "arial,90"
d = .5
B = .325
a = .11
D = .5
diff_6(x) = A0d*((abs(1-x/Tcd))**B) + A1d*((abs(1-x/Tcd))**(B+d)) + A2d*((abs(1-x/Tcd))**(B+2*d)) + A3d*((abs(1-x/Tcd))**(B+3*d)) + A4d*((abs(1-x/Tcd))**(B+4*d)) + A5d*((abs(1-x/Tcd))**(B+5*d))
A0d = 112.584
A1d = -245.571
A2d = 771.586
A3d = -1405.97
A4d = 1333.4
A5d = -522.671
Tcd = 674.561
Tc_d = Tcd
dens_sum_6(x) = 2*rhoc_d + D1_d*(abs(1-x/Tc_d)**(1-a)) + D1d*(abs(1-x/Tc_d)) + D2d*(abs(1-x/Tc_d)**(1-a+D)) + D3d*(abs(1-x/Tc_d)**(1-a+2*D)) + D4d*(abs(1-x/Tc_d)**(1-a+3*D))
D1_d = -178.759
D1d = 415.198
D2d = -401.36
D3d = 349.209
D4d = -170.798
rhoc_d = 17.5698
dens_liq(x) = (dens_sum_6(x) + diff_6(x))/2
dens_gas(x) = (dens_sum_6(x) - diff_6(x))/2
wagner_BLYPSP(x) = lnpc + (Tca/x)*( aa*(1-x/Tca) + bb*(1-x/Tca)**1.5 + ccc*(1-x/Tca)**3 + ddd*(1-x/Tca)**6 )
lnpc = 4.99
aa = -8.69748
bb = 1.03485
ccc = -0.411408
ddd = -53.3456
Tca = Tcd
Eubanks2(x) = beta2 - (c02/x)*exp(c22/(x**2 + d02))
beta2 = 45.6388
c02 = 56542
c22 = 352754
d02 = 2932.55
B2(x) = Eubanks2(x)/1000
P(x) = 100*exp(wagner_BLYPSP(x))
dens_gas_prime(x) = -sqrt(P(x)/(8.314*x*B2(x)) + (1/(2*B2(x)))**2) - 1/(2*B2(x))
deltaG_BN_rho(x) = (8.314/1000)*x*log(dens_gas(x)/dens_liq(x))
deltaG_BN_P_prime(x) = (8.314/1000)*x*log(dens_gas_prime(x)/dens_liq(x))
#COLUMN: 1 2 4 6 8 10
#DATA: T(K) ΔG_BN(P)(kJ/mol) ΔG_BN(ρ)(kJ/mol) ΔG_alch(kJ/mol) (ΔG+ΔA)_alch(kJ/mol) ΔG_BN(P)_corr(kJ/mol)
#R(T=400 K) = 3.32560
y2 = .1+(3.32560/18) #Ending height of "RT" bar= .1 of graph --> RT high. "18" is size of displayed ordinate.
labely = y2+.05 #y-location of "RT" label to be .05 above RT bar.
set label "400 K" at graph .9,labely center #
set arrow from graph .9,.1 to graph .9,y2 nohead front lc rgb "black" lw 10 #Main "RT" bar.
set arrow from graph .875,y2 to graph .925,y2 nohead front lc rgb "black" lw 10 #Upper cap to "RT" bar.
set arrow from graph .875,.1 to graph .925,.1 nohead front lc rgb "black" lw 10 #Lower cap to "RT" bar.
set pointsize 5
plot \
"free_energy_routes_v3.dat" u 1:4:5 w yerrorbars pt 7 lc rgb "web-green" lw 10 title "{/Symbol D}G__@{BN}^{/Symbol r}",\
deltaG_BN_rho(x) w lines lc rgb "web-green" lw 10 title "",\
"free_energy_routes_v3.dat" u 1:10:11 w yerrorbars pt 9 lc rgb "red" lw 10 title "{/Symbol D}G'__@{BN}^{P}",\
[100:600] deltaG_BN_P_prime(x) w lines lc rgb "red" lw 10 title ""
# "free_energy_routes_v3.dat" u 1:10:11 w lines lc rgb "red" lw 10 title ""
##################
# pointtype ("pt")
# 0 = none
# 1 = horz.line
# 2 = X
# 3 = X & horz.line
# 4 = open box
# 5 = closed box
# 6 = open circle
# 7 = closed circ.
# 8 = open up triang.
# 9 = closed up triang.
# 10= open down triang.
# 11= closed down triang.
# 12= open diamond
# 13= solid diamond
# linetype ("lt")
# -1 = black
# 0 = grey dotted
# 1 = purple
# 2 = green
# 3 = sky blue
# 4 = orange
# 5 = yellow
# 6 = navy blue
# 7 = red
# \305 = Angstrom
# {/Symbol *} = Greek *