當前位置: 首頁>>代碼示例>>Python>>正文


Python cbook.iterable方法代碼示例

本文整理匯總了Python中matplotlib.cbook.iterable方法的典型用法代碼示例。如果您正苦於以下問題:Python cbook.iterable方法的具體用法?Python cbook.iterable怎麽用?Python cbook.iterable使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在matplotlib.cbook的用法示例。


在下文中一共展示了cbook.iterable方法的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Python代碼示例。

示例1: poly_between

# 需要導入模塊: from matplotlib import cbook [as 別名]
# 或者: from matplotlib.cbook import iterable [as 別名]
def poly_between(x, ylower, yupper):
    """
    Given a sequence of *x*, *ylower* and *yupper*, return the polygon
    that fills the regions between them.  *ylower* or *yupper* can be
    scalar or iterable.  If they are iterable, they must be equal in
    length to *x*.

    Return value is *x*, *y* arrays for use with
    :meth:`matplotlib.axes.Axes.fill`.
    """
    if ma.isMaskedArray(ylower) or ma.isMaskedArray(yupper) or ma.isMaskedArray(x):
        numpy = ma
    else:
        numpy = np

    Nx = len(x)
    if not cbook.iterable(ylower):
        ylower = ylower*numpy.ones(Nx)

    if not cbook.iterable(yupper):
        yupper = yupper*numpy.ones(Nx)

    x = numpy.concatenate( (x, x[::-1]) )
    y = numpy.concatenate( (yupper, ylower[::-1]) )
    return x,y 
開發者ID:ktraunmueller,項目名稱:Computable,代碼行數:27,代碼來源:mlab.py

示例2: _process_linewidths

# 需要導入模塊: from matplotlib import cbook [as 別名]
# 或者: from matplotlib.cbook import iterable [as 別名]
def _process_linewidths(self):
        linewidths = self.linewidths
        Nlev = len(self.levels)
        if linewidths is None:
            tlinewidths = [(mpl.rcParams['lines.linewidth'],)] * Nlev
        else:
            if not cbook.iterable(linewidths):
                linewidths = [linewidths] * Nlev
            else:
                linewidths = list(linewidths)
                if len(linewidths) < Nlev:
                    nreps = int(np.ceil(Nlev / len(linewidths)))
                    linewidths = linewidths * nreps
                if len(linewidths) > Nlev:
                    linewidths = linewidths[:Nlev]
            tlinewidths = [(w,) for w in linewidths]
        return tlinewidths 
開發者ID:ktraunmueller,項目名稱:Computable,代碼行數:19,代碼來源:contour.py

示例3: _process_linestyles

# 需要導入模塊: from matplotlib import cbook [as 別名]
# 或者: from matplotlib.cbook import iterable [as 別名]
def _process_linestyles(self):
        linestyles = self.linestyles
        Nlev = len(self.levels)
        if linestyles is None:
            tlinestyles = ['solid'] * Nlev
            if self.monochrome:
                neg_ls = mpl.rcParams['contour.negative_linestyle']
                eps = - (self.zmax - self.zmin) * 1e-15
                for i, lev in enumerate(self.levels):
                    if lev < eps:
                        tlinestyles[i] = neg_ls
        else:
            if cbook.is_string_like(linestyles):
                tlinestyles = [linestyles] * Nlev
            elif cbook.iterable(linestyles):
                tlinestyles = list(linestyles)
                if len(tlinestyles) < Nlev:
                    nreps = int(np.ceil(Nlev / len(linestyles)))
                    tlinestyles = tlinestyles * nreps
                if len(tlinestyles) > Nlev:
                    tlinestyles = tlinestyles[:Nlev]
            else:
                raise ValueError("Unrecognized type for linestyles kwarg")
        return tlinestyles 
開發者ID:ktraunmueller,項目名稱:Computable,代碼行數:26,代碼來源:contour.py

示例4: __init__

# 需要導入模塊: from matplotlib import cbook [as 別名]
# 或者: from matplotlib.cbook import iterable [as 別名]
def __init__(self, o):
        """
        Initialize the artist inspector with an
        :class:`~matplotlib.artist.Artist` or sequence of :class:`Artists`.
        If a sequence is used, we assume it is a homogeneous sequence (all
        :class:`Artists` are of the same type) and it is your responsibility
        to make sure this is so.
        """
        if cbook.iterable(o) and len(o):
            o = o[0]

        self.oorig = o
        if not isinstance(o, type):
            o = type(o)
        self.o = o

        self.aliasd = self.get_aliases() 
開發者ID:ktraunmueller,項目名稱:Computable,代碼行數:19,代碼來源:artist.py

示例5: num2date

# 需要導入模塊: from matplotlib import cbook [as 別名]
# 或者: from matplotlib.cbook import iterable [as 別名]
def num2date(x, tz=None):
    """
    *x* is a float value which gives the number of days
    (fraction part represents hours, minutes, seconds) since
    0001-01-01 00:00:00 UTC *plus* *one*.
    The addition of one here is a historical artifact.  Also, note
    that the Gregorian calendar is assumed; this is not universal
    practice.  For details, see the module docstring.

    Return value is a :class:`datetime` instance in timezone *tz* (default to
    rcparams TZ value).

    If *x* is a sequence, a sequence of :class:`datetime` objects will
    be returned.
    """
    if tz is None:
        tz = _get_rc_timezone()
    if not cbook.iterable(x):
        return _from_ordinalf(x, tz)
    else:
        return [_from_ordinalf(val, tz) for val in x] 
開發者ID:ktraunmueller,項目名稱:Computable,代碼行數:23,代碼來源:dates.py

示例6: set_clim

# 需要導入模塊: from matplotlib import cbook [as 別名]
# 或者: from matplotlib.cbook import iterable [as 別名]
def set_clim(self, vmin=None, vmax=None):
        """
        set the norm limits for image scaling; if *vmin* is a length2
        sequence, interpret it as ``(vmin, vmax)`` which is used to
        support setp

        ACCEPTS: a length 2 sequence of floats
        """
        if (vmin is not None and vmax is None and
                cbook.iterable(vmin) and len(vmin) == 2):
            vmin, vmax = vmin

        if vmin is not None:
            self.norm.vmin = vmin
        if vmax is not None:
            self.norm.vmax = vmax
        self.changed() 
開發者ID:ktraunmueller,項目名稱:Computable,代碼行數:19,代碼來源:cm.py

示例7: _make_key

# 需要導入模塊: from matplotlib import cbook [as 別名]
# 或者: from matplotlib.cbook import iterable [as 別名]
def _make_key(self, *args, **kwargs):
        'make a hashable key out of args and kwargs'

        def fixitems(items):
            #items may have arrays and lists in them, so convert them
            # to tuples for the key
            ret = []
            for k, v in items:
                if iterable(v):
                    v = tuple(v)
                ret.append((k, v))
            return tuple(ret)

        def fixlist(args):
            ret = []
            for a in args:
                if iterable(a):
                    a = tuple(a)
                ret.append(a)
            return tuple(ret)

        key = fixlist(args), fixitems(kwargs.iteritems())
        return key 
開發者ID:ktraunmueller,項目名稱:Computable,代碼行數:25,代碼來源:figure.py

示例8: default_units

# 需要導入模塊: from matplotlib import cbook [as 別名]
# 或者: from matplotlib.cbook import iterable [as 別名]
def default_units( value, axis ):
      """: Return the default unit for value, or None.

      = INPUT VARIABLES
      - value   The value or list of values that need units.

      = RETURN VALUE
      - Returns the default units to use for value.
      Return the default unit for value, or None.
      """

      # Determine the default units based on the user preferences set for
      # default units when printing a UnitDbl.
      if ( iterable(value) and not isinstance(value, str) ):
         return UnitDblConverter.default_units( value[0], axis )
      else:
         return UnitDblConverter.defaults[ value.type() ] 
開發者ID:Solid-Mechanics,項目名稱:matplotlib-4-abaqus,代碼行數:19,代碼來源:UnitDblConverter.py

示例9: default_units

# 需要導入模塊: from matplotlib import cbook [as 別名]
# 或者: from matplotlib.cbook import iterable [as 別名]
def default_units( value, axis ):
      """: Return the default unit for value, or None.

      = INPUT VARIABLES
      - value   The value or list of values that need units.

      = RETURN VALUE
      - Returns the default units to use for value.
      """
      frame = None
      if ( iterable(value) and not isinstance(value, str) ):
         return EpochConverter.default_units( value[0], axis )
      else:
         frame = value.frame()

      return frame 
開發者ID:Solid-Mechanics,項目名稱:matplotlib-4-abaqus,代碼行數:18,代碼來源:EpochConverter.py

示例10: is_numlike

# 需要導入模塊: from matplotlib import cbook [as 別名]
# 或者: from matplotlib.cbook import iterable [as 別名]
def is_numlike(x):
        """
        The matplotlib datalim, autoscaling, locators etc work with
        scalars which are the units converted to floats given the
        current unit.  The converter may be passed these floats, or
        arrays of them, even when units are set.  Derived conversion
        interfaces may opt to pass plain-ol unitless numbers through
        the conversion interface and this is a helper function for
        them.
        """
        if iterable(x):
            for thisx in x:
                return is_numlike(thisx)
        else:
            return is_numlike(x) 
開發者ID:ktraunmueller,項目名稱:Computable,代碼行數:17,代碼來源:units.py

示例11: get_converter

# 需要導入模塊: from matplotlib import cbook [as 別名]
# 或者: from matplotlib.cbook import iterable [as 別名]
def get_converter(self, x):
        'get the converter interface instance for x, or None'

        if not len(self):
            return None  # nothing registered
        #DISABLED idx = id(x)
        #DISABLED cached = self._cached.get(idx)
        #DISABLED if cached is not None: return cached

        converter = None
        classx = getattr(x, '__class__', None)

        if classx is not None:
            converter = self.get(classx)

        if isinstance(x, np.ndarray) and x.size:
            xravel = x.ravel()
            try:
                # pass the first value of x that is not masked back to
                # get_converter
                if not np.all(xravel.mask):
                    # some elements are not masked
                    converter = self.get_converter(
                        xravel[np.argmin(xravel.mask)])
                    return converter
            except AttributeError:
                # not a masked_array
                converter = self.get_converter(xravel[0])
                return converter

        if converter is None and iterable(x):
            for thisx in x:
                # Make sure that recursing might actually lead to a solution,
                # if we are just going to re-examine another item of the same
                # kind, then do not look at it.
                if classx and classx != getattr(thisx, '__class__', None):
                    converter = self.get_converter(thisx)
                    return converter

        #DISABLED self._cached[idx] = converter
        return converter 
開發者ID:ktraunmueller,項目名稱:Computable,代碼行數:43,代碼來源:units.py

示例12: set_ticks

# 需要導入模塊: from matplotlib import cbook [as 別名]
# 或者: from matplotlib.cbook import iterable [as 別名]
def set_ticks(self, ticks, update_ticks=True):
        """
        set tick locations. Tick locations are updated immediately unless
        update_ticks is *False*. To manually update the ticks, call
        *update_ticks* method explicitly.
        """
        if cbook.iterable(ticks):
            self.locator = ticker.FixedLocator(ticks, nbins=len(ticks))
        else:
            self.locator = ticks

        if update_ticks:
            self.update_ticks() 
開發者ID:ktraunmueller,項目名稱:Computable,代碼行數:15,代碼來源:colorbar.py

示例13: add_lines

# 需要導入模塊: from matplotlib import cbook [as 別名]
# 或者: from matplotlib.cbook import iterable [as 別名]
def add_lines(self, levels, colors, linewidths, erase=True):
        '''
        Draw lines on the colorbar.

        *colors* and *linewidths* must be scalars or
        sequences the same length as *levels*.

        Set *erase* to False to add lines without first
        removing any previously added lines.
        '''
        y = self._locate(levels)
        igood = (y < 1.001) & (y > -0.001)
        y = y[igood]
        if cbook.iterable(colors):
            colors = np.asarray(colors)[igood]
        if cbook.iterable(linewidths):
            linewidths = np.asarray(linewidths)[igood]
        N = len(y)
        x = np.array([0.0, 1.0])
        X, Y = np.meshgrid(x, y)
        if self.orientation == 'vertical':
            xy = [zip(X[i], Y[i]) for i in xrange(N)]
        else:
            xy = [zip(Y[i], X[i]) for i in xrange(N)]
        col = collections.LineCollection(xy, linewidths=linewidths)

        if erase and self.lines:
            for lc in self.lines:
                lc.remove()
            self.lines = []
        self.lines.append(col)
        col.set_color(colors)
        self.ax.add_collection(col) 
開發者ID:ktraunmueller,項目名稱:Computable,代碼行數:35,代碼來源:colorbar.py

示例14: prctile

# 需要導入模塊: from matplotlib import cbook [as 別名]
# 或者: from matplotlib.cbook import iterable [as 別名]
def prctile(x, p = (0.0, 25.0, 50.0, 75.0, 100.0)):
    """
    Return the percentiles of *x*.  *p* can either be a sequence of
    percentile values or a scalar.  If *p* is a sequence, the ith
    element of the return sequence is the *p*(i)-th percentile of *x*.
    If *p* is a scalar, the largest value of *x* less than or equal to
    the *p* percentage point in the sequence is returned.
    """

    # This implementation derived from scipy.stats.scoreatpercentile
    def _interpolate(a, b, fraction):
        """Returns the point at the given fraction between a and b, where
        'fraction' must be between 0 and 1.
        """
        return a + (b - a)*fraction

    scalar = True
    if cbook.iterable(p):
        scalar = False
    per = np.array(p)
    values = np.array(x).ravel()  # copy
    values.sort()

    idxs = per /100. * (values.shape[0] - 1)
    ai = idxs.astype(np.int)
    bi = ai + 1
    frac = idxs % 1

    # handle cases where attempting to interpolate past last index
    cond = bi >= len(values)
    if scalar:
        if cond:
            ai -= 1
            bi -= 1
            frac += 1
    else:
        ai[cond] -= 1
        bi[cond] -= 1
        frac[cond] += 1

    return _interpolate(values[ai],values[bi],frac) 
開發者ID:ktraunmueller,項目名稱:Computable,代碼行數:43,代碼來源:mlab.py

示例15: fftsurr

# 需要導入模塊: from matplotlib import cbook [as 別名]
# 或者: from matplotlib.cbook import iterable [as 別名]
def fftsurr(x, detrend=detrend_none, window=window_none):
    """
    Compute an FFT phase randomized surrogate of *x*.
    """
    if cbook.iterable(window):
        x=window*detrend(x)
    else:
        x = window(detrend(x))
    z = np.fft.fft(x)
    a = 2.*np.pi*1j
    phase = a * np.random.rand(len(x))
    z = z*np.exp(phase)
    return np.fft.ifft(z).real 
開發者ID:ktraunmueller,項目名稱:Computable,代碼行數:15,代碼來源:mlab.py


注:本文中的matplotlib.cbook.iterable方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。