mgkit.plots.heatmap module¶
New in version 0.1.14.
Code related to heatmaps.
-
mgkit.plots.heatmap.
baseheatmap
(data, ax, norm=None, cmap=None, xticks=None, yticks=None, fontsize=18, meshopts=None, annot=False, annotopts=None)¶ Changed in version 0.2.3: added annot and annot_args arguments
A basic heatmap using
matplotlib.pyplot.pcolormesh()
. It expect apandas.DataFrame
.Note
Rows a plot bottom to up, while the columns left to right. Change the order of the DataFrame if needed.
Parameters: - data (pandas.DataFrame) – matrix to plot. The DataFrame labels are used
- ax – axes to use
- norm – if needed,
matplotlib.colors.BoundaryNorm
ormatplotlib.colors.Normalize
can be used to fine tune the colors - cmap (None, matplotlib.colors.ListedColormap) – color map to use
- xticks (None, dict) – dictionary with additional options to pass to set_xticklabels
- yticks (None, dict) – dictionary with additional options to pass to set_yticklabels
- fontsize (int) – font size to use for the labels
- meshopts (None, dict) – additional options to pass to
matplotlib.pyplot.pcolormesh()
- annot (bool) – if True the values of the matrix will be added
- annot_args (None, dict) – dictionary with the options for the annotations. The option format is a function that returns the formatted number, defaults to a number with no decimal part
Returns: the return value of
matplotlib.pyplot.pcolormesh()
Return type: matplotlib.collections.QuadMesh
-
mgkit.plots.heatmap.
grouped_spine
(groups, labels, ax, which='y', spine='right', spine_opts=None, start=0)¶ Changed in version 0.2.0: added va, ha keys to spine_opts, changed the label positioning
Changed in version 0.2.5: added start parameter
Changes the spine of an heatmap axis given the groups of labels.
Note
It should work for any plot, but was not tested
Parameters: - groups (iterable) – a nested list where each is element is a list containing the labels that belong to that group.
- labels (iterable) – an iterable with the labels of the groups. Needs to be in the same order as groups
- ax – axis to use (same as heatmap)
- which (str) – to specify the axis, either x or y
- spine (str) – position of the spine. if which is x accepted values are top and bottom, if which is y left and right are accepted
- spine_opts (dict) – additional options to pass to the spine class
- start (int) – the start coordinate for the grouped spine. Defaults to 0
-
mgkit.plots.heatmap.
dendrogram
(data, ax, method='complete', orientation='top', use_dist=True, dist_func=<function pdist>)¶ Changed in version 0.1.16: added use_dist and dist_func parameters
Plots a dendrogram of the clustered rows of the given matrix; if the columns are to be clustered, the transposed matrix needs to be passed.
Parameters: - data (pandas.DataFrame) – matrix to plot. The DataFrame labels are used
- ax – axes to use
- method (str) – clustering method used, internally
scipy.cluster.hierarchy.linkage()
is used. - orientation (str) – direction for the plot. top, bottom, left and right are accepted; top will draw the leaves at the bottom.
- use_dist (bool) – if True, the function dist_func will be applied to data to get a distance matrix
- dist_func (func) – distance function to be used
Returns: The dendrogram plotted, as returned by
scipy.cluster.hierarchy.dendrogram()
-
mgkit.plots.heatmap.
heatmap_clustered
(data, figsize=(10, 5), cmap=None, norm=None)¶ Plots a heatmap clustered on both rows and columns.
Parameters: - data (pandas.DataFrame) – matrix to plot. The DataFrame labels are used
- figsize (tuple) – passed to
mgkit.plots.utils.get_grid_figure()
- cmap (None, matplotlib.colors.ListedColormap) – color map to use
- norm – if needed,
matplotlib.colors.BoundaryNorm
ormatplotlib.colors.Normalize
can be used to fine tune the colors