Files
@ 786c1ab9a61e
Branch filter:
Location: AENC/switchchain/triangle_correlation_plots.m - annotation
786c1ab9a61e
2.4 KiB
application/vnd.wolfram.mathematica.package
Add partial simulation datasets
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]
|