;iu >dZddlmZddlZddlZejdZe de Z e Z ej dae tZe tZdad Zee Ze Zed ed ededed dg edeZeZejdada dZ!dZ"dZ#eZ$ee da%tJ&dddtJ'ddga(eje"dzdfa)da*dZ+dZ,ej-.Z/e/j01e,e/2de3dkrej4dSdS)z- Various methods of drawing scrolling plots. ) perf_counterNT)showz"pyqtgraph example: Scrolling Plotsi,)sizecTtddtdd<tjtd<ttt dz atttt ddS)Nr) data1nprandomnormalcurve1setDataptr1curve2setPosUC:\PYTHON\MyICR_Workspace\venv\Lib\site-packages\pyqtgraph/examples/scrollingPlots.pyupdate1rsuqrrE#2#J   ""E"I NN5AID NN5 MM$rpeak)modei)xRange)xMaxdc"tjtt<tdz attjdkrEt}tjtjddza|td|jd<ttdtt t dttdtdS)Nrr) r r r data3ptr3shapeemptycurve3rrcurve4)tmps rupdate2r$5s)""$$E$KAID u{1~Q!+,,"msy|m NN5$<    MM4% NN5$<     r r)colspanbottomTimesirctt}tD]!}||tz d"tt z}|dkrt }t|td}tj t dzdfa |td<tttkrQtd}t |tttkQn td}|tz t|dzdf<tjt|dzdf<|td|dzdftd|dzdftdz adS)Nrrrr)xy)rcurvesr startTimeptr5 chunkSizep5plotappenddata5r r len maxChunkspop removeItemr r r)nowcicurvelasts rupdate3r>Os[ ..C && 3y=!1%%%% yAAvv  eRy)A+a))a&kkI%% 1 A MM!   &kkI%%r ?E!A#a%L9##%%E!A#a%L MME$1Q3$'NeDQqSD!GnM555AIDDDrcZtttdS)N)rr$r>rrrupdater@hs! III III IIIIIr2__main__)5__doc__timernumpyr pyqtgraphpgGraphicsLayoutWidgetwinsetWindowTitleaddPlotp1p2r r r r2r rrrnextRowp3p4setDownsampling setClipToViewsetRange setLimitsr!r"r rrr$r0r6r.r1setLabel setXRanger-r4r/r>r@QtCoreQTimertimertimeoutconnectstart__name__execrrrr_sb4(((7888  [[]][[]] c""      [[]][[]] D!9  !     ! ! !   LNN  [[[ Hfc""" S! )A+a!!2  f B z BGIIIIIr