Visualization (mpes.visualization) — mpes 1.1.1 documentation

# Visualization `(mpes.visualization)`

Custom methods for visualizing 2D-4D datasets for ARPES and beyond

@author: R. Patrick Xian

class `mpes.visualization.` `MidpointNormalize`(vmin=None, vmax=None, midpoint=None, clip=False)

`mpes.visualization.` `bandpathplot`(pathmap, symlabel, symid, energytk=None, energylabel=None, vline=True, noends=True, vlinekwds={}, **kwds)

  Band path map (band dispersion in sampled k path within Brillouin zone).

  Parameters
    pathmap2D array

      Band path map.

    symlabellist/tuple

      Labels of the symmetry points.

    symidlist/tuple/array

      Pixel indices of the symmetry points.

    energytklist/tuple/array | None

      Energy axis ticks.

    energylabellist/tuple | None

      Energy axis label.

    vline: bool | True

      Vertical annotation lines.

    noendsbool | True

      No vertical lines at the ends

    vlinekwdsdict | {}

      Style directives of the vertical annotation lines.

    **kwdskeyword arguments

      See mpes.visualization._imshow()

  Return
    axAxesObject

      Axes of the generated plot.

`mpes.visualization.` `cm2palette`(cmapName)

  Convert certain matplotlib colormap (cm) to bokeh palette.

  Parameter
    cmapNamestr

      Name of the colormap/palette.

  Return
    palettelist

      List of colors in hex representation (a bokoeh palette).

`mpes.visualization.` `colormesh2d`(data, **kwds)

  Efficient one-line color mesh plot of a 2D data matrix

  Parameters

  datanumeric 2D array

    the 2D data to plot

  **kwdskeyword arguments

    keyword | data type | meaning
    --- | --- | ---
    figsize | tuple/list | (horizontal_size, vertical_size)
    x | 1D array | x axis coordinates
    y | 1D array | y axis coordinates
    xlabel | str | x axis label
    ylabel | str | y axis label
    colormap | str | matplotlib colormap string
    cscale | str/dict | ‘’ (default), ‘linear’, ‘log’, ‘gammaA-b’, dictionary with keys [‘midpoint’, ‘vmin’, ‘vmax’] for bilinear normalization
    levels | 1D array | explicit contour levels (ignores ncontour if not None)
    ncontour | int | number of contours (ignores levels if not None)
    plottype | str | ‘pcolormesh’ or ‘contourf’
    plotaxes | AxesObject | supply an existing AxesObject to plot on
    vmin | float | minimum value of colormap
    vmax | float | maximum value of colormap
    ax_labelsize | int | font size of axis text labels
    tk_labelsize | int | font size of axis tick labels

  Return

  axaxes object

    handle for the plot axes

`mpes.visualization.` `fit_parameter_plot`(data, ncol, axis=0, 1, **kwds)

  Plot of actual value, absolute and relative changes of the fitting parameters.

  *Parameters*

  data2D numeric array

    data for plotting

  ncolint

    number of columns

  axistuple | (0, 1)

    axes for positioning the subplot grid

  **kwdskeyword arguments

    keyword | data type | meaning
    --- | --- | ---
    mainfigsize | tuple/list | (horizontal_size, vertical_size)
    cmaps | list of str | matplotlib colormap string
    cscales | mixed list | specification of color scaling for each plot
    cbars | list of bool | specification of colorbars
    ncontours | list of int | number of contours for each subplot
    plottypes | list of str | plottype for each subplot

  *Returns*

  ffigure object

    figure handle

  imslist

    list of plot objects

  axslist

    list of axes objects

`mpes.visualization.` `grid_histogram`(dct, ncol, rvs=['X', 'Y', 't', 'ADC'], rvbins=[80, 80, 80, 80], rvranges=[0, 1800, 0, 1800, 68000, 74000, 0, 500], backend='matplotlib', legend=True, histkwds={}, legkwds={}, **kwds)

  Grid plot of multiple 1D histograms.

  Parameters
    dctdict

      Dictionary containing the name and values of the random variables.

    ncolint

      Number of columns in the plot grid.

    rvslist/tuple

      List of names for the random variables (rvs).

    rvbinslist/tuple

      Bin values for all random variables.

    rvrangeslist/tuple

      Value ranges of all random variables.

    backendstr | ‘matplotlib’

      Backend for making the plot (‘matplotlib’ or ‘bokeh’).

    legendbool | True

      Option to include a legend in each histogram plot.

    histkwdsdict | {}

      Keyword arguments for histogram plots.

    legkwds: dict | {}

      Keyword arguments for legends.

    **kwds : keyword arguments

`mpes.visualization.` `initmpl`()

  Initialize mpes plot style

`mpes.visualization.` `moviemaker`(folder, files=None, imform='png', movform='avi', namestr='movie', file_sorting='forward', recursive=False, ret=False, **kwds)

  Generate a movie file from a stack of images

  Parameters
    folderstr

      Directory of the file folder.

    fileslist/tuple

      Directory of the files to be used for generating a movie.

    imformstr | ‘png’

      Format of the images.

    movformstr | ‘avi’

      Format of the generated movie.

    namestrstr | ‘movie’

      Namestring (including folder path) used to save the generated movie.

    file_sortingstr | ‘forward’

      File-sorting direction.

    recursivebool | False

      Option to generate a recursive movie.

    retbool | False

      Specify return.

    **kwdskeyword arguments

      Specific parameter settings for the vocoder.

  Return
    fnameslist of str

      List of (un)sorted filenames.

`mpes.visualization.` `plot_overlay`(imbot, imtop, origin='lower', **kwds)

  Make an overlay plot of two images

  Parameters
    imbot2D array

      Image at the lower layer.

    imtop2D array

      Image at the top layer.

    originstr | ‘lower’

      Origin of the image (‘lower’ or ‘upper’), following imshow convention

  Returns
    ffig

      Figure handle

    axaxes

      Figure axes object

    imslist

      List of image objects

`mpes.visualization.` `plot_single_hist`(histvals, edges, legend=None, **kwds)

  Bokeh-based plotting of a single histogram with legend and tooltips.

  Parameters
    histvals1D array

      Histogram counts (e.g. vertical axis).

    edges1D array

      Histogram edge values (e.g. horizontal axis).

    legendstr

      Text for the plot legend.

    **kwds :

      Keyword arguments for ‘bokeh.plotting.figure().quad()’.

  Return
    pobject

      An instance of ‘bokeh.plotting.figure()’ as a plot handle.

`mpes.visualization.` `sliceview3d`(datamat, axis=0, numbered=True, imkwds={}, **kwds)

  3D matrix slices displayed in a grid of subplots. Parameters

  datamatnumeric 3D array

    The 3D data to plot.

  axisint

    The axis to slice through.

  numberedbool

    Option to print numbering onto the subplots.

  imkwdsdict

    Additional arguments for the image plotting functions (imshow and contourf).

  **kwdskeyword arguments

    keyword | data type | meaning
    --- | --- | ---
    aspect | str/numeric | aspect ratio of each subplot, from [‘auto’, ‘equal’ or scalar]
    ncol | int | number of columns in subplot grid
    nrow | int | number of rows in subplot grid
    figsize | tuple/list | figure size, (vertical_size, horizontal_size)
    flipdir | str | flip up-down or left-right of the matrix (‘ud’, ‘lr’)
    colormap | str | matplotlib colormap string
    cscale | str | colormap scaling (‘’(default), ‘log’, ‘linear’, ‘midpointx’, or ‘gammaA-b’, see below)
    vmin | numeric | minimum of the color scale
    vmax | numeric | maximum of the color scale
    numcolor | str | color code for subplot number
    numpos | tuple | (Y, X) position of the text on the subplots
    numsize | int | fontsize of the subtitle within a subplot
    numtext | str | subtitle text within a subplot
    wspace | float | width spacing between subplots
    hspace | float | height spacing betweens subplots
    plottype | str | ‘imshow’ (default) or ‘contourf’
    maintitle | str | main title of the plot
    axisreturn | str | ‘flattened’ or ‘nested’, return format of axis object

  Returns

  imsAxesImage object

    handle for the images in each subplot

  axAxesSubplot object

    handle for the subplot axes

`mpes.visualization.` `stackedlineplot`(datamat, axis=0, interval=0, binning=1, **kwds)

  Stacked line plots (used for visualizing energy or momentum dispersion curves)

  Parameters

  datanumeric 2D array

    the 2D data to plot

  axisint | 0

    the axis to cut along

  intervalfloat | 0

    the interval between plots

  binningint | 1 (no binning)

    number of binned rows/columns

  **kwdskeyword arguments

    keyword | data type | meaning
    --- | --- | ---
    figsize | tuple/list | (horizontal_size, vertical_size)
    x | 1D array | x axis values
    xlabel | str | x axis label
    ylabel | str | y axis label
    cmap | str | matplotlib colormap string
    axislabelsize | int | font size of axis text labels
    ticklabelsize | int | font size of axis tick labels
    margins | tuple/list | (xmargin, ymargin), values between 0 and 1

  Return

  axaxes object

    handle for the plot axes

`mpes.visualization.` `surf2d`(datamat, frame=True, miniaxes=False, **kwds)

  Make 2D surface plot. Parameters

  datamatnumeric 2D array

    the 2D data to plot

  framebool | True

    controls whether the frame is shown

  **kwdskeyword arguments

    keyword | data type | meaning
    --- | --- | ---
    alpha | float | opacity value from 0 to 1
    azimuth | float | azimuthal viewing angle (default = 0)
    cmap | str | matplotlib colormap string
    elevation | float | zenith viewing angle (default = 0)
    bgc | tuple/list | background color in RGB values
    kind | str | kind of surface plot, {‘points’, ‘wireframe’, ‘surface’}
    framecolor | tuple/list | color of the frame
    warp_scale | float | warp scale value from 0 to 1

  Return

  ffigure object

    handle for the figure

`mpes.visualization.` `toggle3d`(state=True, nb_backend=None, **kwds)

  Switch on/off the mayavi backend Parameters

  statebool | True

    on/off state of the mayavi backend

  nb_backend| None

    type of rendering engine choose from ‘x3d’ (interactive) and ‘png’ (static)

  **kwdskeyword arguments

    additional arguments to be passed into mayavi.mlab.init_notebook()

`mpes.visualization.` `trisurf2d`(datamat, **kwds)

  2D triangulated surface plot rendered using mplot3d

  Parameters

  datamatnumeric 2d array

    2D data for plotting

  Returns

  sfPoly3DCollection object

    handle for objects in the plot

  axAxes object

    handle for the axes of the plot

`mpes.visualization.` `ysplitplot`(datamat, xaxis, yaxis, ysplit=160)

  Split-screen plot of an ARPES spectrum (intensity scaled differently for valence and conduction bands).

  Parameters

  datamatnumeric 2D array

    the 2D data matrix to plot

  xaxisnumeric 1D array

    the x axis coordinates

  yaxisnumeric 1D array

    the y axis coordinates

  ysplitint

    the index of the split y position

  Returns

  axuaxes object

    handle for the upper subplot axes

  axlaxes object

    handle for the lower subplot axes