pyemma.plots.plot_state_map

pyemma.plots.plot_state_map(xall, yall, states, ax=None, ncontours=100, cmap=None, cbar=True, cax=None, cbar_label='state', cbar_orientation='vertical', nbins=100, mask=True, **kwargs)

Plot a two-dimensional contour map of states by interpolating labels of scattered data on a grid.

Parameters
  • xall (ndarray(T)) – Sample x-coordinates.

  • yall (ndarray(T)) – Sample y-coordinates.

  • states (ndarray(T)) – Sample state labels.

  • ax (matplotlib.Axes object, optional, default=None) – The ax to plot to; if ax=None, a new ax (and fig) is created.

  • cmap (matplotlib colormap, optional, default=None) – The color map to use.

  • ncontours (int, optional, default=100) – Number of contour levels.

  • cbar (boolean, optional, default=True) – Plot a color bar.

  • cax (matplotlib.Axes object, optional, default=None) – Plot the colorbar into a custom axes object instead of stealing space from ax.

  • cbar_label (str, optional, default='state') – Colorbar label string; use None to suppress it.

  • cbar_orientation (str, optional, default='vertical') – Colorbar orientation; choose ‘vertical’ or ‘horizontal’.

  • nbins (int, optional, default=100) – Number of grid points used in each dimension.

  • mask (boolean, optional, default=False) – Hide unsampled areas is True.

  • parameters for contourf (**kwargs) (Optional) –

  • -------------------------------------------

  • corner_mask (boolean, optional) – Enable/disable corner masking, which only has an effect if z is a masked array. If False, any quad touching a masked point is masked out. If True, only the triangular corners of quads nearest those points are always masked out, other triangular corners comprising three unmasked points are contoured as usual. Defaults to rcParams[‘contour.corner_mask’], which defaults to True.

  • alpha (float) – The alpha blending value.

  • locator ([ None | ticker.Locator subclass ]) – If locator is None, the default MaxNLocator is used. The locator is used to determine the contour levels if they are not given explicitly via the levels argument.

  • extend ([ ‘neither’ | ‘both’ | ‘min’ | ‘max’ ]) – Unless this is ‘neither’, contour levels are automatically added to one or both ends of the range so that all data are included. These added ranges are then mapped to the special colormap values which default to the ends of the colormap range, but can be set via matplotlib.colors.Colormap.set_under() and matplotlib.colors.Colormap.set_over() methods.

  • xunits ([ None | registered units ]) – Override axis units by specifying an instance of a matplotlib.units.ConversionInterface.

  • yunits ([ None | registered units ]) – Override axis units by specifying an instance of a matplotlib.units.ConversionInterface.

  • antialiased (boolean, optional) – Enable antialiasing, overriding the defaults. For filled contours, the default is True. For line contours, it is taken from rcParams[‘lines.antialiased’].

  • nchunk ([ 0 | integer ]) – If 0, no subdivision of the domain. Specify a positive integer to divide the domain into subdomains of nchunk by nchunk quads. Chunking reduces the maximum length of polygons generated by the contouring algorithm which reduces the rendering workload passed on to the backend and also requires slightly less RAM. It can however introduce rendering artifacts at chunk boundaries depending on the backend, the antialiased flag and value of alpha.

  • hatches – A list of cross hatch patterns to use on the filled areas. If None, no hatching will be added to the contour. Hatching is supported in the PostScript, PDF, SVG and Agg backends only.

  • zorder (float) – Set the zorder for the artist. Artists with lower zorder values are drawn first.

Returns

  • fig (matplotlib.Figure object) – The figure in which the used ax resides.

  • ax (matplotlib.Axes object) – The ax in which the map was plotted.

  • misc (dict) – Contains a matplotlib.contour.QuadContourSet ‘mappable’ and, if requested, a matplotlib.Colorbar object ‘cbar’.

Notes

Please note that this plot is an approximative visualization: the underlying matplotlib.countourf function smoothes transitions between different values and, thus, coloring at state boundaries might be imprecise.