Spaces:
Running
Running
import matplotlib.pyplot as plt | |
import numpy as np | |
def plot_self_attention_map(spectra, att_map, offset=400): | |
if att_map is not None: | |
fig, ax1 = plt.subplots(figsize=(12, 12)) | |
ax2 = plt.twinx().twiny() | |
ax2.set_xlim(offset, offset+len(spectra)) | |
ax1.set_xlabel('Patch index', fontsize=18) | |
ax1.set_ylabel('Patch index', fontsize=18) | |
ax1.imshow(att_map[1:, 1:], cmap='inferno', interpolation='nearest', aspect="auto") | |
# tem_x = np.zeros_like(spectra) | |
x = np.linspace(offset, offset + len(spectra), len(spectra)) | |
# for i, s in enumerate(spectra): | |
# tem_x[i] = i + 400 | |
ax2.set_xlabel('Wavelength', fontsize=18) | |
ax2.set_ylabel('Intensity (a.u.)', fontsize=18) | |
ax2.plot(x, spectra) | |
return fig | |
def plot_spectra(spectra, offset=400): | |
fig = plt.figure() | |
x = np.linspace(offset, offset + len(spectra), len(spectra)) | |
# fg.title("Spectra Signal") | |
plt.plot(x, spectra) | |
return fig | |
def plot_result(name, score): | |
fig, ax = plt.subplots(figsize=(10, 10)) | |
y_pos = np.arange(len(name)) | |
ax.barh(y_pos, score, align='center') | |
ax.set_yticks(y_pos, labels=name) | |
for value, pos in zip(score, y_pos): | |
ax.text(value-0.2, pos, value, ha='right') | |
ax.invert_yaxis() # labels read top-to-bottom | |
ax.set_xlabel('Confidence') | |
ax.set_title('Prediction') | |
return fig | |