Nas duas últimas funções está aparecendo colunas nas fotos:
Nas duas últimas funções está aparecendo colunas nas fotos:
Olá, Pedro, tudo bem?
Executei o código e obtive o mesmo resultado. Então o que o fiz para corrigir foi desativar o grid da imagem.
Portanto, onde tiver plt.grid(visible=None)
troque por plt.grid(False)
.
Por exemplo, na função recomendador ficaria assim:
def recomendador(nome_musica):
## Calculando as distâncias
cluster = list(projection_m[projection_m['song']== nome_musica]['cluster_pca'])[0]
musicas_recomendadas = projection_m[projection_m['cluster_pca']== cluster][[0, 1, 'song']]
x_musica = list(projection_m[projection_m['song']== nome_musica][0])[0]
y_musica = list(projection_m[projection_m['song']== nome_musica][1])[0]
distancias = euclidean_distances(musicas_recomendadas[[0, 1]], [[x_musica, y_musica]])
musicas_recomendadas['id'] = dados['id']
musicas_recomendadas['distancias'] = distancias
recomendada = musicas_recomendadas.sort_values('distancias').head(10)
# ## Acessando os dados de cada música com a biblioteca Spotipy (nome e imagem)
playlist_id = recomendada['id']
url = []
name = []
for i in playlist_id:
track = sp.track(i)
url.append(track["album"]["images"][1]["url"])
name.append(track["name"])
# ## Plotando as figuras
plt.figure(figsize=(15,10))
columns = 5
for i, u in enumerate(url):
ax = plt.subplot(len(url) // columns + 1, columns, i + 1)
image = io.imread(u)
plt.imshow(image)
ax.get_yaxis().set_visible(False)
plt.xticks(color = 'w', fontsize = 0.1)
plt.yticks(color = 'w', fontsize = 0.1)
plt.xlabel(name[i], fontsize = 10)
plt.tight_layout(h_pad=0.7, w_pad=0)
plt.subplots_adjust(wspace=None, hspace=None)
plt.grid(False) #MUDAR AQUI
plt.tick_params(bottom = False)
plt.show()
Espero ter ajudado.
Qualquer dúvida, compartilhe no fórum.
Abraços e bons estudos!