Source code for wholecell.utils.sparkline

"""
Utility functions for generating sparkline plots
"""

import numpy as np


[docs] def whitePadSparklineAxis(axis, xAxis=True, secondary=False): axis.spines["right"].set_visible(secondary) axis.spines["top"].set_visible(False) axis.spines["left"].set_position(("outward", 10)) axis.spines["right"].set_position(("outward", 10)) axis.spines["bottom"].set_position(("outward", 10)) axis.set_yticks(axis.get_ylim()) axis.set_xticks(axis.get_xlim()) axis.tick_params(which="both", direction="out", right=secondary, top=False) if not xAxis: axis.spines["bottom"].set_visible(False) axis.tick_params(bottom=False) axis.tick_params(axis="x", labelbottom=False)
[docs] def simpleSparklineAxis(axis): axis.spines["top"].set_visible(False) axis.spines["bottom"].set_visible(False) axis.xaxis.set_ticks_position("none") axis.tick_params(which="both", direction="out")
[docs] def sparklineAxis(axis, x, y, tickPos, lineType, color): axis.plot(x, y, linestyle=lineType, drawstyle="steps", color=color, linewidth=2) axis.spines["top"].set_visible(False) axis.spines["bottom"].set_visible(False) axis.yaxis.set_ticks_position(tickPos) axis.xaxis.set_ticks_position("none") axis.tick_params(which="both", direction="out") for tl in axis.get_yticklabels(): tl.set_color(color)
[docs] def setAxisMaxMinY(axis, data): if np.isnan(data).all(): return ymax = np.nanmax(data) ymin = 0 if ymin == ymax: axis.set_yticks([ymin]) else: axis.set_yticks([ymin, ymax])
[docs] def setAxisMaxMinX(axis, data): if np.isnan(data).all(): return xmax = np.nanmax(data) xmin = 0 if xmin == xmax: axis.set_xticks([xmin]) else: axis.set_xticks([xmin, xmax])