
    eu
                        d Z ddlmZ ddlZddlZ ej                  d      Zej                  d       ej                         Zej                         Zej                  j                  d      aej!                  t              Zej!                  t              Zdad	 Zej+                          ej                         Zej                         Zej1                  d
       ej1                  d
       ej3                  d       ej3                  d       ej5                  ddg       ej7                  d       ej!                         Zej!                         Z ej<                  d      ada d Z!dZ"dZ# e       Z$ej+                          ej                  d      a%tJ        jM                  ddd       tJ        jO                  dd       g a( ej<                  e"dz   df      a)da*d Z+d Z,ejZ                  j]                         Z/e/j`                  jc                  e,       e/je                  d       e3dk(  r ejh                          yy)z-
Various methods of drawing scrolling plots.
    )perf_counterNT)showz"pyqtgraph example: Scrolling Plotsi,  )sizec                     t         dd  t         d d t        j                  j                         t         d<   t        j                  t                t        dz  at        j                  t                t        j                  t        d       y )N   r   )	data1nprandomnormalcurve1setDataptr1curve2setPos     C/usr/lib/python3/dist-packages/pyqtgraph/examples/scrollingPlots.pyupdate1r      sX    qrE#2J		  "E"I
NN5AID
NN5
MM$r   peak)modei)xRange)xMaxd   c                     t         j                  j                         t        t        <   t        dz  at        t        j
                  d   k\  rEt        } t        j                  t        j
                  d   dz        a| t        d | j
                  d    t        j                  t        d t                t        j                  t         d       t        j                  t        d t                y )Nr   r      )r
   r   r   data3ptr3shapeemptycurve3r   r   curve4)tmps    r   update2r$   5   s    ))""$E$KAIDu{{1~Q!+,"msyy|
NN5$< 
MM4%
NN5$< r   
   r   )colspanbottomTimesir   c                     t               } t        D ]  }|j                  | t        z
   d        t        t
        z  }|dk(  rt        j                         }t        j                  |       t        d   }t        j                  t
        dz   df      a	|t        d<   t        t              t        kD  rKt        j                  d      }t        j                  |       t        t              t        kD  rAn	t        d   }| t        z
  t        |dz   df<   t        j                   j#                         t        |dz   df<   |j%                  t        d |dz   df   t        d |dz   df          t        dz  ay )Nr   r   r   r   )xy)r   curvesr   	startTimeptr5	chunkSizep5plotappenddata5r
   r    len	maxChunkspop
removeItemr   r   r   )nowcicurvelasts        r   update3r>   O   s)   
.C &	3y=!1%& 	yAAv	eRy)A+a)a&kI%

1AMM! &kI% r
?E!A#a%L99##%E!A#a%L	MME$1Q3$'NeDQqSD!GnM5AIDr   c                  @    t                t                t                y )N)r   r$   r>   r   r   r   updater@   h   s    IIIr   2   __main__)5__doc__timer   numpyr
   	pyqtgraphpgGraphicsLayoutWidgetwinsetWindowTitleaddPlotp1p2r   r   r	   r2   r   r   r   r   nextRowp3p4setDownsamplingsetClipToViewsetRange	setLimitsr!   r"   r    r   r   r$   r0   r6   r.   r1   setLabel	setXRanger-   r4   r/   r>   r@   QtCoreQTimertimertimeoutconnectstart__name__execr   r   r   <module>r_      s     b4(   7 8
 	[[][[]
		c"			 [[][[]                   D!9  ! 		
! 		N	 [[[ Hfc " S! 	)A+a!2 			   f  BzBGGI r   