ClearAll;
$DefaultFont = {"Times-Roman",10};
Needs["Statistics`DataManipulation`"];
Needs["Graphics`Graphics`"];
npoints = 5;

cumprob = {1,23,75,142,256,513,690,731,733}/733;
sizes = Table[3k,{k,1,9}];
datapoints = Map[Thread,Transpose[{sizes,cumprob}]];
scale = cumprob[[npoints]];
cumscaled = cumprob/scale;
datapointscond = Map[Thread,Transpose[{sizes,cumscaled}]];

n = 5;
F[a_,x_]:= 1 - E^(-(a x)^n);
f[a_,x_]:= n a (a x)^(n-1) E^(-(a x)^n);

err[a_] = N[Apply[Plus,Table[(F[a,sizes[[k]]]-cumprob[[k]])^2,{k,1,9}]]];
Plot[err[a],{a,0.05,0.07}]
leasterr = FindMinimum[err[a],{a,0.06,0.05,0.07}];
aopt = a/.leasterr[[2]];
corrleft = 1/F[aopt,15];
corrright = 1/(1-F[aopt,15]);

left = Plot[f[aopt,x],{x,0,15}];
right = Plot[f[aopt,x],{x,15,27},PlotStyle->Dashing[{0.01,0.01}]];
modleft = Plot[corrleft f[aopt,x],{x,0,15},PlotStyle->Thickness[0.0075]];
modright = Plot[corrright f[aopt,x],{x,15,27},PlotStyle->{{Dashing[{0.01,0.01}],Thickness[0.005]}}];
mini = {left, modleft};
big = {right, modright};
plot1 =  Show[mini, PlotRange->{{0,15},{0,0.3}},
			PlotLabel->"(a) p.d.f. of mini-minnow distribution (upper curve)",
			Axes->True,AxesLabel->{" x","y"},
			AxesOrigin->{-0.5,-0.02}];
plot2 =  Show[big, PlotRange->{{15,27},{0,0.2}},
			PlotLabel->"(b) p.d.f. of big-minnow distribution (upper curve)",
			Axes->True,AxesLabel->{" x","y"},
			AxesOrigin->{14.5,-0.01}];		
					
Show[GraphicsArray[{{plot1},{plot2}}],PlotLabel->"Figure 10.2"]