figures/v-dep: Remove UnFill from plot legend addition
[thesis.git] / src / figures / v-dep / v-dep-sd.asy
1 import wtk_graph;
2
3
4 //size(15cm, 10cm, IgnoreAspect);
5
6 picture pic;
7 size(pic, 13cm, 5cm, IgnoreAspect);
8
9 scale(pic, Log, Linear);
10 real xscale=1e9;
11 real yscale=1e12;
12
13 /* f(x) = A + log10(x) + B */
14 real fn_logxliny(real x, real[] params) {
15   return params[0] * log10(x) + params[1];
16 }
17
18 string kx_title(string kval, string kexp, string xval) {
19   return math("k_{u0}=" + units("5"+Exp("-5"),"s$^{-1}$"))
20     +", " + math("\Delta x_u=" + units(xval,"nm"));
21 }
22
23 graphFile(pic, "v_dep-5e-5_0.1e-9/v_dep", ycol=2,
24           xscale=xscale, yscale=yscale, p=psoft,
25           t=kx_title(kval="5", kexp="-5", xval="0.100"), dots=true);
26 graphFile(pic, "v_dep-1e-5_0.225e-9/v_dep", ycol=2,
27           xscale=xscale, yscale=yscale, p=pmed,
28           t=kx_title(kval="1", kexp="-5", xval="0.225"), dots=true);
29 graphFile(pic, "v_dep-5e-5_0.225e-9/v_dep", ycol=2,
30           xscale=xscale, yscale=yscale, p=phard,
31           t=kx_title(kval="5", kexp="-5", xval="0.225"), dots=true);
32 fitFile(pic, "v_dep-5e-5_0.1e-9/v_dep-sd.fit.dat", f=fn_logxliny,
33         xmin=1e-9, xmax=1e-5, xscale=xscale, yscale=yscale, p=psoft);
34 fitFile(pic, "v_dep-1e-5_0.225e-9/v_dep-sd.fit.dat", f=fn_logxliny,
35         xmin=1e-9, xmax=1e-5, xscale=xscale, yscale=yscale, p=pmed);
36 fitFile(pic, "v_dep-5e-5_0.225e-9/v_dep-sd.fit.dat", f=fn_logxliny,
37         xmin=1e-9, xmax=1e-5, xscale=xscale, yscale=yscale, p=phard);
38 xequals(pic, x=1e-6*xscale, p=dashed);
39
40 xaxis(pic, sLabel("Pulling speed (nm/s)"), BottomTop, LeftTicks);
41 yaxis(pic, sLabel("Unfolding force (pN)"), LeftRight, RightTicks);
42 add(pic, legend(pic), point(pic, E), 20E);
43
44 picture hist_picture(string datafile,
45                      real xmin=-infinity, real xmax=infinity,
46                      real ymin=-infinity, real ymax=infinity) {
47   picture pic;
48   size(pic, 4cm, 3cm, IgnoreAspect);
49   scale(pic, Linear, Log);
50   histFile(pic, datafile, bin_scale=yscale, low=ymin);
51   /* ^-- yscale b/c bins are in Force */
52   xlimits(pic, xmin, xmax);
53   ylimits(pic, ymin, ymax);
54   xaxis(pic, sLabel("Force (pN)"), BottomTop, LeftTicks(N=2), above=true);
55   yaxis(pic, sLabel("Frequency"), LeftRight, RightTicks, above=true);
56   return pic;
57 }
58
59 /* ensure consistent ranges across all histograms */
60 real xmin = 100;
61 real xmax = 900;
62 real ymin = 1e-4;
63 real ymax = 1;
64
65 add(pic.fit(), (0,0), S);
66 add(hist_picture("fig4i-5e-5_0.1e-9.hist", xmin, xmax, ymin, ymax).fit(),
67     5cm*W, N);
68 add(hist_picture("fig4i-1e-5_0.225e-9.hist", xmin, xmax, ymin, ymax).fit(),
69     (0,0), N);
70 add(hist_picture("fig4i-5e-5_0.225e-9.hist", xmin, xmax, ymin, ymax).fit(),
71     5cm*E, N);
72 label(sLabel("Pulling speed width dependence"), point(N)+(0,3cm), N);