diff --git a/band_structure_visualization.ipynb b/band_structure_visualization.ipynb index bcab18d64a2450e3178aa7d6e3519b55260bfee8..0e3878e53c105f760c5b74d73e569cb06d7a1b8a 100644 --- a/band_structure_visualization.ipynb +++ b/band_structure_visualization.ipynb @@ -3265,19 +3265,24 @@ "\n", " function check_plot_band_dos_status(lowerLim, upperLim, N_materials_show)\n", " {\n", - " for(var i_material = 0; i_material < N_materials_show; i_material++)\n", - " {\n", - "\n", - " //alert(\"Material \"+i);\n", - " var checkbox_material_id = \"checkbox_material\" + i_material.toString();\n", - " var if_selected = check_show_VBM(checkbox_material_id);\n", - " if(if_selected != 1)\n", - " {\n", - " continue;\n", - " }\n", - "\n", - " plot_band_dos_i(i_material, lowerLim, upperLim, 0, 0, -1);\n", - " }\n", + " var N_plot_done = 0;\n", + " for (let i_material = 0, p = Promise.resolve(); i_material < N_materials_show; i_material++) {\n", + " p = p.then(_ => new Promise(resolve =>\n", + " setTimeout(function () {\n", + " //alert(i_material)\n", + " var checkbox_material_id = \"checkbox_material\" + i_material.toString();\n", + " var if_selected = check_show_VBM(checkbox_material_id);\n", + " if(if_selected == 1)\n", + " {\n", + " plot_band_dos_i(i_material, lowerLim, upperLim, 0, 0, -1);\n", + " N_plot_done ++;\n", + " }\n", + " resolve();\n", + " }, 0)\n", + " ));\n", + " }\n", + " if(N_plot_done != N_materials_show)\n", + " alert(\"Plot not complete\");\n", " }\n", "\n", " function plot_band_dos(lowerLim, upperLim, N_materials_show)\n",