diff --git a/libcodonusage/libcodonusage.py b/libcodonusage/libcodonusage.py index 47bd4b78ff13dfc42c7788854233c5612be051a4..a4e56a019491d482b1e4667860f60150f7286cff 100644 --- a/libcodonusage/libcodonusage.py +++ b/libcodonusage/libcodonusage.py @@ -1230,7 +1230,7 @@ def violin_usage_vertical( def violin_usage_by_clusters(usage_with_clusters, aa, # pylint: disable=C0103 ylabel_template, cluster_level_template="cluster_{aa}", - vertical=False): + vertical=False, **violin_kwargs): """ Plot a series of violin plots for each cluster of genes. @@ -1252,16 +1252,18 @@ def violin_usage_by_clusters(usage_with_clusters, aa, # pylint: disable=C0103 nrows=clusters.ngroups, figsize=(18, 6 * clusters.ngroups)) for ((cluster, usage_table), axis) in zip(clusters, axes): + kwargs = {"axis": axis} + kwargs.update(violin_kwargs) if vertical: violin_usage_vertical( usage_table, "codon", ylabel_template.format(aa=aa, cluster=cluster), - axis=axis) + **kwargs) else: violin_usage( usage_table, "codon", ylabel_template.format(aa=aa, cluster=cluster), - axis=axis) + **kwargs) # Based on @@ -1280,7 +1282,7 @@ def adjacent_values(q0, q1, q3, q4): # pylint: disable=C0103 def violin_with_thresh(data, thresh, ylabel, - facecolor="grey", axis=None): + facecolor="grey", axis=None, **violin_kwargs): """ Draw a violin plot from *data* with a horizontal line at value *thresh*. @@ -1291,7 +1293,9 @@ def violin_with_thresh(data, thresh, ylabel, """ if axis is None: _, axis = plt.subplots(figsize=(2, 3.5)) - violin_parts = axis.violinplot(data, showextrema=False) + kwargs = {"showextrema": False} + kwargs.update(violin_kwargs) + violin_parts = axis.violinplot(data, **kwargs) # https://stackoverflow.com/a/26291582/1878788 [body] = violin_parts["bodies"] body.set_facecolor(facecolor)