diff --git a/triangle_gcm_initial_analysis.m b/triangle_gcm_initial_analysis.m index a932617c21ec7e4ab10714758909a27c2434dc83..136c6532adecf180add97ba1161906cc5381ec2e 100644 --- a/triangle_gcm_initial_analysis.m +++ b/triangle_gcm_initial_analysis.m @@ -7,7 +7,7 @@ Needs["ErrorBarPlots`"] (*Data import*) -gsraw=Import[NotebookDirectory[]<>"data/graphdata_initialtris3.m"]; +gsraw=Import[NotebookDirectory[]<>"data/graphdata_ccm_initialtris.m"]; (* gsraw=SortBy[gsraw,{#[[1,1]]&,#[[1,2]]&}]; (* Sort by n and then by tau. The {} forces a *stable* sort because otherwise Mathematica sorts also on triangle count and other things. *) *) @@ -17,8 +17,8 @@ gdata=GatherBy[gsraw,{#[[1,2]]&,#[[1,1]]&}]; (* datatype index: 1: {n,tau} 2: avgtriangles when mixed -3: {GCM1 starting triangle counts summed, GCM1 number of successes} -4: {GCM2 starting triangle counts summed, GCM2 number of successes} +3: {GCM1 starting triangles average, GCM1 number of successes} <-- CCMu: get new highest degree vertex every time +4: {GCM2 starting triangles average, GCM2 number of successes} <-- CCMb: finish vertex completely *) nlabels=Map["n = "<>ToString[#]&,gdata[[1,All,1,1,1]]]; taulabels=Map["\[Tau] = "<>ToString[#]&,gdata[[All,1,1,1,2]]]; @@ -33,7 +33,7 @@ taulabels=Map["\[Tau] = "<>ToString[#]&,gdata[[All,1,1,1,2]]]; (* Consider all runs *) -getIt[x_,avg_]:=If[x[[2]]>=5, x[[1]]/x[[2]]/avg,0] +getIt[x_,avg_]:=If[x[[2]]>=5, x[[1]]/avg,0] getAverage[run_]:=Module[{avg}, avg=run[[2]]; If[avg>0, @@ -80,10 +80,10 @@ Export[NotebookDirectory[]<>"plots/ccm_initialtris.pdf",plotgrid1] (*GCM1 vs GCM2 success rates*) -(* gdata[[ tau index, n index, run index , {ntau, #tris, ds, greedyTriangles} ]] *) successrates=Map[{#[[3,2]]/100,#[[4,2]]/100}&,gdata,{3}]; successrates=Map[Transpose,successrates,{2}]; successratesDelta=Map[#[[3,2]]-#[[4,2]]&,gdata,{3}]; +successratesAvg=Map[{Mean[#[[1]]],Mean[#[[2]]]}&,successrates,{2}]; rateHistograms=Map[Histogram[#,{0.1},"Probability",PlotRange->{{0,1},Automatic}]&,successrates,{2}]; rateDeltaHistograms=Map[Histogram[#,{10},"Probability",PlotRange->{{-100,100},Automatic}]&,successratesDelta,{2}]; @@ -100,14 +100,22 @@ PlotRange->{{0,1},{0,1}}, ImageSize->300,AxesOrigin->{0,0}, Frame->True, FrameLabel->{"successrate of CCM construction","frequency"}, -(*LabelingFunction->(Placed[NumberForm[#,{2,3}],Above]&),*) +ChartLegends->Placed[{"CCMu avg = "<>ToString[NumberForm[N[Mean[datasets[[1]]]],2]],"CCMb avg = "<>ToString[NumberForm[N[Mean[datasets[[2]]]],2]]},Center],(*LabelingFunction->(Placed[NumberForm[#,{2,3}],Above]&),*) (*LabelingFunction\[Rule](Placed[If[#2[[2]]\[Equal]1,NumberForm[#1,{2,3}],""],Above]&),*) PlotLabel->label]; -plot1=makeHistogram2[successrates[[1,3]],"n = 1000, \[Tau] = 2.1"]; -plot2=makeHistogram2[successrates[[5,3]],"n = 1000, \[Tau] = 2.5"]; -plot3=makeHistogram2[successrates[[9,3]],"n = 1000, \[Tau] = 2.9"]; -columnplot1=GraphicsColumn[{plot1,plot2,plot3}] +plot1=makeHistogram2[successrates[[1,1]],"n = 1000, \[Tau] = 2.1"] +plot2=makeHistogram2[successrates[[5,1]],"n = 1000, \[Tau] = 2.5"] +plot3=makeHistogram2[successrates[[9,1]],"n = 1000, \[Tau] = 2.9"] +(* columnplot1=GraphicsColumn[{plot1,plot2,plot3}] *) Export[NotebookDirectory[]<>"plots/ccm_construction_successrate.pdf",columnplot1] + + +Export[NotebookDirectory[]<>"plots/ccm_construction_successrate1.pdf",plot1] +Export[NotebookDirectory[]<>"plots/ccm_construction_successrate5.pdf",plot2] +Export[NotebookDirectory[]<>"plots/ccm_construction_successrate9.pdf",plot3] + + +