I am a beginner user of the Pymatgen package. In order to process the data from VASP DFT calculation software, I use Pymatgen to visualize the output band structure. When I do spin polarised band calculation, I cannot separate the band structure of spin up and spin down into 2 different subplots or graphs. Can anyone tell me how can I deal with this? Because it looks messy when the package automatically plot it into the same graph.


1 Answer 1


Here I provide an example with my own python scripts to realize your purpose rather than using Pymatgen (You can save data firstly with Pymatgen and plot with python). I assume that you can perform correctly the band and dos calculations with the VASP code. The example I pick up is the monolayer FM NiBr$_2$ and the final result is the following:

enter image description here

  • $\begingroup$ Thank you for your support. Your code work very well. May I ask one more question. Is it possible to also include the Projection plot in each plot ? I want to do the projection of electron from different type of atom. Ive already include the LORBIT tag in my INCAR file. $\endgroup$
    – JensenPang
    Commented Nov 12, 2020 at 4:37
  • $\begingroup$ Of course, you can. You can project to atom/orbital. $\endgroup$
    – Jack
    Commented Nov 12, 2020 at 4:59

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .