|
|
@@ -269,7 +269,7 @@ def plot_study_txt(path='', x=None): # from utils.plots import *; plot_study_tx |
|
|
|
plt.savefig(str(Path(path).name) + '.png', dpi=300) |
|
|
|
|
|
|
|
|
|
|
|
def plot_labels(labels, save_dir=Path(''), loggers=None): |
|
|
|
def plot_labels(labels, names=(), save_dir=Path(''), loggers=None): |
|
|
|
# plot dataset labels |
|
|
|
print('Plotting labels... ') |
|
|
|
c, b = labels[:, 0], labels[:, 1:].transpose() # classes, boxes |
|
|
@@ -286,7 +286,12 @@ def plot_labels(labels, save_dir=Path(''), loggers=None): |
|
|
|
matplotlib.use('svg') # faster |
|
|
|
ax = plt.subplots(2, 2, figsize=(8, 8), tight_layout=True)[1].ravel() |
|
|
|
ax[0].hist(c, bins=np.linspace(0, nc, nc + 1) - 0.5, rwidth=0.8) |
|
|
|
ax[0].set_xlabel('classes') |
|
|
|
ax[0].set_ylabel('instances') |
|
|
|
if 0 < len(names) < 30: |
|
|
|
ax[0].set_xticks(range(len(names))) |
|
|
|
ax[0].set_xticklabels(names, rotation=90, fontsize=10) |
|
|
|
else: |
|
|
|
ax[0].set_xlabel('classes') |
|
|
|
sns.histplot(x, x='x', y='y', ax=ax[2], bins=50, pmax=0.9) |
|
|
|
sns.histplot(x, x='width', y='height', ax=ax[3], bins=50, pmax=0.9) |
|
|
|
|