One of the four values ββis valueWI, valueHI, valueWF, valueHFset to float infinity. Just wipe it to something reasonable, for example, for a general and completely local solution, change your call DrawLineto:
ALOT = 1e6
vals = [max(min(x, ALOT), -ALOT) for x in (valueWI, valueHI, valueWF, valueHF)]
dc.DrawLine(*vals)
, , , - , - . , , , ! )