Changeset - 9de2b1d29b5d
[Not reviewed]
0 1 0
Tom Bannink - 8 years ago 2017-07-03 11:34:02
tombannink@gmail.com
Add plots for median of triangle counts instead of mean
1 file changed with 28 insertions and 13 deletions:
0 comments (0 inline, 0 general)
triangle_exponent_plots.m
Show inline comments
 
@@ -19,6 +19,7 @@ Needs["ErrorBarPlots`"]
 
(* graphdata_exponent_mix32.m *)
 
(* graphdata_exponent_highN.m *)
 
(* graphdata_properties2.m *)
 
(* graphdata_canonical_properties.m *)
 
gsraw=Import[NotebookDirectory[]<>"data/graphdata_exponent_mix32.m"];
 
gsraw=SortBy[gsraw,#[[1,1]]&]; (* Sort by n *)
 
averagesGrouped=GatherBy[gsraw,{#[[1,2]]&,#[[1,1]]&}];
 
@@ -27,6 +28,10 @@ averagesGrouped=GatherBy[gsraw,{#[[1,2]]&,#[[1,1]]&}];
 
(* averagesGrouped[[ tau index, n index, run index , {ntau, avgtri} ]] *)
 
nlabels=Map["n = "<>ToString[#]&,averagesGrouped[[1,All,1,1,1]]];
 
taulabels=Map["tau = "<>ToString[#]&,averagesGrouped[[All,1,1,1,2]]];
 
mediansErrorBars=Map[
 
{{#[[1,1,1]],Median[#[[All,2]]]},
 
ErrorBar[MedianDeviation[#[[All,2]]]]
 
}&,averagesGrouped,{2}];
 
averagesErrorBars=Map[
 
{{#[[1,1,1]],Mean[#[[All,2]]]},
 
ErrorBar[StandardDeviation[#[[All,2]]]]
 
@@ -34,9 +39,11 @@ ErrorBar[StandardDeviation[#[[All,2]]]]
 

	
 

	
 
ErrorListPlot[averagesErrorBars,Joined->True,PlotMarkers->Automatic,PlotRange->All,AxesLabel->{"n","\[LeftAngleBracket]triangles\[RightAngleBracket]"},PlotLegends->taulabels]
 
ErrorListPlot[mediansErrorBars,Joined->True,PlotMarkers->Automatic,PlotRange->All,AxesLabel->{"n","median triangles"},PlotLegends->taulabels]
 

	
 

	
 
ListLogLogPlot[averagesErrorBars[[All,All,1]],Joined->True,PlotMarkers->Automatic,AxesLabel->{"n","\[LeftAngleBracket]triangles\[RightAngleBracket]"},PlotLegends->taulabels]
 
ListLogLogPlot[mediansErrorBars[[All,All,1]],Joined->True,PlotMarkers->Automatic,AxesLabel->{"n","median triangles"},PlotLegends->taulabels]
 

	
 

	
 
(* ::Subsection:: *)
 
@@ -45,18 +52,23 @@ ListLogLogPlot[averagesErrorBars[[All,All,1]],Joined->True,PlotMarkers->Automati
 

	
 
nRange=5;;-1;
 
nRange=All;
 
loglogdata=Log[averagesErrorBars[[All,nRange,1]]];
 
fits=Map[Fit[#,{1,logn},logn]&,loglogdata];
 
fitsExtra=Map[LinearModelFit[#,logn,logn]&,loglogdata];
 

	
 
averagesLoglogdata=Log[averagesErrorBars[[All,nRange,1]]];
 
mediansLoglogdata=Log[mediansErrorBars[[All,nRange,1]]];
 
averagesFits=Map[Fit[#,{1,logn},logn]&,averagesLoglogdata];
 
averagesFitsExtra=Map[LinearModelFit[#,logn,logn]&,averagesLoglogdata];
 
mediansFits=Map[Fit[#,{1,logn},logn]&,mediansLoglogdata];
 
mediansFitsExtra=Map[LinearModelFit[#,logn,logn]&,mediansLoglogdata];
 

	
 

	
 
fitsExtra[[1]]["ParameterConfidenceIntervalTable"]
 
fitsExtra[[1]]["BestFitParameters"]
 
fitsExtra[[1]]["ParameterErrors"]
 
fitsExtra[[1]]["ParameterConfidenceIntervals"]
 
averagesFitsExtra[[1]]["ParameterConfidenceIntervalTable"]
 
averagesFitsExtra[[1]]["BestFitParameters"]
 
averagesFitsExtra[[1]]["ParameterErrors"]
 
averagesFitsExtra[[1]]["ParameterConfidenceIntervals"]
 

	
 

	
 
plot1=Show[ListLogLogPlot[averagesErrorBars[[All,All,1]],Joined->False,PlotMarkers->Automatic,AxesLabel->{"n","\[LeftAngleBracket]triangles\[RightAngleBracket]"},PlotLegends->taulabels],Plot[fits,{logn,1,2000}]]
 
plot1a=Show[ListLogLogPlot[averagesErrorBars[[All,All,1]],Joined->False,PlotMarkers->Automatic,AxesLabel->{"n","\[LeftAngleBracket]triangles\[RightAngleBracket]"},PlotLegends->taulabels],Plot[averagesFits,{logn,1,2000}]]
 
plot1b=Show[ListLogLogPlot[mediansErrorBars[[All,All,1]],Joined->False,PlotMarkers->Automatic,AxesLabel->{"n","median triangles"},PlotLegends->taulabels],Plot[mediansFits,{logn,1,2000}]]
 

	
 

	
 
Export[NotebookDirectory[]<>"plots/avgtris_n.pdf",plot1]
 
@@ -67,8 +79,9 @@ Export[NotebookDirectory[]<>"plots/avgtris_n.pdf",plot1]
 

	
 

	
 
tauValues=averagesGrouped[[All,1,1,1,2]];
 
exponents=Transpose[{tauValues,fits[[All,2,1]]}];
 
Show[ListPlot[exponents,Joined->True,PlotMarkers->Automatic,AxesLabel->{"tau","exponent"},PlotRange->{{2,3},{0,1.6}}],Plot[3/2(3-tau),{tau,2,3}]]
 
averagesExponents=Transpose[{tauValues,averagesFits[[All,2,1]]}];
 
mediansExponents=Transpose[{tauValues,mediansFits[[All,2,1]]}];
 
Show[ListPlot[{averagesExponents,mediansExponents},Joined->True,PlotMarkers->Automatic,AxesLabel->{"tau","exponent"},PlotRange->{{2,3},{0,1.6}}],Plot[3/2(3-tau),{tau,2,3}]]
 

	
 

	
 
(* ::Subsection:: *)
 
@@ -76,9 +89,11 @@ Show[ListPlot[exponents,Joined->True,PlotMarkers->Automatic,AxesLabel->{"tau","e
 

	
 

	
 
tauValues=averagesGrouped[[All,1,1,1,2]];
 
exponentsErrorBars=Map[{{#[[1]],#[[2]]["BestFitParameters"][[2]]},ErrorBar[#[[2]]["ParameterConfidenceIntervals"][[2]]-#[[2]]["BestFitParameters"][[2]]]}&,
 
Transpose[{tauValues,fitsExtra}]];
 
plot2=Show[ErrorListPlot[exponentsErrorBars,Joined->True,PlotMarkers->Automatic,Frame->True,FrameLabel->{"tau","triangle exponent"},PlotRange->{{2,3},{0,1.6}},ImageSize->300],Plot[3/2(3-tau),{tau,2,3},PlotStyle->{Dashed}]]
 
averagesExponentsErrorBars=Map[{{#[[1]],#[[2]]["BestFitParameters"][[2]]},ErrorBar[#[[2]]["ParameterConfidenceIntervals"][[2]]-#[[2]]["BestFitParameters"][[2]]]}&,
 
Transpose[{tauValues,averagesFitsExtra}]];
 
mediansExponentsErrorBars=Map[{{#[[1]],#[[2]]["BestFitParameters"][[2]]},ErrorBar[#[[2]]["ParameterConfidenceIntervals"][[2]]-#[[2]]["BestFitParameters"][[2]]]}&,
 
Transpose[{tauValues+0.01,mediansFitsExtra}]];
 
plot2=Show[ErrorListPlot[{averagesExponentsErrorBars,mediansExponentsErrorBars},Joined->True,PlotMarkers->Automatic,Frame->True,FrameLabel->{"tau","triangle exponent"},PlotRange->{{2,3},{0,1.6}},ImageSize->300],Plot[3/2(3-tau),{tau,2,3},PlotStyle->{Dashed}]]
 

	
 

	
 
Export[NotebookDirectory[]<>"plots/triangle_exponent.pdf",plot2]
0 comments (0 inline, 0 general)