Coverage for /builds/ase/ase/ase/gui/pipe.py: 17.39%

23 statements  

« prev     ^ index     » next       coverage.py v7.5.3, created at 2025-08-02 00:12 +0000

1# fmt: off 

2 

3import pickle 

4import sys 

5 

6 

7def main(): 

8 import matplotlib.pyplot as plt 

9 task, data = pickle.load(sys.stdin.buffer) 

10 if task == 'eos': 

11 from ase.eos import plot 

12 plot(*data) 

13 elif task == 'neb': 

14 forcefit = data 

15 forcefit.plot() 

16 elif task == 'reciprocal': 

17 # data is a bandpath object 

18 data.plot() 

19 elif task == 'graph': 

20 from ase.gui.graphs import make_plot 

21 make_plot(show=False, *data) 

22 else: 

23 print(f'Invalid task {task}') 

24 sys.exit(17) 

25 

26 # Magic string to tell GUI that things went okay: 

27 print('GUI:OK') 

28 sys.stdout.close() 

29 

30 plt.show() 

31 

32 

33if __name__ == '__main__': 

34 main()