Files
@ b9db6f3e92be
Branch filter:
Location: AENC/switchchain/triangle_correlation_plots.m - annotation
b9db6f3e92be
2.4 KiB
application/vnd.wolfram.mathematica.package
Add CCM plots
73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea 73c8d2811bea | (* ::Package:: *)
Needs["ErrorBarPlots`"]
(* ::Section:: *)
(*Data import*)
gsraw=Import[NotebookDirectory[]<>"data/graphdata_properties.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. *) *)
gdata=GatherBy[gsraw,{#[[1,2]]&,#[[1,1]]&}];
(* Data format: *)
(* gdata[[ tau index, n index, run index , datatype index ]] *)
(* datatype index:
1: {n,tau}
2: avgTriangles
3: edges
4: dstn
5: { HH A, HH L, average A, average L } where for each there is (average of) {lambda1 , lambda1 - lambda2, lambda1/lambda2}
6: switching successrate after mixing
7: initial HH triangles
*)
nlabels=Map["n = "<>ToString[#]&,gdata[[1,All,1,1,1]]];
taulabels=Map["\[Tau] = "<>ToString[#]&,gdata[[All,1,1,1,2]]];
datatypeLabels={"(n,tau)","average number of triangles","edges","DSTN","Eigenvalues","successrate","initial number of triangles"};
(* ::Section:: *)
(*Plot triangle counts vs dsp*)
(* ::Subsection:: *)
(*Plot #trianges vs some degree-sequence-property*)
allPlots=Map[Show[
ListPlot[#[[All,{2,4}]],
AxesOrigin->{0,0},
Frame->True,FrameLabel->{"average number of triangles","degree-sequence-property"},
AspectRatio->Automatic,
ImageSize->Automatic,
PlotLabel->"n = "<>ToString[#[[1,1,1]]]<>" , \[Tau] = "<>ToString[#[[1,1,2]]],
PlotStyle->Black
],Plot[x,{x,1,10000}]]
&,gdata,{2}]
plotgrid=GraphicsRow[{GraphicsColumn[allPlots[[{1,2},1]]],allPlots[[3,1]]},Spacings->0,ImageSize->600]
(* ::Section:: *)
(*DSP, Edges, #triangles, successrate*)
(* datatype index:
1: {n,tau}
2: avgTriangles
3: edges
4: dstn
5: { HH A, HH L, average A, average L } where for each there is (average of) {lambda1 , lambda1 - lambda2, lambda1/lambda2}
6: switching successrate after mixing
7: initial HH triangles
*)
correlations={4,2};
tauChoices={2,5,8};
nChoice=-1;
combiPlot=Show[
ListLogLogPlot[gdata[[tauChoices,nChoice,All,correlations]],
(*AxesOrigin->{0,0},*)
(*PlotRange\[Rule]{{0,3000},{0,3000}},*)
PlotRange->Automatic,
Frame->True,FrameLabel->datatypeLabels[[correlations]],
AspectRatio->Automatic,
ImageSize->Automatic,
PlotLabel->"n = "<>ToString[gdata[[1,nChoice]][[1,1,1]]],
PlotLegends->taulabels[[tauChoices]]
],Plot[x,{x,1,10000},PlotStyle->Black]]
Map[DensityHistogram[gdata[[#,nChoice,All,correlations]],"Log",
Frame->True,FrameLabel->datatypeLabels[[correlations]],
PlotLabel->taulabels[[#]]
]
&,tauChoices]
|