J'ai besoin de prendre une image et de la sauvegarder après un certain processus. La figure semble correcte lorsque je l'affiche, mais après avoir sauvegardé la figure, j'ai obtenu un espace blanc autour de l'image enregistrée. J'ai essayé l' 'tight'
option savefig
méthode, cela n'a pas fonctionné non plus. Le code:
import matplotlib.image as mpimg
import matplotlib.pyplot as plt
fig = plt.figure(1)
img = mpimg.imread(path)
plt.imshow(img)
ax=fig.add_subplot(1,1,1)
extent = ax.get_window_extent().transformed(fig.dpi_scale_trans.inverted())
plt.savefig('1.png', bbox_inches=extent)
plt.axis('off')
plt.show()
J'essaie de dessiner un graphique de base en utilisant NetworkX sur une figure et de l'enregistrer. Je me suis rendu compte que sans graphique, cela fonctionne, mais lors de l'ajout d'un graphique, j'obtiens un espace blanc autour de l'image enregistrée;
import matplotlib.image as mpimg
import matplotlib.pyplot as plt
import networkx as nx
G = nx.Graph()
G.add_node(1)
G.add_node(2)
G.add_node(3)
G.add_edge(1,3)
G.add_edge(1,2)
pos = {1:[100,120], 2:[200,300], 3:[50,75]}
fig = plt.figure(1)
img = mpimg.imread("C:\\images\\1.jpg")
plt.imshow(img)
ax=fig.add_subplot(1,1,1)
nx.draw(G, pos=pos)
extent = ax.get_window_extent().transformed(fig.dpi_scale_trans.inverted())
plt.savefig('1.png', bbox_inches = extent)
plt.axis('off')
plt.show()