def _barplot(self, first: RunData, second: RunData, property: str, size: int,
filename: str = None, show_ticks: bool = True) -> str:
import matplotlib.pyplot as plt
import seaborn as sns
filename = filename or self._get_new_figure_filename()
self._set_fig_size(size)
length = min(len(first[property]), len(second[property]))
first_prop = first[property][0:length]
second_prop = second[property][0:length]
min_xval = min(first_prop + second_prop)
max_xval = max(first_prop + second_prop)
bins = np.linspace(min_xval, max_xval, math.floor(math.sqrt(length) * size))
sns.distplot(first_prop, bins=bins,label=first.description(), kde=False)
sns.distplot(second_prop, bins=bins,label=second.description(), kde=False)
if not show_ticks:
plt.xticks([])
plt.yticks([])
plt.xlim(min_xval, max_xval)
plt.legend()
plt.savefig(filename)
plt.close()
return filename
评论列表
文章目录