
    e$                     "    d dl Z G d de      Zy)    Nc                   :    e Zd ZdZd Zd Zd Zd Zd Zd Z	d Z
y	)
PlotDataa  
    Class used for managing plot data
      - allows data sharing between multiple graphics items (curve, scatter, graph..)
      - each item may define the columns it needs
      - column groupings ('pos' or x, y, z)
      - efficiently appendable 
      - log, fft transformations
      - color mode conversion (float/byte/qcolor)
      - pen/brush conversion
      - per-field cached masking
        - allows multiple masking fields (different graphics need to mask on different criteria) 
        - removal of nan/inf values
      - option for single value shared by entire column
      - cached downsampling
      - cached min / max / hasnan / isuniform
    c                 .    i | _         i | _        i | _        y N)fieldsmaxValsminVals)selfs    4/usr/lib/python3/dist-packages/pyqtgraph/PlotData.py__init__zPlotData.__init__   s        c                 N    |D ]   }|| j                   vsd | j                   |<   " y r   r   )r
   r   fs      r   	addFieldszPlotData.addFields   s*     	&A#!%A	&r   c                     || j                   v S r   r   )r
   r   s     r   hasFieldzPlotData.hasField    s    DKKr   c                      | j                   |   S r   r   )r
   fields     r   __getitem__zPlotData.__getitem__#   s    {{5!!r   c                 "    || j                   |<   y r   r   )r
   r   vals      r   __setitem__zPlotData.__setitem__&   s     Er   c                     | j                   j                  |d       }|'t        j                  | |         }|| j                   |<   |S r   )r   getnpmax)r
   r   mxs      r   r   zPlotData.max)   B    \\eT*:U$B"$DLL	r   c                     | j                   j                  |d       }|'t        j                  | |         }|| j                   |<   |S r   )r	   r   r   min)r
   r   mns      r   r!   zPlotData.min0   r   r   N)__name__
__module____qualname____doc__r   r   r   r   r   r   r!    r   r   r   r      s*     &
 "!r   r   )numpyr   objectr   r'   r   r   <module>r*      s    1v 1r   