Der folgende Code gibt mir ein Diagramm mit signifikanten Margen über und unter der Figur. Ich weiß nicht, wie man die merkbaren Ränder beseitigen kann. subplots_adjust
funktioniert nicht wie erwartet.Matplotlib Stellen Sie den Seitenrand ein
import matplotlib.pyplot as plt
import numpy as np
fig = plt.figure()
ax = fig.add_subplot(111)
ax.plot(range(10),range(10))
ax.set_aspect('equal')
plt.tight_layout()
tight_layout
eliminiert einen Teil der Marge, aber nicht alle von den Rändern.
Was ich wollte, ist tatsächlich das Seitenverhältnis auf jeden benutzerdefinierten Wert und die Beseitigung der Leerraum zur gleichen Zeit.
Update: Wie Pierre H. es ausdrückt, ist der Schlüssel, die Größe des Figurencontainers zu ändern. Meine Frage ist also: Könnten Sie eine Möglichkeit vorschlagen, die Größe der Figur an die Größe der Achsen mit beliebigem Seitenverhältnis anzupassen?
Mit anderen Worten, zuerst erstelle ich eine Figur und eine Achse darauf, und dann ändere ich die Größe der Achsen (zB durch Änderung des Seitenverhältnisses), was im Allgemeinen einen Teil des Figurencontainers leer lässt. In diesem Stadium müssen wir die Größe der Figur entsprechend ändern, um die Leerstelle auf dem Figurencontainer zu eliminieren.
versuchen 'data = np.random.rand (15,20)' – joaquin
Sie können auch 'fig.set_size_inches' verwenden, um den Aspekt der Figur auf den Aspekt Ihrer Daten einzustellen – tacaswell
Wenn Sie nur daran interessiert sind die gespeicherte Figur, werfen Sie einen Blick auf 'fig.savefig ('whatever.ext', bbox_inches = 'tight')'. –