11#!/usr/bin/python
22
3- import sys
4-
53import matplotlib .pyplot as plt
64import numpy as np
75from matplotlib .colors import LinearSegmentedColormap
86
7+ from .logging_utils import ProgressLogger
8+
99# =========== defaults
1010
1111default_figsize = (8 , 8 )
@@ -58,11 +58,6 @@ def colorize_XY2RG(Xs, Ys):
5858 return c , vmax
5959
6060
61- def write_plotting_slice (i ):
62- sys .stdout .write (f"\r plotting slice # { i } " )
63- sys .stdout .flush ()
64-
65-
6661# =========== plotting functions
6762
6863
@@ -85,8 +80,9 @@ def plotImages(
8580 V0 = 0.0 ,
8681 cbar_label = None ,
8782):
83+ progress_logger = ProgressLogger ("plot" , pre_message = "Plotting slice # " )
8884 for ii , i in enumerate (slices ):
89- write_plotting_slice ( i )
85+ progress_logger . print_message ( i , is_last = ii == ( len ( slices ) - 1 ) )
9086 if symmetric_map :
9187 limit = max (abs (np .min (F [i ] - V0 )), abs (np .max (F [i ] - V0 )))
9288 vmin = - limit + V0
@@ -115,8 +111,9 @@ def plotImages(
115111def plotVecFieldRG (
116112 prefix , dXs , dYs , slices , extent = None , zs = None , figsize = default_figsize , interpolation = default_interpolation , atoms = None , bonds = None , atomSize = default_atom_size
117113):
114+ progress_logger = ProgressLogger ("plot" , pre_message = "Plotting slice # " )
118115 for ii , i in enumerate (slices ):
119- write_plotting_slice ( i )
116+ progress_logger . print_message ( i , is_last = ii == ( len ( slices ) - 1 ) )
120117 plt .figure (figsize = (10 , 10 ))
121118 HSBs , vmax = colorize_XY2RG (dXs [i ], dYs [i ])
122119 plt .imshow (HSBs , extent = extent , origin = "lower" , interpolation = interpolation )
@@ -151,8 +148,9 @@ def plotDistortions(
151148 bonds = None ,
152149 atomSize = default_atom_size ,
153150):
151+ progress_logger = ProgressLogger ("plot" , pre_message = "Plotting slice # " )
154152 for ii , i in enumerate (slices ):
155- write_plotting_slice ( i )
153+ progress_logger . print_message ( i , is_last = ii == ( len ( slices ) - 1 ) )
156154 plt .figure (figsize = figsize )
157155 plt .plot (X [i , ::by , ::by ].flat , Y [i , ::by , ::by ].flat , "r." , markersize = markersize )
158156 if BG is not None :
@@ -193,8 +191,9 @@ def plotArrows(
193191 bonds = None ,
194192 atomSize = default_atom_size ,
195193):
194+ progress_logger = ProgressLogger ("plot" , pre_message = "Plotting slice # " )
196195 for ii , i in enumerate (slices ):
197- write_plotting_slice ( i )
196+ progress_logger . print_message ( i , is_last = ii == ( len ( slices ) - 1 ) )
198197 plt .figure (figsize = figsize )
199198 plt .quiver (Xs [::by , ::by ], Ys [::by , ::by ], dX [::by , ::by ], dY [::by , ::by ], color = "k" , headlength = 10 , headwidth = 10 , scale = 15 )
200199 if BG is not None :
0 commit comments