2016-10-02 2 views
0

아래 함수를 사용하면 창에 그림이 표시되지만 저장된 그림은 비어 있습니다.Pyplot의 빈 그림

import matplotlib.pyplot as plt 
from sklearn.manifold import TSNE 

def plot_embeddings(embeddings, names): 
model = TSNE(n_components=2, random_state=0) 
vectors = model.fit_transform(embeddings) 
x, y = vectors[:, 0], vectors[:, 1] 
fig, ax = plt.subplots() 
ax.scatter(x, y) 
for i, tname in enumerate(names): 
    ax.annotate(tname, (x[i], y[i])) 
plt.show() 
plt.savefig('foo.png', bbox_inches='tight') 

나는 해결책을 찾지 못했습니다.

+1

'show()'전에'savefig()'를 사용하십시오. – furas

+0

@furas 왜'show()'가 이미지를 지우는 지 아십니까? – mengg

+0

@furas plz 답으로 입력하면 받아 들일 것입니다. 감사. – John77

답변

1

사용 savefig()

show() 열린 창문 당신이 그것을 닫고 그 다음 창을 닫습니다 아마 때 이미지를 클리어까지 기다려 show() 전에.

관련 문제