Source code for PDSim.misc.error_bar

from math import log10, isnan

[docs]def error_ascii_bar(val, tol, N = 50, min_p = -5, max_p = 2): assert log10(tol) > min_p base_string = list('||'+'.'*N+'||') if isnan(val): return ' XXX VAL is NAN XXX ' #Add the bar for the tolerance i = int(N*(log10(tol)-min_p)/(max_p-min_p)+1) base_string[i] = '|' #Add the bar for the value i = int(N*(log10(val)-min_p)/(max_p-min_p)+1) base_string[i] = '@' base_string = ''.join(base_string) return base_string
if __name__=='__main__': print error_ascii_bar(1,1e-3) print error_ascii_bar(0.5,1e-3) print error_ascii_bar(0.1,1e-3) print error_ascii_bar(0.0011,1e-3)