I have the following list of 3by3 dimension as an example (the listtot gives me the corresponding energy (ex:37.752812298486035) for each angle set (ex:{0.
, 0.3141592653589793, 0.6283185307179586
, 0.9424777960769379, 1.2566370614359172
,
1.5707963267948966`}) of 6 electrons) and I want to plot the data to show clearly how the energy changes when the electrons' spins maintaining different angles with respect to each other (to do that I thought of using ListPlot3D, but if you have better ideas I appreciate that a lot):
listtot = {{{37.752812298486035`, {0.`, 0.3141592653589793`,
0.6283185307179586`, 0.9424777960769379`, 1.2566370614359172`,
1.5707963267948966`}, {1, 2, 3, 4, 5,
6}}, {37.752812298486035`, {0.`, 0.3141592653589793`,
0.6283185307179586`, 0.9424777960769379`, 1.2566370614359172`,
1.5707963267948966`}, {1, 2, 3, 4, 5,
6}}, {37.752812298486035`, {0.`, 0.3141592653589793`,
0.6283185307179586`, 0.9424777960769379`, 1.2566370614359172`,
1.5707963267948966`}, {1, 2, 3, 4, 5,
6}}}, {{37.752812298486035`, {0.`, 0.3141592653589793`,
0.6283185307179586`, 0.9424777960769379`, 1.2566370614359172`,
1.5707963267948966`}, {1, 2, 3, 4, 5,
6}}, {37.11781609966486`, {0.`, 0.2630862667406051`,
0.6283185307179586`, 0.9424777960769379`, 1.2566370614359172`,
1.5707963267948966`}, {1, 2, 3, 4, 5,
6}}, {34.125297721219795`, {0.`, 0.2630862667406051`,
0.6283185307179586`, 0.9424777960769379`, 1.4818657793200891`,
1.5707963267948966`}, {1, 2, 3, 4, 5,
6}}}, {{33.522683744885754`, {0.`, 0.2630862667406051`,
0.6283185307179586`, 0.9424777960769379`, 1.5233731698273567`,
1.5707963267948966`}, {1, 2, 3, 4, 5,
6}}, {33.522683744885754`, {0.`, 0.2630862667406051`,
0.6283185307179586`, 0.9424777960769379`, 1.5233731698273565`,
1.5707963267948966`}, {1, 2, 3, 4, 5,
6}}, {33.39466567365792`, {0.`, 0.2630862667406051`,
0.6283185307179586`, 0.5455129752218801`, 1.5233731698273565`,
1.5707963267948966`}, {1, 2, 3, 4, 5, 6}}}};
I should rearrange my data as following to use it in ListPlot3D:
Thread[{#3, #2, #1}] & @@ listtot[[1]][[1]]
Now for every listtot[[i]][[j]] in which i and j are changing between 1&3, I need to store the data on a different list and plot all of them in one graph. I was thinking about writing the code to do the following procedure (which I need help with):
list1=Thread[{#3, #2, #1}] & @@listtot[[1]][[1]]
list2=Thread[{#3, #2, #1}] & @@listtot[[1]][[2]]
list3=Thread[{#3, #2, #1}] & @@listtot[[1]][[3]]
list4=Thread[{#3, #2, #1}] & @@listtot[[2]][[1]]
list5=Thread[{#3, #2, #1}] & @@listtot[[2]][[2]]
list6=Thread[{#3, #2, #1}] & @@listtot[[2]][[3]]
list7=Thread[{#3, #2, #1}] & @@listtot[[3]][[1]]
list8=Thread[{#3, #2, #1}] & @@listtot[[3]][[2]]
list9=Thread[{#3, #2, #1}] & @@listtot[[3]][[3]]
I need to write something like:
ListPlot3D[{list1, list2, list3,...}, InterpolationOrder -> 0,
AxesLabel -> {"electron index", "spin angle", "energy"},
BaseStyle -> 12, ImageSize -> 400]
and I am asking for a way to write {list1, list2, list3,...,list9} or in other words to store the data in various lists: list1,... and plot them ;
again I appreciate any other method in case you have different ideas to show the data.